AWARE SYSTEMS
TIFF and LibTiff Mail List Archive

Thread

2001.11.28 16:24 "where is tiffvers.h ?", by Frederic Delhoume
2001.11.28 16:51 "Re: where is tiffvers.h ?", by Frank Warmerdam
2001.11.28 17:15 "Re: where is tiffvers.h ?", by Frank Warmerdam
2001.12.10 17:00 "RE: [Fwd: [Fwd: Translation of Tiff]]", by Poysa, Kari
2001.12.10 14:18 "[Fwd: [Fwd: Translation of Tiff]]", by Harry Williams

2001.12.10 17:00 "RE: [Fwd: [Fwd: Translation of Tiff]]", by Poysa, Kari

The image data should start at hex 45E and have hex 2440 bytes. The field hex 111 (StripOffsets) contains the actual offset of the strip in this case because the image has just a single strip. Same goes for the field hex 117 (StripByteCounts). These fields (or any other field for that matter) contain an offset to a separate array of values only if the array does not fit into 4 bytes.

-----Original Message-----

From: Harry Williams [mailto:planesmart@teleteam.com] Sent: Monday, December 10, 2001 9:18 AM

To: Tiff
Subject: [Fwd: [Fwd: Translation of Tiff]]

Harry Williams wrote:

> Harry Williams wrote:
>
> > I am trying to translate this to a machine which is not supported by
TIFFLIB. In
> > the tiff file I do not understand where the image starts.
> >
> > > The first 2 bytes are 4949
> > > Next two are 2A00 which is translated to 002A means tiff.
> > > Next 4 bites is 0800 0000 translated to 00000008 this is the location
of the
> > > start of the IFD
> > >
> > > 00000008 is the offset so the location is the ninth byte and is 2
long. So at
> > > location 9 is
> > > 1400 this translates to Hex 0014 which shows there are 20 IFD entries.
> > > These are the IFD entries
> > > FE00 0400 0100 0000 0000 0000 is 00FE 0004 00000001 00000000 New
Subfile ype
> > > 0001 0300 0100 0000 AB04 0000 is 0100 0003 00000001 000004AB Image
Width
> > > 0101 0300 0100 0000 3402 0000 is 0101 0003 00000001 00000234 Image
Length
> > > 0201 0300 0100 0000 0100 0000 is 0102 0003 00000001 00000001 Bits per
sample
> > > 0301 0300 0100 0000 0400 0000 is 0103 0003 00000001 00000004
Compression
> > > 0601 0300 0100 0000 0000 0000 is 0106 0003 00000001 00000000
Photometric
> > > 0A01 0300 0100 0000 0100 0000 is 010A 0003 00000001 00000001 Fill
Order
> > > 0E01 0200 2D00 0000 0001 0000 is 010E 0002 0000002D 00000001 Image
Description
> > >
> > > 1101 0400 0100 0000 5E04 0000 is 0111 0004 00000001 0000045E Strip
Offset
> > > 1201 0300 0100 0000 0100 0000 is 0112 0003 00000001 00000001
Orientation
> > > 1501 0300 0100 0000 0100 0000 is 0115 0003 00000001 00000001 Samples
per
> > > pixel
> > > 1601 0400 0100 0000 3402 0000 is 0116 0004 00000001 00000234 Rows per
strip
> > > 1701 0400 0100 0000 4024 0000 is 0117 0004 00000001 00002440 Strip
Bytes
> > > Count
> > > 1801 0300 0100 0000 0000 0000 is 0118 0003 00000001 00000000 Min
Sample Value
> > >
> > > 1901 0300 0100 0000 0100 0000 is 0119 0003 00000001 00000001 Max
Sample Value
> > >
> > > 1A01 0500 0100 0000 2D01 0000 is 011A 0005 00000001 0000012D
Xresolution
> > > 1B01 0500 0100 0000 3501 0000 is 011B 0005 00000001 00000135
Yresolution
> > > 1C01 0300 0100 0000 0100 0000 is 011C 0003 00000001 00000001 Planar
Config
> > > 2501 0400 0100 0000 0000 0000 is 0125 0004 00000001 00000000
T6Option
> > > 2801 0300 0100 0000 0200 0000 is 0128 0003 00000001 00000002
Resolution
> > > Units
> > >
> > > That is the IFD description of the image I am sending.
> > >
> > > My problem now is where is the Image. The strip offset (0111) is 4
bytes long
> > > starting at offset
> > > 045E which is location is 045F. In 045f is 03 b0 36 64, reversed is 64
36 b0
> > > 03. This number is way out of the tiff image. So how do I read the
Strip
> > > Offset area and translate it to a bit row image?
> > >
> > > I hope this explains what I need a little better. Reading the Tiff
manual it
> > > just says this is the Offset1, and they continue.... but I cannot
find out
> > > how to translate the tiff file to a row image.
> >
> > Here is the stream of the tiff image. I cannot use the tools for tifllib
because
> > the machine does not support it yet.
> >
> >

