...
1
2
3
4
5 package tiff
6
7
8
9
10
11
12
13
14
15
16
17
18 const (
19 leHeader = "II\x2A\x00"
20 beHeader = "MM\x00\x2A"
21
22 ifdLen = 12
23 )
24
25
26 const (
27 dtByte = 1
28 dtASCII = 2
29 dtShort = 3
30 dtLong = 4
31 dtRational = 5
32 )
33
34
35 var lengths = [...]uint32{0, 1, 1, 2, 4, 8}
36
37
38 const (
39 tImageWidth = 256
40 tImageLength = 257
41 tBitsPerSample = 258
42 tCompression = 259
43 tPhotometricInterpretation = 262
44
45 tFillOrder = 266
46
47 tStripOffsets = 273
48 tSamplesPerPixel = 277
49 tRowsPerStrip = 278
50 tStripByteCounts = 279
51
52 tT4Options = 292
53 tT6Options = 293
54
55 tTileWidth = 322
56 tTileLength = 323
57 tTileOffsets = 324
58 tTileByteCounts = 325
59
60 tXResolution = 282
61 tYResolution = 283
62 tResolutionUnit = 296
63
64 tPredictor = 317
65 tColorMap = 320
66 tExtraSamples = 338
67 tSampleFormat = 339
68 )
69
70
71 const (
72 cNone = 1
73 cCCITT = 2
74 cG3 = 3
75 cG4 = 4
76 cLZW = 5
77 cJPEGOld = 6
78 cJPEG = 7
79 cDeflate = 8
80 cPackBits = 32773
81 cDeflateOld = 32946
82 )
83
84
85 const (
86 pWhiteIsZero = 0
87 pBlackIsZero = 1
88 pRGB = 2
89 pPaletted = 3
90 pTransMask = 4
91 pCMYK = 5
92 pYCbCr = 6
93 pCIELab = 8
94 )
95
96
97 const (
98 prNone = 1
99 prHorizontal = 2
100 )
101
102
103 const (
104 resNone = 1
105 resPerInch = 2
106 resPerCM = 3
107 )
108
109
110 type imageMode int
111
112 const (
113 mBilevel imageMode = iota
114 mPaletted
115 mGray
116 mGrayInvert
117 mRGB
118 mRGBA
119 mNRGBA
120 mCMYK
121 )
122
123
124 type CompressionType int
125
126
127 const (
128 Uncompressed CompressionType = iota
129 Deflate
130 LZW
131 CCITTGroup3
132 CCITTGroup4
133 )
134
135
136
137 func (c CompressionType) specValue() uint32 {
138 switch c {
139 case LZW:
140 return cLZW
141 case Deflate:
142 return cDeflate
143 case CCITTGroup3:
144 return cG3
145 case CCITTGroup4:
146 return cG4
147 }
148 return cNone
149 }
150
View as plain text