Piksel görüntü başına piksel, şeffaf siyah dönüştü

0 Cevap php

Ben bu konuda bir şey bir çift okudum, ama benim kodu koymak nasıl bilemiyorum.

İşte:

function go($image) {
    // Open the image
    $getimage=imagecreatefrompng($image);
  //Get the width/height
   $w = imagesx($getimage);
   $h = imagesy($getimage);
   //init Count variable, when it reach the width, skip a line
   $count = 0;
   // For each line
   for($y=0;$y<$h;$y++) {
       // For each column
      for($x=0;$x<$w;$x++) {
        $rgba     = imagecolorat($getimage, $x, $y);
        $r = ($rgba >> 16) & 0xFF;
        $g = ($rgba >> 8) & 0xFF;
        $b = $rgba & 0xFF;
        $a     = ($rgba & 0x7F000000) >> 24;
        echo '<div class="pix" style="background-color: rgba('.$r.', '.$g.', '.$b.', '.$a.');"></div>';
        $count++;
        if($count==$w) {echo '<br>'; $count = 0; }

      }
   }
   echo $pixel_gen;

}

http://narks.xtreemhost.com/: Oyu o clic burada, neye benzediğini görmek istiyorsanız

Ve herhangi bir simgenin üzerine çift tıklayın, açılan görünecektir. (Not: herhangi bir simgenin üzerine DBL-clinking aynı görüntüyü gösterir (Ben henüz bu sabit değil)

I siyah piksel yapmak nasıl herhangi bir fikir var) alfa ile gerçek piksel gibi görünür?

Yardımlarınız için teşekkürler!

EDITED (New code, i put only the first lines since i want to save space)

function go($image) {
    // Open the image
    $getimage=imagecreatefrompng($image);
    imagealphablending($getimage, false);
    imagesavealpha($getimage, true);

  //Get the width/height
   $w = imagesx($getimage);
   $h = imagesy($getimage);
[...]

, Şimdi neye benzediğini görmek yukarıdaki web sitesini ziyaret edin ve bir simgeye çift tıklayın.

EDIT 2 I just tried (for a test) with :

$getimage=imagecreatefrompng('iconDB/lib/chat_fav_48.png');
imagealphablending($getimage, false);
imagesavealpha($getimage, true);

header("Content-type: image/png");
imagepng($getimage);
imagedestroy($getimage);

ve daha sonra

$getimage=imagecreatefrompng('iconDB/lib/chat_fav_48.png');

header("Content-type: image/png");
imagepng($getimage);
imagedestroy($getimage);

İlk Okay ve ikinci pikseller siyah yapmak. Ben görüntülemek zaman ben her pikselin RGB renk olsun ve ne zaman öyledir. Herkes orada bir hata görürseniz?

0 Cevap