php gd函式庫失真的解決方法:1、開啟對應的PHP檔案;2、透過imagecreatetruecolor函數建立一個與背景圖大小相同的畫布;3、依照實際需求向上蓋所需的圖片即可。
本文操作環境:windows7系統、PHP7.1版、DELL G3電腦
如何解決php gd函式庫失真問題?
PHP基於GD繪圖時影像失真問題
這兩天做一個小東西,圖片疊加組合成新的圖。切圖用的是copper插件,出來的效果慘不忍睹。圖片是失真的,失真情況類似網路上的GIF動圖那種細節顏色的遺失。於是在網路上找到了以下解決方法,親測有效。
最關鍵的一步是用 imagecreatetruecolor(a,b)函數建立一個與背景圖大小相同的畫布。
$bgimg = imagecreatetruecolor(imagesx($im), imagesy($im));
以這個$bgimg為低,透過
imagecopymerge($bgimg,$im, 0, 0, 0, 0,imagesx($im),imagesy($im), 100);
將原來扣好的底圖$im蓋上去,然後就根據實際需求向上蓋需要的圖片。
當然加文字也是可以的。
imagefttext($bgimg, $name_font, 0, $name_orginX ,$name_orginY, $color, $font, $name);
最後
header('Content-type: image/png'); header('Content-type: image/jpg'); $result = imagepng($bgimg); imagedestroy($bgimg);
這個不是全部的程式碼,不過了解GD的應該知道這段程式碼放在哪裡。
推薦學習:《PHP影片教學》
以上是如何解決php gd函式庫失真問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!