png-chunks-encode
v1.0.0
Published
Return a fresh PNG buffer given a set of PNG chunks
Downloads
47,526
Maintainers
Readme
png-chunks-encode
Return a fresh PNG buffer given a set of PNG chunks. Useful in combination with png-chunks-encode to easily modify or add to the data of a PNG file.
By adding your own tEXt
or zEXt
chunks you have a useful alternative to LSB steganography for making "magical" images with "secret" data available for your applications: the data is hardly hidden this way, but you can store as much as you like. If you really wanted to, you could probably get away with sneaking a 300MB 3D model in there without too much trouble 👻
Usage
buffer = encode(chunks)
Takes an array of chunks
, each with a name
and data
:
[
{ name: 'IHDR', data: Uint8Array([...]) },
{ name: 'IDAT', data: Uint8Array([...]) },
{ name: 'IDAT', data: Uint8Array([...]) },
{ name: 'IDAT', data: Uint8Array([...]) },
{ name: 'IDAT', data: Uint8Array([...]) },
{ name: 'IEND', data: Uint8Array([]) }
]
And returns a Uint8Array
containing the raw PNG buffer.
See Also
License
MIT, see LICENSE.md for details.