https://bugs.kde.org/show_bug.cgi?id=338470
Halla Rempt <ha...@valdyas.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED Latest Commit| |https://invent.kde.org/grap | |hics/krita/commit/2dc3df63a | |8ad52468afd2a8a8f1123d4c080 | |627d --- Comment #20 from Halla Rempt <ha...@valdyas.org> --- Git commit 2dc3df63a8ad52468afd2a8a8f1123d4c080627d by Halla Rempt, on behalf of L. E. Segovia. Committed on 23/08/2021 at 13:11. Pushed by rempt into branch 'master'. TIFF: add support for reading Photoshop layers and metadata This commit builds upon the previous work in order to enable loading the PSD-like layer data and metadata from the TIFFTAG_IMAGESOURCEDATA and TIFFTAG_PHOTOSHOP fields. Of special relevance are the following: TIFFTAG_IMAGESOURCEDATA is a sequence of Layr/Lr16/Lr32 layer block, followed by LMsk (which is Adobe's take on a global mask info block), followed by Patt and Anot. As these are a byte-by-byte equivalent of the PSD's additional layer info blocks, for TIFF I've added a logic path that takes advantage of Lr16/32 and handles them all as additional logic blocks safely. It must also be noted that these are globally aligned to 4-byte boundaries, which do *not* apply to internal blocks (see Layr), and they are also in *the endianness of the container* (this is the reason why I added endianness handling in previous commits). TIFFTAG_PHOTOSHOP is just a concatenation of resource blocks (as opposed to a full resource section), but unlike the previous, it's in big endian like its PSD sibling. M +31 -2 libs/psd/psd_additional_layer_info_block.cpp M +3 -0 libs/psd/psd_additional_layer_info_block.h M +1 -0 libs/psd/psd_header.cpp M +1 -0 libs/psd/psd_header.h M +2 -1 libs/psd/psd_layer_record.cpp M +116 -28 libs/psd/psd_layer_section.cpp M +4 -1 libs/psd/psd_layer_section.h M +121 -60 libs/psd/psd_pixel_utils.cpp M +13 -3 libs/psd/psd_pixel_utils.h M +1 -1 libs/psdutils/psd_utils.h M +5 -3 plugins/impex/tiff/CMakeLists.txt M +360 -60 plugins/impex/tiff/kis_tiff_converter.cc M +44 -3 plugins/impex/tiff/kis_tiff_converter.h A +99 -0 plugins/impex/tiff/kis_tiff_psd_layer_record.cpp [License: GPL(v2.0+)] A +53 -0 plugins/impex/tiff/kis_tiff_psd_layer_record.h [License: GPL(v2.0+)] A +276 -0 plugins/impex/tiff/kis_tiff_psd_resource_record.cpp [License: GPL(v2.0+)] A +170 -0 plugins/impex/tiff/kis_tiff_psd_resource_record.h [License: GPL(v2.0+)] https://invent.kde.org/graphics/krita/commit/2dc3df63a8ad52468afd2a8a8f1123d4c080627d -- You are receiving this mail because: You are watching all bug changes.