125{
126 int minargs = 1;
127 if (argc <= minargs) {
129 return -1;
130 }
131
133 if (!SrcImg.
Open(argv[1])) {
134 printf("\nFile [%s] cannot be opened.\n", argv[1]);
135 return false;
136 }
137
138 printf("-------------------->Tiff Image Dump<---------------------------\n");
139 printf("Filename: %s\n", argv[1]);
140 printf("Size: (%d x %d) pixels, (%.2lf\" x %.2lf\")\n",
145 printf(
"SamplesPerPixel: %d\n", SrcImg.
GetSamples());
147 if (nExtra)
148 printf("ExtraSamples: %d\n", nExtra);
151 printf(
"Resolution: (%lf x %lf) pixels per/inch\n", SrcImg.
GetXRes(), SrcImg.
GetYRes());
153
154 unsigned char *pProfMem = nullptr;
155 unsigned int nLen = 0;
157 printf("Profile: Embedded\n");
158
159
160 if (argc > 2 && pProfMem && nLen > 0) {
161 FILE *fp = fopen(argv[2], "wb");
162 if (fp) {
163 fwrite(pProfMem, 1, nLen, fp);
164 fclose(fp);
165 printf("ICC profile saved to: %s\n", argv[2]);
166 } else {
167 fprintf(stderr, "Failed to write ICC profile to %s\n", argv[2]);
168 }
169 }
170
171
173 if (pProfile) {
174 icHeader *pHdr = &pProfile->m_Header;
176
184 printf(" Spectral Range: start=%.1fnm, end=%.1fnm, steps=%d\n",
188 }
190 printf(" BiSpectral Range: start=%.1fnm, end=%.1fnm, steps=%d\n",
194 }
195 }
196
198 if (pDesc) {
201 printf(
" Description: %s\n", pText->
GetText());
202 }
206 CIccMultiLocalizedUnicode::iterator text = pStrs->
m_Strings->begin();
208 std::string line;
209 text->GetText(line);
210 printf(" Description: %s\n", line.c_str());
211 }
212 }
213 }
214 }
215 }
216 } else {
217 printf("Profile: None\n");
218 }
219
221 return 0;
222}
icSpectralRange spectralRange
Definition icProfileHeader.h:2063
icColorSpaceSignature colorSpace
Definition icProfileHeader.h:2048
icUInt16Number steps
Definition icProfileHeader.h:1469
icSpectralColorSignature spectralPCS
Definition icProfileHeader.h:2062
icFloat16Number start
Definition icProfileHeader.h:1467
@ icSigMultiLocalizedUnicodeType
Definition icProfileHeader.h:549
@ icSigTextDescriptionType
Definition icProfileHeader.h:566
icFloat16Number end
Definition icProfileHeader.h:1468
@ icSigProfileDescriptionTag
Definition icProfileHeader.h:452
icSpectralRange biSpectralRange
Definition icProfileHeader.h:2064
icColorSpaceSignature pcs
Definition icProfileHeader.h:2049
Definition icProfileHeader.h:2043
class ICCPROFLIB_API CIccProfile
Definition IccPcc.h:80
CIccProfile * OpenIccProfile(const icChar *szFilename, bool bUseSubProfile)
Definition IccProfile.cpp:3387
ICCPROFLIB_API icFloat32Number icF16toF(icFloat16Number num)
Definition IccUtil.cpp:629
void Usage()
Definition iccTiffDump.cpp:116
const char * GetId(unsigned long nId, IdList *pIdList)
Definition iccTiffDump.cpp:110
IdList planar_types[]
Definition iccTiffDump.cpp:86
IdList photo_types[]
Definition iccTiffDump.cpp:93
IdList compression_types[]
Definition iccTiffDump.cpp:101
const icChar * GetSpectralColorSigName(icSpectralColorSignature sig)
Definition IccUtil.cpp:1769
const icChar * GetColorSpaceSigName(icColorSpaceSignature sig)
Definition IccUtil.cpp:1640
Definition IccTagBasic.h:108
virtual icTagTypeSignature GetType() const
Definition IccTagBasic.h:131
Definition IccTagBasic.h:481
const icChar * GetText() const
Definition IccTagBasic.h:497
Definition IccTagBasic.h:1229
CIccMultiLocalizedUnicode * m_Strings
Definition IccTagBasic.h:1260
float GetYRes()
Definition TiffImg.h:110
bool Open(const char *szFname)
Definition TiffImg.cpp:228
void Close()
Definition TiffImg.cpp:104
unsigned int GetBitsPerSample()
Definition TiffImg.h:103
unsigned int GetWidth()
Definition TiffImg.h:99
unsigned int GetPlanar()
Definition TiffImg.h:108
double GetHeightIn()
Definition TiffImg.h:102
double GetWidthIn()
Definition TiffImg.h:101
float GetXRes()
Definition TiffImg.h:109
unsigned int GetPhoto()
Definition TiffImg.cpp:391
unsigned int GetSamples()
Definition TiffImg.h:105
unsigned int GetExtraSamples()
Definition TiffImg.h:106
unsigned int GetHeight()
Definition TiffImg.h:100
unsigned int GetBytesPerLine()
Definition TiffImg.h:112
bool GetIccProfile(unsigned char *&pProfile, unsigned int &nLen)
Definition TiffImg.cpp:410
unsigned int GetCompress()
Definition TiffImg.h:107