Reputation: 143114
If I have an array of pixel data in JavaScript, is there a good way to display it on an HTML page?
<canvas>
element and use putImageData
to display the pixels, but ideally a solution could work on older versions as well and more importantly, work on Internet Explorer.data:
URI with the pixels and set that as the src
of an <img>
element. Unfortunately, it seems like most image formats are complex and I'm having a hard time finding a simple one that can do the job (BMP looks like a possibility but does not work on Safari). Also, versions of Internet Explorer before IE 8 don't support data:
URIs at all.I doubt any exist, but does anyone know of image libraries for JavaScript that can generate image in a standard format? Is there a way to replicate the functionality of a data:
URI in IE 7?
Upvotes: 4
Views: 4376
Reputation: 31
Canvas is a good solution, for-cross browser support see Mark Pilgrim's excellent tutorial. Specifically, the "What about IE?" section and using ExplorerCanvas. You can use and create data:
URIs in the PNG and JPEG formats with canvas.
Upvotes: 3
Reputation: 20145
Maybe check out fxCanvas http://burzak.com/pro/fxcanvas/
I think they implement even ‘putImageData‘ in IE using Flash.
Upvotes: -1
Reputation: 576
Does PNG format work for your targets? If so PNGlib looks pretty good.
Also, JS JPEG Encoder looks good but it takes as input the returned value of Canvas.getImageData().
Don't know what you can do to support IE 7 though.
Upvotes: 2
Reputation: 18350
Check you Raphaël - http://raphaeljs.com/
While this may be slow, and it is not the intended use of the library, it will work with support for browsers you're interested in.
Upvotes: 0