d787c12727
RGB/SGI writer: fix alpha detection and image limit size
2023-05-10 11:43:21 +00:00
c9fec5e408
TGA writer: fix alpha detection and performance improvements
2023-05-10 11:43:21 +00:00
e60dfd4968
pcx: multiple fixes
...
- Fix wrong RGB channel order if image format is other than (A)RGB32
- Write right resolution
- Set right resolution on image load
- Return false on write error
- Save images with depth greater than 24-bits
2023-05-10 11:43:04 +00:00
f5a9dd46d2
Removed unused jxl.desktop file
2023-04-22 09:31:30 +02:00
41f0411b62
PSD: fix test failure on some systems and fix wrong check on alpha conversion
...
- Fix PSD alpha conversion
- Fix autoread test to use also TIFF images
2023-04-18 22:14:41 +00:00
e1a3751936
CMake: make use of qt_add_plugin for plugins
...
Currently it will only produce shared library binaries as plugin.
This could make building static imageformats plugin much easier.
Related: https://invent.kde.org/frameworks/kimageformats/-/issues/4
2023-03-30 03:42:41 +00:00
402dfb5de3
psd: Fix alpha blending
...
PSD files are saved with as alpha premultiplied. The problem is that alpha refers to white instead of black so it requires transformation formulas. Then, to conver PS premultiplied to QImage premultiplied you have to use the following formula:
* V = Alpha + Vps - Max (C, M, Y, K, R, G, B, Gray, L\* components)
* V = Vps + (Alpha - Max + 1) / 2 (a\*, b\* components)
Where Max is the maximum value depending on the image depth and Vps is the valued read from the file.
2023-03-29 17:55:55 +00:00
a3f7c03b61
heif: Add format read-write support in README
2023-02-15 08:36:24 +00:00
20cec27ae8
Fix writing TGA alpha depth flag
...
Correctly write alpha channel depth as 8-bit.
2023-02-01 16:26:31 -06:00
d34c1668aa
Bump Qt deprecation level to 6.4
2023-02-01 17:16:45 +01:00
560d0483ae
Replace deprecated functions
...
Improve the code by replacing deprecated functions as suggested by the Qt documentation.
2023-01-31 21:32:30 +00:00
085c9c4841
HDR format removed from RAW plugin
2023-01-30 21:58:36 +00:00
b654f20ece
heif: reject invalid files with zero size
2023-01-29 16:16:52 +01:00
21211cd63b
psd: LAB conversion speed improved
...
Using an approximated pow function improves the conversion speed of LAB images by more than 50% without an appreciable visual difference.
2023-01-27 23:19:48 +00:00
5cc7a2b45c
psd: native 32-bits RGB support
...
This patch maps RGB 32-bits PSD to QImage::Format_RGBA32FPx4 or QImage::Format_RGBX32FPx4.
2023-01-26 23:17:09 +00:00
4451737d2f
Remove Qt 5 support
2023-01-24 17:15:14 +01:00
01ab0876f1
Debug code removed
2023-01-22 11:04:48 +01:00
a67dcac7d1
LAB/CMYK conversion speed improved by ~10%
2023-01-22 10:57:54 +01:00
cef8d08ad4
Bump KF_DEP_VERSION for KF6
2023-01-21 13:30:04 +01:00
a4b9dd9400
Rename CMake targets/config/libraries for KF6
2023-01-20 23:58:58 +01:00
6e6c1ab5f4
Require Qt6
...
master is for Qt6-based development now
Qt5 development continues in the 'kf5' branch
2023-01-18 23:37:26 +01:00
f205adf2e0
Remove Qt5 CI
...
master is Qt6 now
2023-01-18 23:37:26 +01:00
14742cb502
PCX: Fix reading of the extended palette
...
The VGA palette starts 769 bytes before the end of the file. There may be PADs between the end of the image and the start of the palette.
BUG: 463951
2023-01-11 22:56:38 +00:00
4c6d2b92b6
GIT_SILENT Upgrade ECM and KF version requirements for 5.102.0 release.
v5.102.0
v5.102.0-rc1
2023-01-07 00:28:55 +00:00
05bd9397b3
raw: tweak seek implementation
...
libraw uses fseek when doing files, which allows seeking past the end
without problems, so do the same, otherwise when we report oss-fuzz
issues they say "give me an example to reproduce" and since our seek
and their seek don't behave the same it's hard to convince them
to fix their code
2022-12-14 23:56:20 +01:00
f4ca3f6783
heif: fix error handling
2022-12-13 11:11:38 +01:00
a30f043e5d
heif: rewrite plugin to use only libheif C API
...
Using C-API instead of C++ libheif API has following advantages:
- More libheif features available (for ex.: strict decoding)
- Linking with static build of libheif is possible
- No need to enable exceptions
2022-12-05 22:43:41 +01:00
7af4eea253
GIT_SILENT Upgrade ECM and KF version requirements for 5.101.0 release.
v5.101.0
v5.101.0-rc1
2022-12-03 09:47:44 +00:00
a3049f6740
Fix missing DCI-P3 color space set
2022-11-24 15:02:31 +01:00
3b1e8f7054
minor tweaks in HEIF and AVIF plugins
...
It is mostly only about casting between types.
2022-11-19 11:38:49 +00:00
dcab3a06ab
raw: LibRaw_QIODevice::read: fixed possible partial reading of an item
...
- If the size of an item is greater than 1 byte, it must be ensured that it is not partially read.
- In many readings, LibRAW gives an error if a partial number of items are read so I always try to read everything.
2022-11-19 10:14:16 +00:00
361f9e867e
PSD multichannel testcases
2022-11-15 16:25:22 +00:00
35883aa604
Support to MCH with 4+ channels (treat as CMYK)
2022-11-15 16:25:22 +00:00
50846f224f
avif: Check if encoder/decoder is available in capabilities()
...
The plugin can be compiled even with decoder libraries only. In a similar way of HEIC plugin I check if an encoder or a decoder is available.
2022-11-15 13:14:09 +00:00
9ad82ed608
Fix condition for installing desktop files
2022-11-07 00:37:09 +01:00
c9f32a226f
GIT_SILENT Upgrade ECM and KF version requirements for 5.100.0 release.
v5.100.0-rc1
2022-11-05 12:28:10 +00:00
a0df142408
Don't install desktop files for image formats when building against Qt6
...
These are only for kdelibs4support/KServiceTypeTrader
2022-11-03 21:36:38 +01:00
8586bb4719
raw: Don't seek back if we were asked to read too much
...
Otherwise we will return false when LibRaw::derror
calls for eof() when it is actually that we have reached eof
2022-10-30 23:59:55 +01:00
d734f28727
jxl: indicate when all frames have been read
...
and return correct loop count
2022-10-18 17:58:40 +02:00
afa7399b36
avif: minor fixes
...
libavif 0.11.0 uses new default dimension limit 32768 pixels,
we allow 65535 which was used by us previously.
Minor tweaks in jumpToNextImage, jumpToImage
to handle rare situations.
2022-10-18 15:05:15 +02:00
bfb12093ad
avif: indicate when all frames have been read
2022-10-15 20:08:39 +02:00
1190e53e9b
avif: always indicate endless loop
...
avif does not support loops but endless loop was the behavior before
460085 was fixed, so a workaround is added.
See also: https://github.com/AOMediaCodec/libavif/issues/347
CCBUG: 460085
2022-10-15 14:11:56 +08:00
350ce1b990
avif: return false
in canRead()
when imageIndex >= imageCount
...
Otherwise when `cache: false` is set in AnimatedImage, QMovie will try
to read the image forever.
BUG: 460085
FIXED-IN: 5.100
2022-10-15 14:02:38 +08:00
bcbf45e23a
Add JXL test files corresponding to 8 EXIF orientation values
2022-10-13 15:47:04 +02:00
c71a7984d6
Add AVIF test files with rotation and mirror operations
2022-10-12 15:39:27 +02:00
b1f3a87896
Auto-rotate input images in readtest
...
Currently, there is no difference in the tests but in the future
we will add images with various transformations defined.
2022-10-12 15:33:08 +02:00
8af9a0f9d9
jxl: remove C-style casts
2022-10-11 15:38:55 +02:00
3790a89cd1
avif: Use reinterpret_cast instead C cast
...
No longer using int for QByteArray size because Qt6 uses qsizetype
2022-10-11 15:05:20 +02:00
f475a4b24a
avif: revert 9ac923ad09
commit
...
Changes to libavif's avifImageRGBToYUV() API were reverted too.
2022-10-11 14:36:17 +02:00
d2f38b8b9c
heif: replace C cast with static_cast
2022-10-10 09:28:41 +00:00