exr: write support and more

- Added support for writing EXR files
- Large image support (tested with 32GiB 16-bit image)
- OpenEXR multithreaded read/write support through the use of line blocks
- Build option to enable conversion to sRGB when read (disabled by default)
- Multi-view image reading support
- Options support: Size, ImageFormat, Quality, CompressRatio
- Metadata write/read support via EXR attributes

The plugin is now quite complete. It should also work on KF5 (not tested): if there is the will to include this MR also on KF5, let me know and I will do all the necessary tests.
This commit is contained in:
Mirco Miranda
2023-09-17 08:07:47 +00:00
committed by Albert Astals Cid
parent 6a51407556
commit 7899c27a80
9 changed files with 793 additions and 93 deletions

View File

@ -41,7 +41,7 @@ endif()
##################################
if(OpenEXR_FOUND)
kimageformats_add_plugin(kimg_exr SOURCES exr.cpp)
kimageformats_add_plugin(kimg_exr SOURCES exr.cpp scanlineconverter.cpp)
if(TARGET OpenEXR::OpenEXR)
target_link_libraries(kimg_exr PRIVATE OpenEXR::OpenEXR)
else()