| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: Ib2aaec7a6d8a1bf6f7201c55f0871c0aa27d02a4
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The header reader would assume that bits per sample above 8 had to be
16, but other values are also possible, so check explicitly.
Fixes: QTBUG-82412
Change-Id: I7f0799de4d4cdc84023a34900aa595a7bf73eca1
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ie91dbdde92b2b87b60b4861234be718410154ff4
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Respect blend_method.
* Apply dispose_method when rending the *next* frame, and only
for the given frame area.
Change-Id: I60a8c7010a46a2a66339c87f74927a02aee7dcf3
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: I89d7e0498ff3f7818bfe8c1a3a6da3c9440ab30a
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The ability of building these plugins is part of configure.json and
should not be hard coded. The plugins can be built for winrt.
Fixes: QTBUG-71251
Change-Id: I9a6b0dcdd031d37339282caab4596978c52ae5a0
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
All recent versions of libtiff has support for the 64bit-indexed
BigTIFF format. Allow reading it by recognizing its magic number.
[ChangeLog][TIFF] Add support for reading BigTIFF
Fixes: QTBUG-80538
Change-Id: I7fcb72d77e4a0bdcb38ab96e9f6cfaff7cf4ad49
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|/
|
|
|
|
|
| |
It is being deprecated.
Change-Id: I550c7f757567dbcc914e6869c29563b4f3e76a52
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For paletted images, tiff stores a color map with 16 bit deep
entries. When reading such images, the tiff handler tried to be clever
in the 16 to 8 bit mapping, but this resulted in slightly different
result than what libtiff itself produces if asked to read and convert
such an image (TIFFReadRGBAImageOriented()). libtiff simply ignores
the lower 8 bits, so we should do the same.
Importantly, this makes no difference when 8 bit original data is
stored in the orthodox 16 bit way, where e.g. 0xAB is stored as 0xABAB
- like we do. However, the alternative storages 0xAB00 and 0xABFF
exist in the wild, even in sample images in Qt repos.
Also, if we later should want to support proper 16 bit data here, the
previous code was anyway wrong: just dividing with 257 is highly
unorthodox. The correct way would be to use proper rounding like
QRgba64::toArgb32().
Fixes: QTBUG-79522
Change-Id: I7bd90ad7b89a923bd431781f4927b13ad0544407
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\
| |
| |
| | |
Change-Id: I2437b8b4b535e4f02740070e0352e1825c67fa3c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For 1 byte deep formats, the writing routine went through the
copy-and-convert-in-chunks loop for no reason: no conversion was done
or needed.
For huge images of some formats, the chunk size computation could fail
because of int overflow, resulting in suboptimal chunk sizes.
Change-Id: I966351d9a8728987c9e885f4949d98ba94d4ac19
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Iff3186cf4eccae5fc7e7e3c55c5e6eb662be9519
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I9d9473c2866d9792cd8752816a291be04e39ec19
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: If1b9645fe07fb2cf15dbf2421d6c66b20f02bdb6
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|/
|
|
|
|
|
| |
Adds reading and writing of embedded color spaces on the TIFF plugin.
Change-Id: I53e8a16ff65f7986e9d51a5b543335e27b43e346
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|
|
|
|
|
|
| |
The WebP encoder doesn't check so we end up with undefined behavior.
Change-Id: Id3a64b2be50684d07e799f97f64481ba57c02ffb
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The QImageIOHandler::name() has been deprecated since 5.13, but its
overrides weren't. Enabled compilation of the overrides only when the
QImageIOHandler::name() is compiled.
Task-number: QTBUG-76491
Change-Id: I913f03f730969ea88864a5a08afe50c4eac533ca
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ia0a5fe32ec96c73758933b319f5cb8f22cc9f344
|
| |
| |
| |
| |
| |
| |
| | |
This amends commit a33e3aea.
Change-Id: I03304f5bf300e5e52476c3f3d6b06b0815009720
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I02bc865209f0092c68e5be1542f54e605c517c58
|
| |
| |
| |
| |
| |
| |
| | |
They are #undef'ed anyway.
Change-Id: Ic1cb3c09b5849f16115d8514fef471825d564f2c
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Idd134e350e760a0237dce4ef00d10e1c35dbeb67
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-44318
Task-number: QTBUG-62259
Change-Id: Ide5c28015c46b12ee3f21d06badd69db8bed1281
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: Ie44fe655653166bf5a4436aedd80d060afa45d5a
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The mac heic handler lacked support for any meta-data i/o. Most
notably, the image orientation proprty was ignored, so images read in
could be wrongly oriented.
Fixes: QTBUG-73415
Change-Id: I779f91dc28c7441b124aab4557e1abcd3e69fde9
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Avoid using the tmsize_t type, since it may not be defined.
Fixes: QTBUG-74283
Change-Id: I63a496173ec08c6ceac569c516d11a4711e32649
Reviewed-by: Richard Öhlinger <richard.oehlinger@adbsafegate.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|/
|
|
|
| |
Change-Id: I927d9ab0af78baf90d8fd8d44088218dff0e7082
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|\
| |
| |
| | |
Change-Id: I56fb4e7a178ac79c75a846d9a7bcd8f1f3533673
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
libtiff's default stripsize is tiny (8KB), so splitting the image into
such strips on writing would significantly hurt the compression
rate. Aim for 4MB strips instead.
Task-number: QTBUG-70820
Change-Id: I07a9a8c81edf62e802b4ae8d6729a76df15e42ac
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Third-Party Code] The unmaintained bundled libjasper has been
removed. Building the jp2 handler will require libjasper to be present as
a system or external library.
Change-Id: Ic48cc6021fc5fb64fb369eb9621fd7a811e8e9f7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Third-Party Code] The unmaintained bundled libmng has been
removed. Building the mng handler will require libmng to be present as
a system or external library.
Change-Id: I4a4805fa3f3088b5d581b92bfeabba7978bac5f7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Bound the value of the compression setting to the possible values of
the QTiffHandler::Compression enum.
Change-Id: I50e1eb8014654d8b4403d7f06e6099661e57562c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I04f8b27d37b677f15853ba84017d3f2a36368422
|
| |
| |
| |
| |
| |
| |
| |
| | |
Make the decoder fail early to avoid spending time and memory on
attempting to decode a corrupt image file.
Change-Id: Iac35e72de743f412a65d11c58fe7faa275dc4e41
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
TIFF is one of the primary formats for HDR images.
Change-Id: I5310b5c9a625fd3e759e5120be6ba547c633c81c
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ieebdb63bc396bb683b85e3d07ec9c5d78bd30f69
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When writing an image without compression, libtiff will automatically
store it in strips of default size, and add a ROWSPERSTRIP tag
accordingly. However, if compression is enabled, libtiff does not do
this. The lack of this tag may create trouble for readers.
Fix by explicitly setting the tag in all cases.
[ChangeLog][TIFF] Ensure saved tiffs have suitable ROWSPERSTRIP tag set
Task-number: QTBUG-68609
Change-Id: I838c83be25158d7f13e220098e960010b8cb2789
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In lossless mode, libwebp interpretes the quality setting as a
compression-effort setting instead. The code used to set it to 100
(maximum), which could lead to unreasonable compression times (several
seconds for a small image). Instead set it to libweb's own default value.
Also, since the alpha channel compression has its own quality setting,
make sure it follows the main quality/effort setting.
Change-Id: I595d42c61f61c9932b27b185745bde6e7cfb3526
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
Webp files can be with or without alpha channel. The handler would
ignore this and read all as Format_ARGB32 images, and write all as
having alpha, in both cases losing that important bit of information.
As a driveby, simplify the endianness handling in write(). By always
converting the source image to an endianness-independent QImage
format, no special handling is required.
Task-number: QTBUG-48628
Change-Id: I624ed72b18a8b59a542979efcb4e8ff81214e0d7
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: If4baad0b1949c1c8f7157c213fc492775053ae0b
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
Change-Id: I827727fde51a71cbef5d61fb6cc2cd45d5e3bd7c
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The functions used for converting between QImage and CGImage were not
available on iOS. Replace with newer conversions functions which are.
Task-number: QTBUG-64722
Change-Id: I3f62d3ccabd103e5b9d4828e8079d94587472872
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If a negative (i.e. illegal/unset) quality value was set to the WebP
handler, it would just bound it to 0 (minimum quality level). This
would happen on every save where no explicit quality level had been
requested on the QImageWriter.
Fix by copying the jpeg handler's behavior: If a negative value is
set, use the default level (75) when storing.
[ChangeLog][WebP handler] Fixed default quality level for writing
Task-number: QTBUG-64437
Change-Id: I0f1cabba6cea6851c6a813bf5bf7ab8e8c49ddfb
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
|\| |
| | |
| | |
| | | |
Change-Id: If0c8e712f7521483df688ae9d33adea8b5fdaae5
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
Change-Id: I84737121b8915a6c358ad92246984749e2719bed
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Iba0631701fbecdd66ffa1d12c57387d76aa65475
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I32dd4ece07c0ff4ef882fffe69afbe2f4a818a96
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Adds basic support for still images encoded with the HEIF standard
introduced in macOS Sierra and IOS 11.
Uses the Core Graphics Image I/O Framework as codec backend.
Reuses the helper class from the macjp2 handler.
Change-Id: I5f0c7891b189a916cccd2c27eacbac12416ce209
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
|/ /
| |
| |
| |
| | |
Change-Id: Iba9c9b77bea8c4ec6915a0cac6aa9c84aaa77dca
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Use new sizeInBytes() method.
Change-Id: I3fa5969ac04e2edb87a06f132dc0b60e65718b81
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|