diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-06-21 16:52:41 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-08-23 11:54:53 +0000 |
commit | 2842212e88afb200a0fcfda7d306c4e8eee26407 (patch) | |
tree | 8d4429850d803f6af7be7312dc1f9d91dffaedc0 /tests | |
parent | 6a039e4e77cef7d590c973c27c03a4576d6f5362 (diff) |
Add RGBA64 format support to TIFF plugin
TIFF is one of the primary formats for HDR images.
Change-Id: I5310b5c9a625fd3e759e5120be6ba547c633c81c
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/tiff/tst_qtiff.cpp | 17 | ||||
-rw-r--r-- | tests/shared/images/tiff.qrc | 1 | ||||
-rw-r--r-- | tests/shared/images/tiff/16bpc.tiff | bin | 0 -> 21414 bytes |
3 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/tiff/tst_qtiff.cpp b/tests/auto/tiff/tst_qtiff.cpp index 1a96ab3..9c815d5 100644 --- a/tests/auto/tiff/tst_qtiff.cpp +++ b/tests/auto/tiff/tst_qtiff.cpp @@ -84,6 +84,8 @@ private slots: void tiled_data(); void tiled(); + void readRgba64(); + private: QString prefix; }; @@ -165,6 +167,7 @@ void tst_qtiff::readImage_data() QTest::newRow("tiled_mono") << QString("tiled_mono.tiff") << QSize(64, 64); QTest::newRow("tiled_oddsize_grayscale") << QString("tiled_oddsize_grayscale.tiff") << QSize(59, 71); QTest::newRow("tiled_oddsize_mono") << QString("tiled_oddsize_mono.tiff") << QSize(59, 71); + QTest::newRow("16bpc") << QString("16bpc.tiff") << QSize(64, 46); } void tst_qtiff::readImage() @@ -384,6 +387,9 @@ void tst_qtiff::readWriteNonDestructive_data() QTest::newRow("tiff argb32pm") << QImage::Format_ARGB32_Premultiplied << QImage::Format_ARGB32_Premultiplied << QImageIOHandler::TransformationRotate90; QTest::newRow("tiff rgb32") << QImage::Format_RGB32 << QImage::Format_RGB32 << QImageIOHandler::TransformationRotate270; QTest::newRow("tiff grayscale") << QImage::Format_Grayscale8 << QImage::Format_Grayscale8 << QImageIOHandler::TransformationFlip; + QTest::newRow("tiff rgb64") << QImage::Format_RGBX64 << QImage::Format_RGBX64 << QImageIOHandler::TransformationNone; + QTest::newRow("tiff rgba64") << QImage::Format_RGBA64 << QImage::Format_RGBA64 << QImageIOHandler::TransformationRotate90; + QTest::newRow("tiff rgba64pm") << QImage::Format_RGBA64_Premultiplied << QImage::Format_RGBA64_Premultiplied << QImageIOHandler::TransformationNone; } void tst_qtiff::readWriteNonDestructive() @@ -592,5 +598,16 @@ void tst_qtiff::tiled() QCOMPARE(expectedImage, tiledImage); } +void tst_qtiff::readRgba64() +{ + QString path = prefix + QString("16bpc.tiff"); + QImageReader reader(path); + QVERIFY(reader.canRead()); + QCOMPARE(reader.imageFormat(), QImage::Format_RGBX64); + QImage image = reader.read(); + QVERIFY(!image.isNull()); + QCOMPARE(image.format(), QImage::Format_RGBX64); +} + QTEST_MAIN(tst_qtiff) #include "tst_qtiff.moc" diff --git a/tests/shared/images/tiff.qrc b/tests/shared/images/tiff.qrc index 19675ba..91bbf93 100644 --- a/tests/shared/images/tiff.qrc +++ b/tests/shared/images/tiff.qrc @@ -1,5 +1,6 @@ <RCC> <qresource prefix="/"> + <file>tiff/16bpc.tiff</file> <file>tiff/corrupt-data.tif</file> <file>tiff/grayscale-ref.tif</file> <file>tiff/grayscale.tif</file> diff --git a/tests/shared/images/tiff/16bpc.tiff b/tests/shared/images/tiff/16bpc.tiff Binary files differnew file mode 100644 index 0000000..b1ecf26 --- /dev/null +++ b/tests/shared/images/tiff/16bpc.tiff |