2010-01-17 153 views
3

情景是這樣的: webapp的用戶可以通過選擇自己的徽標圖像,背景顏色和背景圖像來自定義網站。Java ImageIO:我可以將PNG-24文件轉換爲PNG-8嗎?

問題是IE6不支持透明PNG。我已經嘗試了幾種客戶端解決方案,但在所有方面都存在缺陷(大多數不支持css屬性background-repeat)。

我正在尋找在服務器上創建兩個單獨圖像的替代解決方案,一個用於現代,透明png兼容的瀏覽器,另一個用於IE6。

問題是,我可以用ImageIO來完成嗎?基本上,我會檢測圖像是否採用PNG-24格式,並將其轉換爲PNG-8(IE6支持)。

回答

1

如果您需要IE6的透明度,那麼可以考慮只爲該瀏覽器發送GIF。這可行嗎?

+0

是的,這可以工作......是否更容易完成? (我還可以在GIF中留下一些透明度嗎?) – Dan 2010-01-17 18:31:41

+0

http://ubuntuforums.org/showthread.php?t=1060128討論瞭如何使用Java ImageIO將PNG轉換爲GIF。 – 2011-06-28 08:34:18

0

我知道你說你使用的各種客戶端的解決方案,但該項目這一塊工作,我用,所以以防萬一:http://jquery.andreaseberhard.de/pngFix/

(如果你已經嘗試過了,隨意評論,我將刪除答案)

+0

它在頁面上說它支持'css背景(但縮放背景)',這意味着 - 根據以前的其他腳本的經驗判斷 - 它不處理背景重複,而是延伸圖像。 – Dan 2010-01-17 18:30:54

相關問題