Page 1 of 1

Properties set in image do not appear in written image.

Posted: 2009-07-16T09:16:58-07:00
by snewman
I'm new at ImageMagick so it's likely I'm doing something wrong, but so far it escapes me.
I'm using the MagickWand API (version 6.5.4-1) with C on a Red Hat Linux system. I'm doing the following:
1. Read an existing JPEG with MagickReadImage().
2. Apply one or more properties using MagickSetImageProperty().
3. Verify that the properties have been set using MagickGetImageProperty().
4. Write the file to a separate path using MagickWriteImage().
5. List the image file characteristics and properties using the identify tool (with the -verbose option).
6. The properties added to the image are not found in the newly written image file, in spite of the fact that they were verified present in the image before it was written.

Questions:
Is there something I'm supposed to do with the profile?
Is this simply the way it works?

Any advice will be appreciated.

Thanks.

Re: Properties set in image do not appear in written image.

Posted: 2009-07-16T10:26:58-07:00
by magick
Not all image formats support all properties. What image format are you writing to? Also post an example of a property that is not getting saved.

Re: Properties set in image do not appear in written image.

Posted: 2009-07-16T10:55:37-07:00
by snewman
I'm reading in a JPEG file taken with a CANON EOS camera. Trying to add exif:GPSLatitude, exif:GPSLongitude, and exif:Description properties. After setting the properties, I can do a ImageMagickGetProperty for each one and the property values are returned correctly. However, after writing the image to a new file, the properties are not in that new file. I'm not manipulating any other image properties or characteristics and the newly written file is also JPEG format.

Thanks for replying so quickly.

Re: Properties set in image do not appear in written image.

Posted: 2009-07-16T11:41:30-07:00
by magick
ImageMagick, at this time, only writes a few EXIF properties. To properly update the EXIF profile, use exiftool.