[請益] GD函數 256色GIF --> 全彩PNG

看板PHP作者 (活力花俏草兒仔政﹞O花俏)時間16年前 (2009/08/10 01:55), 編輯推噓3(309)
留言12則, 3人參與, 最新討論串1/1
嗯嗯…問題如標題所示… 小弟最近弄了一個網頁, 裡面有牽涉到圖片轉換 & 合成… 想說要把user傳來的gif jpg png 全轉成 png 但後來發覺事情沒拿麼簡單… 首先就是透明的GIF檔… 我試著將他和一張png檔合成時… 原本透明的背景就變黑了… 小弟試了一下… 發覺有可能是因為GIF是256色色盤的緣故… 可能是因此在和全彩PNG合成時,產生什麼錯誤造成透明效果失效… 因此小弟試著想要把GIF轉成全彩的png… 但是…在進行轉換的過程中,透明效果就失效了0rz... 如下列的網址所示: http://grassboy2.twbbs.org/www/why/gd.php?type=1 原本的GIF檔 http://grassboy2.twbbs.org/www/why/gd.php?type=2 試著轉換後的PNG檔 如果只是把原本的GIF檔轉成256色PNG(上列網址type=3的狀況)好像又正常@@~ 但只要一與全彩PNG合成透明就失效了… 有人之前處理過類似的問題嗎?感覺應該是GIF的透明機制與PNG不同… 但知道問題…不知如何解決啊><~ 先感謝大家的回答了m(_ _)m --- http://grassboy2.twbbs.org/www/why/gd.phps 這篇文章提的php的原始碼 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.87.174

08/10 02:04, , 1F
倒是好奇透明部份抓出來的值和png的值是一樣的嗎..
08/10 02:04, 1F

08/10 08:13, , 2F
試試看用imagesavealpha()
08/10 08:13, 2F

08/10 20:22, , 3F
我只用過少少幾次gd,感覺上很多圖片處理 loadfrom...
08/10 20:22, 3F

08/10 20:23, , 4F
load載入進來後,是以自己的格式在做後續處理(加字,等
08/10 20:23, 4F

08/10 20:24, , 5F
感覺上都是bmp。bmp有透明這東西嗎 沒有 所以轉存後
08/10 20:24, 5F

08/10 20:24, , 6F
變黑感覺很正常..其他圖形處理也都是這種感覺
08/10 20:24, 6F

08/10 20:25, , 7F
以上言論只是感覺...沒徹底研究不負責
08/10 20:25, 7F

08/10 20:27, , 8F
不只透明,多圖檔tif 載入進來(轉成bmp?) 應該也是會
08/10 20:27, 8F

08/10 20:27, , 9F
少掉些資訊..
08/10 20:27, 9F

08/10 20:29, , 10F
我只用過幾次gd(php),幾次載入圖案到canvas後處理
08/10 20:29, 10F

08/10 20:30, , 11F
(vc,bcb),用過2個bcb/delphi處理圖形元件.
08/10 20:30, 11F

08/10 20:31, , 12F
需要才用 用完就算 只是感覺載入好像都已經失去資料
08/10 20:31, 12F
文章代碼(AID): #1AVmsBos (PHP)
文章代碼(AID): #1AVmsBos (PHP)