Changes in TIFF v3.6.1 — LibTIFF 4.7.0 documentation

# Changes in TIFF v3.6.1

References
Current Version | v3.6.1 (tag Release-v3-6-1)
Previous Version | v3.6.0
Master Download Site | https://download.osgeo.org/libtiff/
Master HTTP Site | http://www.simplesystems.org/libtiff/

This document describes the changes made to the software between the previous and current versions (see above). If you don't find something listed here, then it was not done in this timeframe, or it was not considered important enough to be mentioned. The following information is located here:

## Major changes

- New utility tiff2pdf for converting TIFF images directly into PDF.

- New TIFFcolor color conversion module.

- Full support for `Orientation` tag in `TIFFRGBAImage` interface.

- Many bugs fixed.

## Software configuration changes

- `libtiff/makefile.vc`, `tools/makefile.vc`: Support for IJG JPEG library.

- `Makefile.in`: Add an absolute path to the `test_pics.sh` call.

- `Makefile.in`: Add an absolute path to the `test_pics.sh` call.

- `libtiff/tiffcomp.h`: `#define _BSDTYPES_DEFINED` when defining BSD typedefs.

- `configure`, `libtiff/Makefile.in`, `libtiff/mkversion.c`: Relative buildings fixed.

- `Makefile.in`: Add an absolute path to the `test_pics.sh` call.

## Library changes

- `libtiff/tif_color.c`, `libtiff/tif_getimage.c`, `libtiff/tiffio.h`: Added support for `ReferenceBlackWhite` tag handling when converted from YCbCr color space as per bug Remote Sensing bugzilla #120 [no longer available].

- `libtiff/tif_getimage.c`, `libtiff/tif_aux.c`: Read `WhitePoint` tag from the file and properly use it for CIE Lab 1976 to RGB transform.

- `libtiff/tif_getimage.c`, `libtiff/tiffio.h`: Finally resolved problems with orientation handling. `TIFFRGBAImage` interface now properly supports all possible orientations, i.e. images will be flipped both in horizontal and vertical directions if required. 'Known bugs' section now removed from the appropriate manual pages.

- `libtiff/tif_luv.c`: Fixed bug in 48-bit to 24-bit conversion routine, reported by Antonio Scuri.

- `libtiff/tiffio.h`, `libtiff/tif_codec.c`: Added new function `TIFFIsCODECConfigured()`, suggested by Ross Finlayson.

- `libtiff/tif_ojpeg.c`: `TIFFVGetField()` function now can properly extract the fields from the OJPEG files. Patch supplied by Ross Finlayson.

- `libtiff/tif_dir.h`: `_TIFFFindOrRegisterdInfo()` declaration replaced with `_TIFFFindOrRegisterFieldInfo()` as reported by Ross Finlayson.

- `libtiff/tif_dirinfo.c`: Implemented binary search in `_TIFFMergeFieldInfo()`. Patch supplied by Ross Finlayson.

- `tif_dirread.c`: do not mark all anonymously defined tags to be `IGNORE` (as it was done in 3.6.0).

- `libtiff/tiff.h`, `libtiff/tif_dirinfo.c`: Added support for IFD (13) datatype, introduced in "Adobe PageMaker TIFF Technical Notes".

- `libtiff/tif_color.c`, `libtiff/tif_getimage.c`, `libtiff/tiffio.h`: New color space conversion code: CIE L*a*b* 1976 images now supported by the `TIFFRGBAImage` interface. YCbCr to RGB conversion code also moved there and now has TIFFcolor publicly available interface. These routines currently used in `TIFFRGBAImage` interface only and not supported in other libtiff tools yet. So if you want, for example, to convert CIE Lab image into PostScript file you should do it in two steps: change colorspace to RGB using tiff2rgba utility and then process it with the tiff2ps.

- `libtiff/tif_tile.c`: Remove spurious use of "s" (sample) in the `planarconfig_contig` case in `TIFFComputeTile()` as per bug Remote Sensing bugzilla #387 [no longer available].

- `libtiff/tiffiop.h`: New macros: `TIFFmax` and `TIFFmin`.

- `libtiff/tiffio.h`, `libtiff/tif_strip.c`: Added `TIFFRawStripSize()` function as suggested by Chris Hanson.

- `libtiff/tif_lzw.c`, `libtiff/tif_fax3.c`: Proper support for update mode as per bug Remote Sensing bugzilla #424 [no longer available].

## Tools changes

- tiff2pdf:: New tool, written by Ross Finlayson, to directly convert TIFF files to PDF.

- tiffgt: Unmaintained and platform dependent sgigt utility removed and replaced with the completely rewritten portable tool (depend on OpenGL and GLUT). This tool will not build by default.

- ras2tiff: Properly determine SUN Rasterfiles with the reverse byte order (it is reported by the magic header field). Problem reported by Andreas Wiesmann.

- raw2tiff: Implemented image size guessing using correlation coefficient calculation between two neighbour lines.

## Contributed software changes

- `contrib/pds/tif_pdsdirread.c`, `contrib/pds/tif_pdsdirwrite.c`: Use `TIFFDataWidth()` function instead of `tiffDataWidth` array.

## LZW compression kit changes

- Proper support for update mode as per bug Remote Sensing bugzilla #424 [no longer available].