Better support of TIFF's SubFileType tag and alpha channel
Fix issue #4868
This commit is contained in:
parent
81dd3dc3d9
commit
c5ad03c9cc
@ -704,7 +704,7 @@ int ImageIO::getTIFFSampleFormat (Glib::ustring fname, IIOSampleFormat &sFormat,
|
|||||||
sFormat = IIOSF_UNSIGNED_SHORT;
|
sFormat = IIOSF_UNSIGNED_SHORT;
|
||||||
return IMIO_SUCCESS;
|
return IMIO_SUCCESS;
|
||||||
}
|
}
|
||||||
} else if (samplesperpixel == 3 && sampleformat == SAMPLEFORMAT_IEEEFP) {
|
} else if ((samplesperpixel == 3 || samplesperpixel == 4) && sampleformat == SAMPLEFORMAT_IEEEFP) {
|
||||||
if (bitspersample==16) {
|
if (bitspersample==16) {
|
||||||
sFormat = IIOSF_FLOAT16;
|
sFormat = IIOSF_FLOAT16;
|
||||||
return IMIO_SUCCESS;
|
return IMIO_SUCCESS;
|
||||||
@ -718,7 +718,7 @@ int ImageIO::getTIFFSampleFormat (Glib::ustring fname, IIOSampleFormat &sFormat,
|
|||||||
return IMIO_SUCCESS;
|
return IMIO_SUCCESS;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (samplesperpixel == 3 && photometric == PHOTOMETRIC_LOGLUV) {
|
} else if ((samplesperpixel == 3 || samplesperpixel == 4) && photometric == PHOTOMETRIC_LOGLUV) {
|
||||||
if (compression == COMPRESSION_SGILOG24) {
|
if (compression == COMPRESSION_SGILOG24) {
|
||||||
sFormat = IIOSF_LOGLUV24;
|
sFormat = IIOSF_LOGLUV24;
|
||||||
return IMIO_SUCCESS;
|
return IMIO_SUCCESS;
|
||||||
|
@ -3043,7 +3043,7 @@ void ExifManager::parse (bool isRaw, bool skipIgnored)
|
|||||||
if (!sftTagList.empty()) {
|
if (!sftTagList.empty()) {
|
||||||
for (auto sft : sftTagList) {
|
for (auto sft : sftTagList) {
|
||||||
int sftVal = sft->toInt();
|
int sftVal = sft->toInt();
|
||||||
if (sftVal == (isRaw ? 0 : 2)) {
|
if (sftVal == 0 || (!isRaw && sftVal == 2)) {
|
||||||
frames.push_back(sft->getParent());
|
frames.push_back(sft->getParent());
|
||||||
frameRootDetected = true;
|
frameRootDetected = true;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user