AWARE [SYSTEMS] Imaging expertise for the Delphi developer
AWare Systems, Imaging expertise for the Delphi developer, Home TIFF and LibTiff Mailing List Archive

LibTiff Mailing List

TIFF and LibTiff Mailing List Archive
April 2004

Previous Thread
Next Thread

Previous by Thread
Next by Thread

Previous by Date
Next by Date


The TIFF Mailing List Homepage
This list is run by Frank Warmerdam
Archive maintained by AWare Systems

Valid HTML 4.01!


2004.04.22 06:15 "Large Tiff and roadsigns", by Rob Tillaart
2004.04.22 18:17 "Re: Large Tiff and roadsigns", by Chris Cox

2004.04.22 06:15 "Large Tiff and roadsigns", by Rob Tillaart


Yesterday when I drove home from work I was triggered bij a roadsign
indicating the distance to the next cities. Every few kilometers there
was a new roadsign. Suddenly I was aware that these are pointers or
offsets. These pointers reference to a location with respect to the
current location. Some pointed forward others backward (other side of
the road :) and some pointed sideward.

What could this mean for large TIFF files?

Currently all offsets in a TIFF file are relative to the start of the
file. If we just change this with offsets relative to the current
position it is possible to handle multipage tiff files of arbitrary size
(individual images smaller than 2GB). The type of offset could be 32 bit
signed int an existing type. The only thing needed to do is an
indication that offsets are relative iso absolute. 

header >IFD -> 	IFD ->	IFD -> 	IFD -> 	IFD-> 	IFD ->	IFD -> 	IFD -> 	IFD
0GB	1GB	2GB	3GB	4 GB	5GB	6GB	7GB	8GB	9GB

(GB= gigabyte absolute offset from start of file) 

In this oversimplified example the offset to the next IFD is just 1 GB

However if the images themselves are larger than 2GB the pointers to the
next IFD are not long 
enough and there is still a need for a 64 bit offset type.

The use of signed int's is chosen as the IFD is often after the image

This relative offset concept certainly has drawbacks I overlook right
now, but it has some nice properties too so lets add it to the

rob tillaart