> 49492A00080000001400FE00040001000000000000000001030001000000AB04000001010300 0100000034020000020103000100000001000000030103000100000004000000060103000100 0000000000000A01030001000000010000000E0102002D000000000100001101040001000000 5E04000012010300010000000100000015010300010000000100000016010400010000003402 0000170104000100000040240000180103000100000000000000190103000100000001000000 1A010500010000002D0100001B01050001000000350100001C01030001000000010000002501 040001000000000000002801030001000000020000000000000000004E43522C5041524D533D 322C5245414C5F4845494748543D313139352C5245414C5F4C454E4754483D35363400C80000 0001000000C80000000100000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000!
 00!
0000000000000000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000
000
> >
>
0000000000000000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000000000000000

000000000000000000000000000000000000000000000000000000000000000000006E6E0A00 5E0000009E240000010001004A00000004000000000000000000000000000000000000000000 00000000000000000000000000004024000001000100AB04AB04340234020100000000000100 010000000100C800C800020000009703B0366436AC8582194E40F06AB22F10A3909C44B21308 47216087720E3F27B5423B212C892163710AE42D906C820A2081C410D6B21072193D9030FE22 2222222224665D9C10CC8E086C43319C10E0A78CEB0913647CE085C330B86B11F23842382180 E5C298087053D9D0530060C0430060D873629C14E0870141C19745389C444444444444444444 44F2111111111111111E3AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96AD4CD4086B!

 7C!

B714060E03078306034CE06729C0824C21134619A23C8DA2148850A4E881445C397D61841FED 34D53040CE30844441940A4603402061064B838424393228C218410620831C418911C20FFFFA 06BDC1841E083835B5B4C2D27C30830834781AC3B488BC3756D0A0836EFF70B2CB93BF0D0610 304191759A084C08820724C524099082140408878A227B23429384C83042184270E1FA49BED3 54EF54826B0E9BBA044E204106DC36A1B6130991241D69FBF5BBBE1BDFDD04DA0830F7BB69AA 963FA7FBFBFA4EEF6D3741A49BF5FD042F7FEEFCD3FFAF44DF7A5D7B726EDBF4B90E1FEFD69F FBE673EDF5BAB7F5A7E977FED57DFEDEBAAD2D2E9FD5E487FA0BBFFF5FFDFAEBFEEB7D55D37E 97256FFBDFF5F06D7F4DBD6FFAABEDFA5C27FD5AA5A8FB21829A8AEAB4297A55FFA58B7FB7BE C2F

> >
>

