2010-06-23 74 views
4

如果我有一個JavaScript中的像素數據數組,是否有一種很好的方法將其顯示在HTML頁面上?從像素數據陣列中繪製圖像

  • 在最新版本的Safari和Firefox的,我可以做一個<canvas>元素,並使用putImageData顯示像素,但最好的解決方案可以在舊版本的工作,以及更重要的是,工作在Internet Explorer。
  • 看起來更有形的另一種解決方案可能是將像素編碼爲標準圖像格式,並使用像素創建URI並將其設置爲<img>元素的src。不幸的是,它似乎像大多數圖像格式是複雜的,我很難找到一個簡單的可以做這項工作(BMP看起來像一種可能性,但不適用於Safari)。此外,IE 8之前的Internet Explorer版本根本不支持data: URI。

我懷疑任何存在,但沒有人知道JavaScript的圖像庫,可以生成標準格式的圖像?有沒有辦法在IE 7中複製URI的data:的功能?

回答

2

不PNG。格式化你的目標工作?如果是的話PNGlib看起來不錯。

此外,JS JPEG Encoder看起來不錯,但它將Canvas.getImageData()的返回值作爲輸入。

不知道你可以做什麼來支持IE 7。

0

檢查你拉斐爾 - http://raphaeljs.com/

雖然這可能是緩慢的,它是不是打算利用圖書館,它將與支持工作,對你感興趣的瀏覽器

+0

是的,我寧願不繪製矩形;這太慢了。 – 2010-06-23 00:35:26

3

Canvas是一個很好的解決方案,跨瀏覽器支持見Mark Pilgrim的優秀教程:「什麼關於IE」

http://diveintohtml5.ep.io/canvas.html 具體的部分和使用explorercanvas。您可以使用和創建數據:URI的PNG和JPEG格式與畫布。

+0

鏈接已斷開,我不知道如何自己解決。 – Seanny123 2015-08-30 15:45:38