mirror of
https://invent.kde.org/frameworks/kimageformats.git
synced 2025-07-18 20:04:16 -04:00
JXL improvements
Highlights of the patch: - Supersede MR !249 - Added FP16 and FP32 images support thus preserving HDR values (read / write, required libjxl 0.9+). - Added Gray8 and Gray16 support (read / write). - Indexed images are saved as Gray8 when palette is gray scale. - Binary images are saved as Gray8 (does JXL natively support binary images?). - Simplified writing process by partially removing the use of additional buffers. - Added XMP metadata support by decoding/encoding Boxes. - Changed maximum image size in pixels in accordance with JXL feature level 5 (still limited to 256 megapixels). Compatibility: - Older versions of this plugin load FP images correctly as UINT16 (obviously losing HDR info). - HDR images saved with this patch are also loaded correctly by Gimp and Photoshop. - Grayscale images saved with this patch are also loaded correctly by Gimp and Photoshop. Compilation modifiers for cmake file: - `JXL_HDR_PRESERVATION_DISABLED`: disable the FP support (behaves like previous versions). - `JXL_DECODE_BOXES_DISABLED`: disable metadata reading (behaves like previous versions).
This commit is contained in:
10
README.md
10
README.md
@ -78,8 +78,8 @@ For example, native support for CMYK images is only available since Qt 6.8.
|
||||
|
||||
### HDR images
|
||||
|
||||
HDR images are supported via floating point image formats from EXR, HDR, JXR,
|
||||
PFM and PSD plugins.
|
||||
HDR images are supported via floating point image formats from EXR, HDR, JXL,
|
||||
JXR, PFM and PSD plugins.
|
||||
It is important to note that in the past these plugins stripped away HDR
|
||||
information, returning SDR images.
|
||||
|
||||
@ -116,7 +116,7 @@ plugin ('n/a' means no limit, i.e. the limit depends on the format encoding).
|
||||
- EXR: 300,000 x 300,000 pixels
|
||||
- HDR: n/a (large image)
|
||||
- HEIF: n/a
|
||||
- JXL: 65,535 x 65,535 pixels, in any case no larger than 256 megapixels
|
||||
- JXL: 262,144 x 262,144 pixels, in any case no larger than 256 megapixels
|
||||
- JXR: n/a, in any case no larger than 4 GB
|
||||
- PCX: 65,535 x 65,535 pixels
|
||||
- PFM: n/a (large image)
|
||||
@ -181,6 +181,10 @@ The following defines can be defined in cmake to modify the behavior of the plug
|
||||
**The current version of the plugin limits the image size to 256 megapixels
|
||||
according to feature level 5 of the JXL stream encoding.**
|
||||
|
||||
The following defines can be defined in cmake to modify the behavior of the plugin:
|
||||
- `JXL_HDR_PRESERVATION_DISABLED`: disable floating point images (both read and write) by converting them to UINT16 images. Any HDR data is lost. Note that FP images are always disabled when compiling with libJXL less than v0.9.
|
||||
- `JXL_DECODE_BOXES_DISABLED`: disable reading of metadata (e.g. XMP).
|
||||
|
||||
### The JXR plugin
|
||||
|
||||
**This plugin is disabled by default. It can be enabled with the
|
||||
|
Reference in New Issue
Block a user