| AWARE [SYSTEMS] | Imaging expertise for the Delphi developer | |||||||
![]() |
TIFF and LibTiff Mailing List Archive | |||||||
LibTiff Mailing List
TIFF and LibTiff Mailing List Archive Contact
The TIFF Mailing List Homepage |
Thread2007.05.04 13:02 "Re: TIFFSetField and float values", by Joris Van Dammemikk, mikk wrote: > Oh, my, I've found the reason. Digging into the source code I realized > that TIFFSetField > gets the parameter from va_arg as double: > (From tif_dir.c,v 1.72 2006/03/15 12:49:35, line 234:) > // ... > case TIFFTAG_XRESOLUTION: > td->td_xresolution = (float) va_arg(ap, double); > break; > // ... > > When I pass argument of type double, the tag saves the value properly. > Looks like an error in documentation (TIFFSetField.3tiff.html)? I would agree... but I suspect other compilers may behave differently. I suspect that passing a float, as per documentation, would work for most, but passing a double will work for all. I've also tried changing the code you quote from tif_dir.c to va_arg(ap,float), but that doesn't work on our Borland compilers at all (and likely it will not work on most other compilers either, I think). So I'm about to propose to change the documention to specify a double parameter as part of the next update. Best regards, Joris Van Damme info@awaresystems.be http://www.awaresystems.be/ Download your free TIFF tag viewer for windows here: http://www.awaresystems.be/imaging/tiff/astifftagviewer.html |
|||||||