鍍金池/ 問(wèn)答/PHP  C  網(wǎng)絡(luò)安全/ GD庫(kù)生成的圖片,剪切圓形圖時(shí)自帶黑邊框

GD庫(kù)生成的圖片,剪切圓形圖時(shí)自帶黑邊框

使用PHP的GD庫(kù)生成海報(bào),再對(duì)二維碼剪切成圓形放到指定位置,代碼都是我網(wǎng)上找到拼在一起的,但是現(xiàn)在還是遇到二維碼已經(jīng)剪切成圓形了,但是圖片竟然自帶黑邊框。本地生成的圖片是透明的,所以問(wèn)下有沒(méi)有解決辦法。謝謝了。
問(wèn)題:

clipboard.png

本地生成的圖片:

clipboard.png

代碼:
$w = 200; $h=200; // original size

    $original_path= $url;  
    $dest_path = $path.uniqid().'.png';  
    $src = imagecreatefromstring(file_get_contents($original_path));  
    $per = 2.6;
    $w = $w*$per;
    $h = $h*$per;
    $newpic = imagecreatetruecolor($w,$h);  
    imagealphablending($newpic,false);  
    $transparent = imagecolorallocatealpha($newpic, 255, 255, 255, 127);  
    $r=$w/2;  
    for($x=0;$x<$w;$x++)  
      for($y=0;$y<$h;$y++){  
          $c = imagecolorat($src,$x,$y);  
          $_x = $x - $w/2;  
          $_y = $y - $h/2;  
          if((($_x*$_x) + ($_y*$_y)) < ($r*$r)){  
              imagesetpixel($newpic,$x,$y,$c);  
          }else{  
              imagesetpixel($newpic,$x,$y,$transparent);  
          }  
      }  
    imagesavealpha($newpic, true);  
    imagepng($newpic, $dest_path);  
    imagedestroy($newpic);  
    imagedestroy($src);  
    return $dest_path; 
回答
編輯回答
爛人

設(shè)置一個(gè)header("Content-type:image/png")試試?

2018年8月17日 00:02