2010-03-08 18 views
1

我遇到的問題是:我需要能夠使用Javascript動態地爲圖像着色,但是我無法通過畫布訪問像素數據。但是,我可以存儲dataURL(或任何其他基於文本的數據格式),並將其包含在代碼中,處理該數據,然後使用該dataURL創建一個圖像對象。僅使用toDataURL操縱像素

我的問題是,我如何才能訪問每個像素的RGBA值,只給出dataURL。我假設我需要解碼base64 url​​,但是爲了在像素級別上操作,採用什麼格式?然後,將它重新編碼爲base64,將它拍成一個url,然後傳遞給一個圖像就可以了?

謝謝。

+0

你想操縱圖像,還是隻看它對用戶的影響? – 2010-03-09 00:30:57

+0

好像你必須自己寫JPEG(或PNG或其他)解壓縮。 – Pointy 2010-03-09 01:04:40

+0

您可以創建一個隱藏的畫布元素,在那裏繪製圖像,進行着色,然後從隱藏的畫布中拉出dataURL。 – Ronald 2010-03-09 05:35:42

回答

1

我已經在xda上實現了toDataURL/PNG替換,可以滿足您的需求。它操作的RGBA陣列上,所以你可以包括你的形象爲未壓縮的資源,使用簡單的XMLHttpRequest將其加載到一個數組,操縱它,最後將其送入該函數獲得繪製DataURL

http://forum.xda-developers.com/showthread.php?t=1251575