]> git.saurik.com Git - wxWidgets.git/blame - src/tiff/html/v3.5.7.html
Merged libtiff 4.0.3 changes into the trunk.
[wxWidgets.git] / src / tiff / html / v3.5.7.html
CommitLineData
8414a40c
VZ
1<HTML>
2<HEAD>
3<TITLE>
4Changes in TIFF v3.5.7
5</TITLE>
6</HEAD>
7
8<BODY BGCOLOR=white>
9<FONT FACE="Helvetica, Arial, Sans">
10<FONT FACE="Helvetica, Arial, Sans">
11
12<BASEFONT SIZE=4>
13<B><FONT SIZE=+3>T</FONT>IFF <FONT SIZE=+2>C</FONT>HANGE <FONT SIZE=+2>I</FONT>NFORMATION</B>
14<BASEFONT SIZE=3>
15
16<UL>
17<HR SIZE=4 WIDTH=65% ALIGN=left>
18<B>Current Version</B>: v3.5.7<BR>
19<B>Previous Version</B>: <A HREF=v3.5.6-beta.html>v3.5.6 Beta</a><BR>
20<B>Master FTP Site</B>: <A HREF="ftp://ftp.remotesensing.org/pub/libtiff">ftp.remotesensing.org</a>, directory pub/libtiff</A><BR>
21<B>Master HTTP Site</B>: <A HREF="http://www.remotesensing.org/libtiff/">http://www.remotesensing.org/libtiff</a>
22<HR SIZE=4 WIDTH=65% ALIGN=left>
23</UL>
24
25<P>
26This document describes the changes made to the software between the
27<I>previous</I> and <I>current</I> versions (see above).
28If you don't find something listed here, then it was not done in this
29timeframe, or it was not considered important enough to be mentioned.
30The following information is located here:
31<UL>
32<LI><A HREF="#configure">Changes in the software configuration</A>
33<LI><A HREF="#libtiff">Changes in libtiff</A>
34<LI><A HREF="#tools">Changes in the tools</A>
35<LI><A HREF="#lzwkit">Changes in the LZW compression kit</A>
36</UL>
37<p>
38<P><HR WIDTH=65% ALIGN=left>
39
40<!--------------------------------------------------------------------------->
41
42<A NAME="configure"><B><FONT SIZE=+3>C</FONT>HANGES IN THE SOFTWARE CONFIGURATION:</B></A>
43
44<UL>
45<li> libtiff/libtiff.def: Brent Roman submitted new version adding
46serveral missing entry points. Also add a few other entry points
47later.
48
49<li> configure, Makefile.in, etc: added support for OPTIMIZER being
50 set from config.site.
51<li> config.guess: updated wholesale to an FSF version apparently
52 from 1998 (as opposed to 1994). This is mainly inspired by
53 providing for MacOS X support.
54
55<li> configure/config.site: modified to check if -lm is needed for
56 MACHDEPLIBS if not supplied by config.site. Needed for Darwin.
57<li> libtiff/tiff.h: Applied hac to try and resolve the problem
58 with the inttypes.h include file on AIX. (Bug 39)
59
60<li> configure, *Makefile.in: Various changes to improve configuration
61 for HP/UX specifically, and also in general. (Bug 40) They include:
62<ul>
63 <li> Try to handle /usr/bin/sh instead of /bin/sh where necessary.
64 <li> Upgrade to HP/UX 10.x+ compiler, linker and dso options.
65 <li> Fixed mmap() test to avoid MMAP_FIXED ... it isn't available on HP
66 <li> Use -${MAKEFLAGS} in sub makes from makefiles.
67 <li> Fixed SCRIPT_SH/SHELL handling.
68</ul>
69<li> configure: Changes for DSO generation on AIX provided by
70 John Marquart <jomarqua@indiana.edu>.
71
72<li> configure, libtiff/Makefile.in: Modified to build DSOs properly
73 on Darwin thanks to Robert Krajewski (rpk@alum.mit.edu) and
74 Keisuke Fujii (fujiik@jlcuxf.kek.jp).
75
76<li> configure, libtiff/Makefile.in: applied OpenBSD patches as per bug 61.
77
78<li> Makefile.in: added DESTDIR support as per bug 60.
79
80<li> libtiff/tif_jpeg.c: Define HAVE_BOOLEAN on windows if RPCNDR.H
81 has been included.
82<li> man/Makefile.in: add TIFFClientOpen link as per debian submitted
83 bug 66.
84<li> libtiff/Makefile.in: Fixed @DSOSUB_VERSION to be @DSOSUF_VERSION@
85 in two places.
86</UL>
87
88<P><HR WIDTH=65% ALIGN=left>
89
90<!--------------------------------------------------------------------------->
91
92<A NAME="libtiff"><B><FONT SIZE=+3>C</FONT>HANGES IN LIBTIFF:</B></A>
93
94
95<UL>
96<li> tif_fax3.c: keep rw_mode flag internal to fax3 state to remember
97 whether we are encoding or decoding. This is to ensure graceful
98 recovery if TIFFClientOpen() discovers an attempt to open a compressed
99 file for "r+" access, and subsequently close it, as it resets the
100 tif_mode flag to O_RDONLY in this case to avoid writes, confusing the
101 compressor's concept of whether it is in encode or decode mode.
102<li> tif_luv.c/tiff.h/tiffio.h:
103 New version of TIFF LogLuv (SGILOG) modules contributed by Greg Ward
104 (greg@shutterfly.com). He writes:
105
106<ol>
107 <li> I improved the gamut-mapping function in tif_luv.c for imaginary
108 colors, because some images were being super-saturated on the input
109 side and this resulted in some strange color shifts in the output.
110
111 <li> I added a psuedotag in tiff.h to control random dithering during
112 LogLuv encoding. This is turned off by default for 32-bit LogLuv and
113 on for 24-bit LogLuv output. Dithering improves the average color
114 accuracy over the image.
115
116 <li> I added a #define for LOG_LUV_PUBLIC, which is enabled by default in
117 tiffio.h, to expose internal routines for converting between LogLuv and
118 XYZ coordinates. This is helpful for writing more efficient,
119 specialized conversion routines, especially for reading LogLuv files.
120</ol>
121
122<li> libtiff/tif_dirinfo.c: don't declare tiffFieldInfo static on VMS.
123
124<li> Added TIFFTAG_COPYRIGHT support.
125<li> tif_getimage.c: Added support for 16bit minisblack/miniswhite
126 images in RGBA interface.
127<li> libtiff/tif_dirinfo.c: removed duplicate TIFFTAG_PHOTOSHOP as per
128 bug 44.
129<li> libtiff/tif_dirwrite.c: Added support for TIFF_VARIABLE2 in the
130 case of writing TIFF_BYTE/TIFF_SBYTE fields as per bug 43.
131
132<li> libtiff/tif_dirinfo.c: Modified the TIFF_BYTE definition for
133 TIFFTAG_PHOTOSHOP to use a writecount of TIFF_VARIABLE2 (-3) to
134 force use of uint32 counts instead of short counts.
135
136<li> libtiff/tif_dirinfo.c: moved pixar and copyright flags to
137 ensure everything is in order.
138
139<li> Integrated experimental OJPEG support from Scott Marovich of HP.
140
141<li> libtiff/tif_open.c: Seek back to zero after failed read,
142 before writing header.
143
144<li> libtiff/tiff.h, libtiff/tif_fax3.c: added check for __LP64__
145 when checking for 64 bit architectures as per bugzilla bug 67.
146<li> libtiff/tif_getimage.c: Use memmove() instead of TIFFmemcpy()
147 in TIFFReadRGBATile() to avoid issues in cases of overlapping
148 buffers. See Bug 69 in Bugzilla.
149<li> libtiff/tif_getimage.c: Don't complain for CMYK (separated)
150 images with more than four samples per pixel as per bug 73.
151
152<li> libtiff/tif_getimage.c: relax handling of contig case where
153there are extra samples that are supposed to be ignored as per bug 75. This
154should now work for 8bit greyscale or palletted images.
155
156<li> libtiff/tif_packbits.c: fixed memory overrun error as per bug 77.
157
158<li> libtiff/tif_getimage.c: Fixed problem with reading strips or
159tiles that don't start on a tile boundary. Fix contributed by
160Josep Vallverdu (from HP), and further described in bug 47.
161
162<li> libtif/tif_fax3.c: Removed #ifdef PURIFY logic, and modified to
163 always use the "safe" version, even if there is a very slight
164 cost in performance as per bug 54.
165<li> libtiff/tif_lzw.c: added dummy LZWSetupEncode() to report an
166 error about LZW not being available.
167
168<li> libtiff/tif_dir.c: propagate failure to initialize compression
169 back from TIFFSetField() as an error status, so applications can
170 detect failure.
171
172<li> libtiff/tif_lzw.c: Avoid MS VC++ 5.0 optimization bug as per bug 78.
173
174<li> libtiff/tif_dirwrite.c: added TIFFRewriteDirectory() function.
175Updated TIFFWriteDirectory man page to include TIFFRewriteDirectory.
176
177<li> libtiff/tiff.h: I have created COMPRESSION_CCITT_T4,
178 COMPRESSION_CCITT_T6, TIFFTAG_T4OPTIONS and TIFFTAG_T6OPTIONS aliases
179 in keeping with TIFF 6.0 standard in tiff.h as per bug 83.
180
181<li> Added PHOTOMETRIC_ITULAB as per bug 90.
182
183</UL>
184
185<P><HR WIDTH=65% ALIGN=left>
186
187<!-------------------------------------------------------------------------->
188
189<A NAME="tools"><B><FONT SIZE=+3>C</FONT>HANGES IN THE TOOLS:</B></A>
190
191<UL>
192<li> Brent Roman contributed updated tiffcp utility (and tiffcp.1)
193 with support for extracting subimages with the ,n syntax, and also
194 adding the -b bias removal flag.
195<li> tiff2ps.c/tiff2ps.1: Substantial changes to tiff2ps by
196 Bruce A. Mallett, including a faster encoder, fixes for level
197 2 PostScript, and support for the imagemask operator.
198<li> fax2ps.c: Helge (libtiff at oldach.net) submitted fix
199that corrects behaviour for non-Letter paper
200sizes. (Bug 35) It fixes two problems:
201<br>
202 Without scaling (-S) the fax is now centered on the page size specified
203 with -H and/or -W. Before, fax2ps was using an obscure and practially
204 useless algorithm to allocate the image relative to Letter sized paper
205 which sometime sled to useless whitespace on the paper, while at the
206 same time cutting of the faxes printable area at the opposite border.
207<br>
208
209 Second, scaling now preserves aspect ratio, which makes unusual faxes
210 (in particular short ones) print properly.
211
212<li> thumbnail.c: changed default output compression
213 to packbits from LZW since LZW isn't generally available.
214<li> tiff2rgba.c: added -n flag to avoid emitting alpha component. Also added
215a man page for tiff2rgba.
216
217<li> tiffcmp.c: Fixed multi samples per pixel support for ContigCompare
218as per bug 53.
219Updated bug section of tiffcmp.1 to note tiled file issues.
220
221<li> libtiff/tif_getimage.c: Fixed so that failure is properly
222 reported by gtTileContig, gtStripContig, gtTileSeparate and
223 gtStripSeparate as per bug 51.
224
225
226</UL>
227
228<P><HR WIDTH=65% ALIGN=left>
229
230<!--------------------------------------------------------------------------->
231
232<A NAME="lzwkit"><B><FONT SIZE=+3>C</FONT>HANGES IN THE LZW COMPRESSION KIT:</B></A>
233<UL>
234 <LI> Rewrote lzw patching process so that is required to enable full
235 LZW support is to drop the tif_lzw.c from the
236 libtiff-lzw-compression-kit over the one in the libtiff directory.
237
238 <LI> Some changes were made to make recovery from failure to
239 initialize the LZW compressor more graceful.
240
241 <LI> Note that as distributed libtiff support LZW decompression, but
242 not LZW compression.
243</UL>
244
245<!--------------------------------------------------------------------------->
246
247<A NAME="contrib"><B><FONT SIZE=+3>C</FONT>HANGES IN THE CONTRIB AREA:</B></A>
248<UL>
249<li> Fixed distribution to include contrib/addtiffo/tif_ovrcache.{c,h}.
250</UL>
251
252<A HREF="index.html"><IMG SRC="images/back.gif"></A> TIFF home page.<BR>
253
254<HR>
255
256Last updated $Date: 2004/11/26 14:37:20 $.
257
258</BODY>
259</HTML>