C868156BBDA4BB7692DBB7E96FFED563F64140D0D2B90475FC42DD5BF09FFE9FAFC30DFE217F 5DF7EBFFF970FF50DF4F059D031FA5EFC5E759557DAE948F96E0DC8F2B6C891D07F211CF01ED EDF7DEDFDE9BF6FC8B02E93DAA08187FF0421B55FE42BB5B4AD7DAEBB46966B79AE20C3ED217 41BCD617F61C6EDF4E6420176D5B4BBF75DAFF9B81FFEF6BF7BDBAA6D62A2BDA4EBD7FF87FBD B6DAD2DB55BBA6F69AFF15FAEBA6FE88482AFFEDFFEC75786835D8DF7FDF7FB93D3FFFE8968F 7DB10C2060BD562BFAA7E295FBFA5DD7FB88F7FDD7DFF7F39DEDFFB6EFB7E9D5555534FD7EFB 5D2D52D5FBFD7FFC3AFBFB6F6FEBBF56FBF85C2E161A5697F4DAB6104AABEFB7E9C261530AA9 430A9A777AB61586B6125BB7FEF46B0D5301A65C34A4DC510819C1061030836363618411480D 610610613C2683F4FF741A540C1065C346C86878629040881180CB810E66040221A1B8DEF555 4EC2F5DA0C2DA85FBDAF11111127148DA23A274CA1CA1CB1C23A67B0D34184D0304451064584 1970A9A6BE2222222222218422409088888888F11E5AB31384C8DB3713E608C32E3E9A69ADA7 F9799DF2913FCEF39F48375D874BEBD62160FE297AB7CA8647B4AD2FE1C7FE547F4E52791FC7 4974BFB1C7EDAFD7A6A9E29FF888888F4184FA10FA6420297FFB3C170561B0A3931C2E5A634!

 A4!

2644444447825BFFFA5FD7F95C557AF54AFEB5FD4AE968EE68DE55A2F9867607AD64C23D9B66 E3C8BB2FF2BDC915C1B36CC330C1065F3045F399ECE66E3718C134451C8DC8A388832AC67237 9E4671C32405319D08BB36CF236FF0AA9A088FAA7F3B2944B704E934D3B4677A33FED7F47861 8530F9FCDCAFD3D0223C1971554D34D34BD565469BA9DEDF0AA10443D677A3C095147874F15F FDDFED537D0614F7BE969DA8A29F9F8EF4A77F0D43871D5D69BFA99E91E2231041746A0BF61E 2D618D7FE8111FFB1FFFDB5FBB1DAE1D763A51F85D3EFFD2A4B682550838A83B8A61FFDAFDEC 1F1523723BFFBF07D250C550223E176BDFFFFA55A0D42092A41C4102647070C3BFE2D0B82043 6FE157E9EA986FB59DE924BA4765818F63FFFAAA4BC2A544E6D1E13B22C4FA0F3BBFFF706F9E 305

> >

> 3D3AFB7837F42D84A30F8F985045D57A5FAC88F91BBD25A8207FD150088FF6FBFF38E67CF1DC CFFFFFE78E923448FFA79B4B0A0FAF8E3E3F9DC4A92A4D6B5A42EC4111C769471EDF2438F429 BF8AF6E46E4778A49B88AB238CBFA33B58A40CF65C9445A6B6BFD6FBDD2A5DD351B4D3EFC8C7 4D3045D7BBBD7FD7C8C7BBFD3D55D5645E116C6BA5AA554FFAE2222182111111111111111111 11111111C44444445209BAFD2A34D57F75A71AD4D6423D2F09AD53A5D258A4A17959F4925495 7EFD7D3EBFAFD7C354A92661E9FF54A67A492DA86FFC89E3A238F49221AAD6ABA7A6F5CB2AC6 A98A0ABDE66117AD755DBE8A84A9D247920AFA59804A4925A4BD5BD4880A9026A926925F4245 ABFE16AA9DF086898ECAC74975F89101D2AE35B49B834A6B693AAA84925E54833A5AAD75BB14 12340A5944AAD2A4924AB9040D9FD3237FAE1E8307AB6BD25AF08827CDEBA58D24B560D04906 16BC9F5492492E945525AFEBD689586E974174975E55284BF4BA5FE820C3F75EB54ABE082AE9 6B54B4A8240C3D7D74BD2FA5EBAE12FF49D2AEA9255A4BA1AFA55A4919FA5820830D25D525A0 8B1D2AF912F496AB0C2FD71083F4FF5492E9740B5E2AA212DAAB0875B49743E92D020BEDA56A B4A98555F4AD24B5185D75B55AE2BAA4B55E9425AE950304D314BAFA4AC2AD283FB82591D08!

 D3!

