Код: Выделить всё
unsigned int PhotoMetric = 0, SamplesPerPixel = 1, BitsPerSample = 1;
TIFFGetField(Tiff, TIFFTAG_PHOTOMETRIC, &PhotoMetric);
TIFFGetField(Tiff, TIFFTAG_SAMPLESPERPIXEL, &SamplesPerPixel);
TIFFGetField(Tiff, TIFFTAG_BITSPERSAMPLE, &BitsPerSample);
if ((PhotoMetric == PHOTOMETRIC_MINISWHITE) || (PhotoMetric == PHOTOMETRIC_MINISBLACK) || (SamplesPerPixel == 1)) {
if (BitsPerSample == 1)
Type = PRESCRENED_TIFF_IMAGE;
else
Type = MONOCHROME_TIFF_IMAGE;
} else if (SamplesPerPixel == 4)
Type = CMYK_TIFF_IMAGE;
else
Type = OTHER_TIFF_IMAGE;
В Python мы используем PIL для анализа изображений TIFF. Некоторые изображения TIFF классифицируются в коде C как CMYK_TIFF_IMAGE, тогда как в Python они классифицируются либо как RGBA, либо как CMYK в соответствии с атрибутом Image.mode. Нам нужно, чтобы это было последовательно. Какие дополнительные проверки следует добавить в код C, чтобы отличить изображения CMYK от изображений RGBA?
Подробнее здесь: https://stackoverflow.com/questions/798 ... ba-or-cmyk
Мобильная версия