mirror of
https://invent.kde.org/frameworks/kimageformats.git
synced 2026-02-19 07:03:01 -05:00
Full range HDR support
EXR, HDR, JXR and PFM formats support High Dynamic Range images (FP values grater than 1).
In summary, here is the list of changes:
EXR, HDR, JXR and PFM: When working with FP formats, the clamp between 0 and 1 is no longer done.
EXR: Removed old SDR code and conversions. Due to the lack of a QImage Gray FP format, Gray images are output as RGB FP (recently added code for Qt 6.8 has been removed).
PFM: Due to the lack of a QImage Gray FP format, Gray images are output as RGB FP.
HDR: Added rotation and exposure support.
With this patch, EXR, JXR, HDR, PFM behave like Qt's TIFF plugin when working with FP images.
This commit is contained in:
committed by
Albert Astals Cid
parent
4c0f49295b
commit
f5a6de7280
47
autotests/read/hdr/orientation1.hdr
Normal file
47
autotests/read/hdr/orientation1.hdr
Normal file
File diff suppressed because one or more lines are too long
5
autotests/read/hdr/orientation1.hdr.json
Normal file
5
autotests/read/hdr/orientation1.hdr.json
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
{
|
||||
"fileName" : "orientation_all.png"
|
||||
}
|
||||
]
|
||||
47
autotests/read/hdr/orientation2.hdr
Normal file
47
autotests/read/hdr/orientation2.hdr
Normal file
File diff suppressed because one or more lines are too long
5
autotests/read/hdr/orientation2.hdr.json
Normal file
5
autotests/read/hdr/orientation2.hdr.json
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
{
|
||||
"fileName" : "orientation_all.png"
|
||||
}
|
||||
]
|
||||
47
autotests/read/hdr/orientation3.hdr
Normal file
47
autotests/read/hdr/orientation3.hdr
Normal file
File diff suppressed because one or more lines are too long
5
autotests/read/hdr/orientation3.hdr.json
Normal file
5
autotests/read/hdr/orientation3.hdr.json
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
{
|
||||
"fileName" : "orientation_all.png"
|
||||
}
|
||||
]
|
||||
47
autotests/read/hdr/orientation4.hdr
Normal file
47
autotests/read/hdr/orientation4.hdr
Normal file
File diff suppressed because one or more lines are too long
5
autotests/read/hdr/orientation4.hdr.json
Normal file
5
autotests/read/hdr/orientation4.hdr.json
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
{
|
||||
"fileName" : "orientation_all.png"
|
||||
}
|
||||
]
|
||||
47
autotests/read/hdr/orientation5.hdr
Normal file
47
autotests/read/hdr/orientation5.hdr
Normal file
File diff suppressed because one or more lines are too long
5
autotests/read/hdr/orientation5.hdr.json
Normal file
5
autotests/read/hdr/orientation5.hdr.json
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
{
|
||||
"fileName" : "orientation_all.png"
|
||||
}
|
||||
]
|
||||
47
autotests/read/hdr/orientation6.hdr
Normal file
47
autotests/read/hdr/orientation6.hdr
Normal file
File diff suppressed because one or more lines are too long
5
autotests/read/hdr/orientation6.hdr.json
Normal file
5
autotests/read/hdr/orientation6.hdr.json
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
{
|
||||
"fileName" : "orientation_all.png"
|
||||
}
|
||||
]
|
||||
47
autotests/read/hdr/orientation7.hdr
Normal file
47
autotests/read/hdr/orientation7.hdr
Normal file
File diff suppressed because one or more lines are too long
5
autotests/read/hdr/orientation7.hdr.json
Normal file
5
autotests/read/hdr/orientation7.hdr.json
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
{
|
||||
"fileName" : "orientation_all.png"
|
||||
}
|
||||
]
|
||||
47
autotests/read/hdr/orientation8.hdr
Normal file
47
autotests/read/hdr/orientation8.hdr
Normal file
File diff suppressed because one or more lines are too long
5
autotests/read/hdr/orientation8.hdr.json
Normal file
5
autotests/read/hdr/orientation8.hdr.json
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
{
|
||||
"fileName" : "orientation_all.png"
|
||||
}
|
||||
]
|
||||
BIN
autotests/read/hdr/orientation_all.png
Normal file
BIN
autotests/read/hdr/orientation_all.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 32 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 7.4 KiB After Width: | Height: | Size: 17 KiB |
@ -177,7 +177,8 @@ public:
|
||||
{
|
||||
bool ok = true;
|
||||
if (!m_size.isEmpty()) {
|
||||
ok = ok && (m_size == image.size());
|
||||
// Size option return the size without transformation (tested with Qt TIFF plugin).
|
||||
ok = ok && (m_size == image.size() || m_size == image.size().transposed());
|
||||
}
|
||||
if (m_format != QImage::Format_Invalid) {
|
||||
ok = ok && (m_format == image.format());
|
||||
|
||||
Reference in New Issue
Block a user