roentgen b75cab
roentgen b75cab
roentgen b75cab
<title></title>
roentgen b75cab
Changes in TIFF v3.5.7
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
roentgen b75cab
<font face="Helvetica, Arial, Sans"></font>
roentgen b75cab
<font face="Helvetica, Arial, Sans"> </font>
roentgen b75cab
roentgen b75cab
<basefont size="4"></basefont>
roentgen b75cab
<font size="+3">T</font>IFF <font size="+2">C</font>HANGE <font size="+2">I</font>NFORMATION
roentgen b75cab
<basefont size="3"></basefont>
roentgen b75cab
roentgen b75cab
    roentgen b75cab

    roentgen b75cab
    Current Version: v3.5.7
    roentgen b75cab
    Previous Version: v3.5.6 Beta
    roentgen b75cab
    Master FTP Site: ftp.remotesensing.org, directory pub/libtiff
    roentgen b75cab
    Master HTTP Site: http://www.remotesensing.org/libtiff 
    roentgen b75cab

    roentgen b75cab
    roentgen b75cab
    roentgen b75cab

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

      roentgen b75cab


      roentgen b75cab
      roentgen b75cab
      roentgen b75cab
      roentgen b75cab
      <font size="+3">C</font>HANGES IN THE SOFTWARE CONFIGURATION:
      roentgen b75cab
      roentgen b75cab
        roentgen b75cab
      • libtiff/libtiff.def: Brent Roman submitted new version adding
      • roentgen b75cab
        serveral missing entry points.  Also add a few other entry points 
        roentgen b75cab
        later.
        roentgen b75cab
        roentgen b75cab
      • configure, Makefile.in, etc: added support for OPTIMIZER being
      • roentgen b75cab
        	set from config.site. 
        roentgen b75cab
      • config.guess: updated wholesale to an FSF version apparently
      • roentgen b75cab
        	from 1998 (as opposed to 1994).  This is mainly inspired by 
        roentgen b75cab
        	providing for MacOS X support.
        roentgen b75cab
        roentgen b75cab
      • configure/config.site: modified to check if -lm is needed for
      • roentgen b75cab
        	MACHDEPLIBS if not supplied by config.site.  Needed for Darwin.
        roentgen b75cab
      • libtiff/tiff.h: Applied hac to try and resolve the problem
      • roentgen b75cab
        	with the inttypes.h include file on AIX. (Bug 39)
        roentgen b75cab
        roentgen b75cab
      • configure, *Makefile.in: Various changes to improve configuration
      • roentgen b75cab
        	for HP/UX specifically, and also in general.  (Bug 40) They include:
        roentgen b75cab
          roentgen b75cab
           
        • Try to handle /usr/bin/sh instead of /bin/sh where necessary.
        • roentgen b75cab
           
        • Upgrade to HP/UX 10.x+ compiler, linker and dso options.
        • roentgen b75cab
           
        • Fixed mmap() test to avoid MMAP_FIXED ... it isn't available on HP
        • roentgen b75cab
           
        • Use -${MAKEFLAGS} in sub makes from makefiles.
        • roentgen b75cab
           
        • Fixed SCRIPT_SH/SHELL handling.
        • roentgen b75cab
          roentgen b75cab
        • configure: Changes for DSO generation on AIX provided by
        • roentgen b75cab
          	John Marquart <jomarqua@indiana.edu>.</jomarqua@indiana.edu>
          roentgen b75cab
          roentgen b75cab
        • configure, libtiff/Makefile.in: Modified to build DSOs properly
        • roentgen b75cab
          	on Darwin thanks to Robert Krajewski (rpk@alum.mit.edu) and
          roentgen b75cab
          	Keisuke Fujii (fujiik@jlcuxf.kek.jp).
          roentgen b75cab
          roentgen b75cab
        • configure, libtiff/Makefile.in: applied OpenBSD patches as per bug 61.
        • roentgen b75cab
          roentgen b75cab
        • Makefile.in: added DESTDIR support as per bug 60.
        • roentgen b75cab
          roentgen b75cab
        • libtiff/tif_jpeg.c: Define HAVE_BOOLEAN on windows if RPCNDR.H
        • roentgen b75cab
          	has been included.
          roentgen b75cab
        • man/Makefile.in: add TIFFClientOpen link as per debian submitted
        • roentgen b75cab
          	bug 66.
          roentgen b75cab
        • libtiff/Makefile.in: Fixed @DSOSUB_VERSION to be @DSOSUF_VERSION@
        • roentgen b75cab
          	in two places.
          roentgen b75cab
          roentgen b75cab
          roentgen b75cab


          roentgen b75cab
          roentgen b75cab
          roentgen b75cab
          roentgen b75cab
          <font size="+3">C</font>HANGES IN LIBTIFF:
          roentgen b75cab
          roentgen b75cab
          roentgen b75cab
          roentgen b75cab
        • tif_fax3.c: keep rw_mode flag internal to fax3 state to remember
        • roentgen b75cab
          	whether we are encoding or decoding.  This is to ensure graceful 
          roentgen b75cab
          	recovery if TIFFClientOpen() discovers an attempt to open a compressed
          roentgen b75cab
          	file for "r+" access, and subsequently close it, as it resets the 
          roentgen b75cab
          	tif_mode flag to O_RDONLY in this case to avoid writes, confusing the
          roentgen b75cab
          	compressor's concept of whether it is in encode or decode mode.
          roentgen b75cab
        • tif_luv.c/tiff.h/tiffio.h:
        • roentgen b75cab
          	New version of TIFF LogLuv (SGILOG) modules contributed by Greg Ward 
          roentgen b75cab
          	(greg@shutterfly.com).  He writes:
          roentgen b75cab
          roentgen b75cab
            roentgen b75cab
            	
          1. I improved the gamut-mapping function in tif_luv.c for imaginary
          2. roentgen b75cab
            	colors, because some images were being super-saturated on the input 
            roentgen b75cab
            	side and this resulted in some strange color shifts in the output.
            roentgen b75cab
            roentgen b75cab
            	
          3. I added a psuedotag in tiff.h to control random dithering during
          4. roentgen b75cab
            	LogLuv encoding.  This is turned off by default for 32-bit LogLuv and 
            roentgen b75cab
            	on for 24-bit LogLuv output.  Dithering improves the average color 
            roentgen b75cab
            	accuracy over the image.
            roentgen b75cab
            roentgen b75cab
            	
          5. I added a #define for LOG_LUV_PUBLIC, which is enabled by default in
          6. roentgen b75cab
            	tiffio.h, to expose internal routines for converting between LogLuv and
            roentgen b75cab
            	XYZ coordinates.  This is helpful for writing more efficient,
            roentgen b75cab
            	specialized conversion routines, especially for reading LogLuv files.
            roentgen b75cab
            roentgen b75cab
            roentgen b75cab
          7. libtiff/tif_dirinfo.c: don't declare tiffFieldInfo static on VMS.
          8. roentgen b75cab
            roentgen b75cab
          9. Added TIFFTAG_COPYRIGHT support.
          10. roentgen b75cab
          11. tif_getimage.c: Added support for 16bit minisblack/miniswhite
          12. roentgen b75cab
            	images in RGBA interface.
            roentgen b75cab
          13. libtiff/tif_dirinfo.c: removed duplicate TIFFTAG_PHOTOSHOP as per
          14. roentgen b75cab
            	bug 44.
            roentgen b75cab
          15. libtiff/tif_dirwrite.c: Added support for TIFF_VARIABLE2 in the
          16. roentgen b75cab
            	case of writing TIFF_BYTE/TIFF_SBYTE fields as per bug 43.
            roentgen b75cab
            roentgen b75cab
          17. libtiff/tif_dirinfo.c: Modified the TIFF_BYTE definition for
          18. roentgen b75cab
            	TIFFTAG_PHOTOSHOP to use a writecount of TIFF_VARIABLE2 (-3) to
            roentgen b75cab
            	force use of uint32 counts instead of short counts. 
            roentgen b75cab
            roentgen b75cab
          19. libtiff/tif_dirinfo.c: moved pixar and copyright flags to
          20. roentgen b75cab
            	ensure everything is in order.
            roentgen b75cab
            roentgen b75cab
          21. Integrated experimental OJPEG support from Scott Marovich of HP.
          22. roentgen b75cab
            roentgen b75cab
          23. libtiff/tif_open.c: Seek back to zero after failed read,
          24. roentgen b75cab
            	before writing header.
            roentgen b75cab
            roentgen b75cab
          25. libtiff/tiff.h, libtiff/tif_fax3.c: added check for __LP64__
          26. roentgen b75cab
            	when checking for 64 bit architectures as per bugzilla bug 67.
            roentgen b75cab
          27. libtiff/tif_getimage.c: Use memmove() instead of TIFFmemcpy()
          28. roentgen b75cab
            	in TIFFReadRGBATile() to avoid issues in cases of overlapping
            roentgen b75cab
            	buffers.  See Bug 69 in Bugzilla. 
            roentgen b75cab
          29. libtiff/tif_getimage.c: Don't complain for CMYK (separated)
          30. roentgen b75cab
            	images with more than four samples per pixel as per bug 73.
            roentgen b75cab
            roentgen b75cab
          31. libtiff/tif_getimage.c: relax handling of contig case where
          32. roentgen b75cab
            there are extra samples that are supposed to be ignored as per bug 75.  This
            roentgen b75cab
            should now work for 8bit greyscale or palletted images.  
            roentgen b75cab
            roentgen b75cab
          33. libtiff/tif_packbits.c: fixed memory overrun error as per bug 77.
          34. roentgen b75cab
            roentgen b75cab
          35. libtiff/tif_getimage.c: Fixed problem with reading strips or
          36. roentgen b75cab
            tiles that don't start on a tile boundary.  Fix contributed by
            roentgen b75cab
            Josep Vallverdu (from HP), and further described in bug 47.
            roentgen b75cab
            roentgen b75cab
          37. libtif/tif_fax3.c: Removed #ifdef PURIFY logic, and modified to
          38. roentgen b75cab
            	always use the "safe" version, even if there is a very slight
            roentgen b75cab
            	cost in performance as per bug 54.
            roentgen b75cab
          39. libtiff/tif_lzw.c: added dummy LZWSetupEncode() to report an
          40. roentgen b75cab
            	error about LZW not being available.
            roentgen b75cab
            roentgen b75cab
          41. libtiff/tif_dir.c: propagate failure to initialize compression
          42. roentgen b75cab
            	back from TIFFSetField() as an error status, so applications can 
            roentgen b75cab
            	detect failure.
            roentgen b75cab
            roentgen b75cab
          43. libtiff/tif_lzw.c: Avoid MS VC++ 5.0 optimization bug as per bug 78.
          44. roentgen b75cab
            roentgen b75cab
          45. libtiff/tif_dirwrite.c: added TIFFRewriteDirectory() function.
          46. roentgen b75cab
            Updated TIFFWriteDirectory man page to include TIFFRewriteDirectory.
            roentgen b75cab
            roentgen b75cab
          47. libtiff/tiff.h: I have created COMPRESSION_CCITT_T4,
          48. roentgen b75cab
            	COMPRESSION_CCITT_T6, TIFFTAG_T4OPTIONS and TIFFTAG_T6OPTIONS aliases 
            roentgen b75cab
            	in keeping with TIFF 6.0 standard in tiff.h as per bug 83.
            roentgen b75cab
            roentgen b75cab
          49. Added PHOTOMETRIC_ITULAB as per bug 90.
          50. roentgen b75cab
            roentgen b75cab
            roentgen b75cab
            roentgen b75cab


            roentgen b75cab
            roentgen b75cab
            roentgen b75cab
            roentgen b75cab
            <font size="+3">C</font>HANGES IN THE TOOLS:
            roentgen b75cab
            roentgen b75cab
              roentgen b75cab
            • Brent Roman contributed updated tiffcp utility (and tiffcp.1)
            • roentgen b75cab
              	with support for extracting subimages with the ,n syntax, and also
              roentgen b75cab
              	adding the -b bias removal flag. 
              roentgen b75cab
            • tiff2ps.c/tiff2ps.1: Substantial changes to tiff2ps by
            • roentgen b75cab
              	Bruce A. Mallett, including a faster encoder, fixes for level
              roentgen b75cab
              	2 PostScript, and support for the imagemask operator.
              roentgen b75cab
            • fax2ps.c: Helge (libtiff at oldach.net) submitted fix
            • roentgen b75cab
              that corrects behaviour for non-Letter paper
              roentgen b75cab
              sizes. (Bug 35) It fixes two problems:
              roentgen b75cab

              roentgen b75cab
              	Without	scaling (-S) the fax is now centered on the page size specified
              roentgen b75cab
              	with -H	and/or -W. Before, fax2ps was using an obscure and practially
              roentgen b75cab
              	useless algorithm to allocate the image relative to Letter sized paper
              roentgen b75cab
              	which sometime sled to useless whitespace on the paper, while at the
              roentgen b75cab
              	same time cutting of the faxes printable area at the opposite border.
              roentgen b75cab

              roentgen b75cab
              roentgen b75cab
              	Second, scaling now preserves aspect ratio, which makes unusual faxes
              roentgen b75cab
              	(in particular short ones) print properly.
              roentgen b75cab
              roentgen b75cab
            • thumbnail.c: changed default output compression
            • roentgen b75cab
              	to packbits from LZW since LZW isn't generally available.
              roentgen b75cab
            • tiff2rgba.c: added -n flag to avoid emitting alpha component. Also added
            • roentgen b75cab
              a man page for tiff2rgba.
              roentgen b75cab
              roentgen b75cab
            • tiffcmp.c: Fixed multi samples per pixel support for ContigCompare
            • roentgen b75cab
              as per bug 53.
              roentgen b75cab
              Updated bug section of tiffcmp.1 to note tiled file issues.
              roentgen b75cab
              roentgen b75cab
            • libtiff/tif_getimage.c: Fixed so that failure is properly
            • roentgen b75cab
              	reported by gtTileContig, gtStripContig, gtTileSeparate and 
              roentgen b75cab
              	gtStripSeparate as per bug 51.
              roentgen b75cab
              roentgen b75cab
              roentgen b75cab
              roentgen b75cab
              roentgen b75cab


              roentgen b75cab
              roentgen b75cab
              roentgen b75cab
              roentgen b75cab
              <font size="+3">C</font>HANGES IN THE LZW COMPRESSION KIT:
              roentgen b75cab
              roentgen b75cab
              	
            • Rewrote lzw patching process so that is required to enable full
            • roentgen b75cab
              	LZW support is to drop the tif_lzw.c from the 
              roentgen b75cab
              	libtiff-lzw-compression-kit over the one in the libtiff directory. 
              roentgen b75cab
              roentgen b75cab
              	
            • Some changes were made to make recovery from failure to
            • roentgen b75cab
              	initialize the LZW compressor more graceful.
              roentgen b75cab
              roentgen b75cab
              	
            • Note that as distributed libtiff support LZW decompression, but
            • roentgen b75cab
                      not LZW compression. 
              roentgen b75cab
              roentgen b75cab
              roentgen b75cab
              roentgen b75cab
              roentgen b75cab
              <font size="+3">C</font>HANGES IN THE CONTRIB AREA:
              roentgen b75cab
              roentgen b75cab
            • Fixed distribution to include contrib/addtiffo/tif_ovrcache.{c,h}.
            • roentgen b75cab
              roentgen b75cab
              roentgen b75cab
               TIFF home page.
              roentgen b75cab
              roentgen b75cab

              roentgen b75cab
              roentgen b75cab
              Last updated $Date: 2004/11/26 14:37:20 $.
              roentgen b75cab
              roentgen b75cab
              roentgen b75cab