Insert a text chunk into a png image
Use ImageMagick's convert
and the -set
option:
convert IN.png \
-set 'Copyright' 'CC-BY-SA 4.0' \
-set 'Title' 'A wonderful day' \
-set comment 'Photo taken while running' \
OUT.png
The -set
option is used to set metadata elements. In the case of PNG these often go into tEXt
chunks.
I have searched around for utilities to do this, and not yet found anything that really matches what I want to do. So I decided to build my own, which it turns out is not too hard. The utility png-text-dump
displays all text chunks in a PNG image. It depends only on libpng. The utility png-text-append
inserts text chunks into a PNG image. It depends only on the standard C library - I had initially tried to implement this using libpng, but actually found it easier to work from scratch using only the PNG specification.