TIFF and LibTiff Mail List Archive

2010.06.09 15:30 "[Tiff] Writing EXIF data via libtiff", by IGI/Michael_Möllney

Dear List Members,

I use libtiff to write an image.

This works.

Now I would like to add some info in an exif directory.

 From the documentation I found that I could write a directory
containing the image with some basic tiff tags (image width,
bitspersample, ....)
This works.

Now I would like to add an exif directory.

And at this point I do not come to any point:

In my idea I have to:

  1. fill the first image IFD with tags and image.
  2. add a new IFD by writing the first image directory via TIFFWriteDirectroy()
  3. add exif tags to this new created directory
  4. write this directory,too
  5. reopen the image IFD again to set the TIFFTAG_EXIFIFD to point to the offset of the EXIF IFD.
  6. rewrite this image IFD.
  7. Is this basic idea correct?

If so:
how how do I get the offset of the EXIF IFD?
how do I get the number of the image IFD?

Could someone provide a very simple example with just one EXIF tag writte, e.g. EXIFTAG_FNUMBER?

Or is writing EXIF out of topic for the libtiff.

Thanks you for reading that far,


*/Ingenieur-Gesellschaft fuer Interfaces mbH/*
Dipl.-Math. Michael MÖLLNEY
Langenauer Str. 46
57223 Kreuztal, Germany
Tel.: +49-(0)2732-5525-0
Fax: +49-(0)2732-5525-25

E-mail: <> Internet: <> <>, <>

-------------------------------------------------------------- Sitz der Gesellschaft / Company domiciled in: Kreuztal Handelsregister / Register: Siegen HRB 1975 Ust ID Nr. / VAT Reg. No.: DE 126 580 027 Steuer Nr. / Tax No.: 342 / 5873 / 3332 Geschaeftsfuehrer / Managing Director: Hubert MINTEN


The information sent by means of this e-mail message is intended for the use of the addressee only! Publication, duplication, distribution and/or forwarding to third parties of this message, as well as use of the information by other persons than the intended recipient, is strictly prohibited. If you have received this communication in error, please notify the sender immediately by returning it.