2011-01-13 54 views
2

畫布是否支持PNG alpha?我有一些問題,我已經添加到畫布上的一些PNG。圖像的邊緣是黑色的,鋸齒狀,好像沒有alpha通道存在或被識別。PNG Transparency on Canvas

+0

看起來您可能正在保存具有1位透明度的8位PNG,因此它將與黑色混合。你能分享一個給你麻煩的文件嗎? – Phrogz 2011-01-13 21:41:20

回答

0

使用clearRect()fillRect()重新繪製PNG圖像,如果您在requestAnimationFrame或setInterval循環中執行此操作。

我偶然發現了這個問題,因爲我有類似的問題,但我的圖像已經在24位。如果有一個requestAnimationFrame循環將PNG圖像重新繪製到畫布上,並且(如您所說)重疊時,結果是這個「燒焦」邊緣應該具有alpha「淡出」透明度。

只需在調用drawImage之前清理該區域,就可以防止該圖像自身被渲染。