new OrderableRandomAccessFile( fileName, "rw" );
try {
if ( file.readShort() == TIFF_LITTLE_ENDIAN )
file.order( ByteOrder.LITTLE_ENDIAN );
file.seek( TIFF_HEADER_SIZE - TIFF_INT_SIZE );
int ifdOffset = file.readInt();
while ( ifdOffset > 0 ) {
file.seek( ifdOffset );
final int entryCount = file.readUnsignedShort();
for ( int entry = 0; entry < entryCount; ++entry ) {
final int entryOffset =