4953492547562BA5DF8A4D843EA44B5B55A8AD2AB0B1A484D61C13A42D256ABB50A9743DAAAA D0B434BAA55096B8B54A694820EB3A223C6CC525E3D2422908D6B41FFE92768B3950A7A3019D 2D2492C276A5BBCFC6DEBFAC9C6309D6902E824925497DBBDD2D2F5A7975F0447FBF0969557B F4BE46AF4925AA57FFBD5255D2DEBFC7CE078A5F83FF4BBA50A925B5FACF9FE976131F2C8328 AABE460D42A569AE9B5BE9F5D086B84C44446BA487A2DFB62BD7EABD396E38CB9976478C3238 6D11E911C98E40F0E3921C98E40F06690CD25888888888888AF5937177C7617C7FCB206ABA4A 5910BAFF2DCA4FA2DC387841A4ABC2FAF44EEB5F0827D51DFD05AEABD05B54774ABE976AA957 497ED7E97A4B5F54BE96BAADA4B4BCB77FA7CD5CEFFE0AA946B4A925E0956B2AFE97EB0904D2 A0D

> >

> 7A5F6A9749D7D76184816B458FD2492E7445D360926DAA5AFFFD83054D7AD7492E105EC5226E CEC5BD256E92D7A118641DE5C574D7AA5FAE2191F284E4CDAEA96AA92928657AD721E3A56438 2768CFA4933E0D3D05083E8223AD270990DA9AAEAD55D90512554A7E54CA5DFE92D426113777 38EC8DCBE4FD60CC39124954A916F0994F27D6D6168B1E8B7A0A976ED2D55710E6AD7533D2A4 90566633A3EC43AAD2D2B27926D1DEB6DAF5A55499533A49209A59DAD2205054C22C71841F14 87AAAF4153DD07BAD24ABC29068275D2697DA22BB4420D2704F9D2F4952A54B5D5BD2FA4B4B0 99ED131DE92AA4BA0E0B41A4E89F784BEB496A952EB6EB453D249755541394E96920898EA96C 10693A6A0CBCA0447DBFD57A5E97EBBA58D69748B1E48D5505774A920B5AA41A4A88C7A8A57F 75D52E924BEAB6D2F55D6BD20A97933D70B5D2DAA5A08FBAA6EF8329733ABA42BA55EA96B4B7 4F4952A30F492ED323AA49249249691372DDD6937AA5F53B1E338ED466E3533C49F4A4EBD2D2 5ADBA539528412D24B41055A09F8B550A82FAEB0E9525F4937DC81086F379CC1108E19F0847C F65C43323629B14D888894683BD692497FA5498AD552FFD0A5458FAF45BBE92E921EB16B4174 BFD940477A7E0C12343060BE7B0822DDC98E1CF6E799ADA35B9D489BEA2B58AD7ADF097A5A4!

 92!

4BA0A92F6DB8899E8255FC54258A4957D20DEDA4D24DB5F4309B820FBD3BD37AFD2D25D2A494 34216152AA7A4AB50975B6824812AABBE92D24BE48C25BDB7F4FF5A4FFB769693F5AA4A9416B 5A515A15F4B4B4ABABE812A5AD47D7A4BD8AD2477E96BFEBBFFF6BDD91D2BD74926952A494B1 C2548FA555492686905EC3BAA4AAB754B4BF8763F62B6BE2E44EDC57C8AE2BE20FD504A904BD 2483A8304C4C3A4F5AA497F562C125A54B6EAB492FA682EFFF9E35FFCF3FCCE125A84B4975AD 253375BFAA4965D610554C5452F861912351AD24BC22EA6F1B5DFE0F38759F1FD4F8FE86ED20 B14174952508B77B0AAEB42AA3D70A1A4AB210F061841AAA55F05EA61EBFFAFD6FFBBE972C7D A4152092E969112D26D214AD51C7D2A5A4A823B3885CA97FB083AE952ED25C206FED2EBDB5FD 2FD

> > B5D2E1A1D0449D5452AAAE95784B48254A170A182497D7963B44877492D7C45D76F6C2F6F23A 34BE2A458EC57EC48489986853FAA49714C5256A082F5B8AA08262ABBAF0DA040DAE92497243 F7AD885D5306C57C2F76138BB0988549F495D34969256924

> >
> > My question is what is the position for the first part of the image,
then next I
> > will probably will have to translate the compression.
> >
> > Thanks
> > Harry
> >
> > >
> > >