Mirco Miranda
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
Mirco Miranda
f5a9dd46d2
Removed unused jxl.desktop file
2023-04-22 09:31:30 +02:00
Mirco Miranda
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
Gary Wang
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
Mirco Miranda
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
Éric Gillet
a3f7c03b61
heif: Add format read-write support in README
2023-02-15 08:36:24 +00:00
Freya Lupen
20cec27ae8
Fix writing TGA alpha depth flag
...
Correctly write alpha channel depth as 8-bit.
2023-02-01 16:26:31 -06:00
Volker Krause
d34c1668aa
Bump Qt deprecation level to 6.4
2023-02-01 17:16:45 +01:00
Mirco Miranda
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
Mirco Miranda
085c9c4841
HDR format removed from RAW plugin
2023-01-30 21:58:36 +00:00
Daniel Novomeský
b654f20ece
heif: reject invalid files with zero size
2023-01-29 16:16:52 +01:00
Mirco Miranda
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
Mirco Miranda
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
Volker Krause
4451737d2f
Remove Qt 5 support
2023-01-24 17:15:14 +01:00
Mirco Miranda
01ab0876f1
Debug code removed
2023-01-22 11:04:48 +01:00
Mirco Miranda
a67dcac7d1
LAB/CMYK conversion speed improved by ~10%
2023-01-22 10:57:54 +01:00
Nicolas Fella
cef8d08ad4
Bump KF_DEP_VERSION for KF6
2023-01-21 13:30:04 +01:00
Nicolas Fella
a4b9dd9400
Rename CMake targets/config/libraries for KF6
2023-01-20 23:58:58 +01:00
Nicolas Fella
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
Nicolas Fella
f205adf2e0
Remove Qt5 CI
...
master is Qt6 now
2023-01-18 23:37:26 +01:00
Mirco Miranda
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
l10n daemon script
4c6d2b92b6
GIT_SILENT Upgrade ECM and KF version requirements for 5.102.0 release.
2023-01-07 00:28:55 +00:00
Albert Astals Cid
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
Daniel Novomeský
f4ca3f6783
heif: fix error handling
2022-12-13 11:11:38 +01:00
Daniel Novomeský
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
l10n daemon script
7af4eea253
GIT_SILENT Upgrade ECM and KF version requirements for 5.101.0 release.
2022-12-03 09:47:44 +00:00
Mirco Miranda
a3049f6740
Fix missing DCI-P3 color space set
2022-11-24 15:02:31 +01:00
Daniel Novomeský
3b1e8f7054
minor tweaks in HEIF and AVIF plugins
...
It is mostly only about casting between types.
2022-11-19 11:38:49 +00:00
Mirco Miranda
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
Mirco Miranda
361f9e867e
PSD multichannel testcases
2022-11-15 16:25:22 +00:00
Mirco Miranda
35883aa604
Support to MCH with 4+ channels (treat as CMYK)
2022-11-15 16:25:22 +00:00
Mirco Miranda
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
Nicolas Fella
9ad82ed608
Fix condition for installing desktop files
2022-11-07 00:37:09 +01:00
l10n daemon script
c9f32a226f
GIT_SILENT Upgrade ECM and KF version requirements for 5.100.0 release.
2022-11-05 12:28:10 +00:00
Nicolas Fella
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
Albert Astals Cid
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
Daniel Novomeský
d734f28727
jxl: indicate when all frames have been read
...
and return correct loop count
2022-10-18 17:58:40 +02:00
Daniel Novomeský
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
Daniel Novomeský
bfb12093ad
avif: indicate when all frames have been read
2022-10-15 20:08:39 +02:00
Fushan Wen
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
Fushan Wen
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
Daniel Novomeský
bcbf45e23a
Add JXL test files corresponding to 8 EXIF orientation values
2022-10-13 15:47:04 +02:00
Daniel Novomeský
c71a7984d6
Add AVIF test files with rotation and mirror operations
2022-10-12 15:39:27 +02:00
Daniel Novomeský
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
Daniel Novomeský
8af9a0f9d9
jxl: remove C-style casts
2022-10-11 15:38:55 +02:00
Daniel Novomeský
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
Daniel Novomeský
f475a4b24a
avif: revert 9ac923ad09
commit
...
Changes to libavif's avifImageRGBToYUV() API were reverted too.
2022-10-11 14:36:17 +02:00
Daniel Novomeský
d2f38b8b9c
heif: replace C cast with static_cast
2022-10-10 09:28:41 +00:00
Daniel Novomeský
9ab64dbf22
heif: use heif_init/heif_deinit with libheif 1.13.0+
...
In recent libheif, application should use
heif_init/heif_deinit calls. Unfortunately, these calls are
not thread-safe in released 1.13.0 version yet (will be in the
future) and HEIFHandler is often created in different threads.
So we have to guard their use with a mutex.
2022-10-10 09:28:41 +00:00
Friedrich W. H. Kossebau
20f74ce5e6
FindLibRaw: fix include dir, should not contain prefix libraw/
...
See also the examples at https://www.libraw.org/docs/API-CXX.html
BUG: 460105
2022-10-08 02:15:18 +02:00