1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 14:28:12 +00:00
serenity/Userland/Libraries/LibGfx/ImageFormats
Nico Weber 98729c97f4 LibGfx/JBIG2: Simplify and restrict adaptive template pixel reading
EXTTEMPLATE=1 was added later and doesn't seem to be used much in
practice -- it doesn't appear in no simple generic regions in any PDF
I tested so far at least. Since the spec contradicts itself on what
to do with these as far as I can tell, error out on them for now and
then add support once we find actual files using this, so that we can
check our implementation actually works.

Deduplicate the data reading for the different cases, and
zero-initialize all adaptive template pixels to zero to make that
possible.

Other than prohibiting EXTTEMPLATE=1, no behavior change.
2024-03-14 10:57:57 -04:00
..
ISOBMFF Everywhere: Prefer {:#x} over 0x{:x} in format strings 2024-02-21 17:54:38 +01:00
BMPLoader.cpp LibGfx/BMP: Clear alpha in palette entries 2024-03-05 21:27:41 +00:00
BMPLoader.h LibGfx: Provide a default implementation for animation-related methods 2023-07-18 14:34:35 +01:00
BMPWriter.cpp
BMPWriter.h
BooleanDecoder.cpp LibGfx/LibVideo: Check for overreads only at end of a VPX range decode 2023-06-10 07:17:12 +02:00
BooleanDecoder.h LibGfx/LibVideo: Check for overreads only at end of a VPX range decode 2023-06-10 07:17:12 +02:00
CCITTDecoder.cpp LibGfx/CCITT: Add support for images with an unknown number of lines 2024-03-07 11:07:20 -05:00
CCITTDecoder.h LibGfx/CCITT: Add support for Group4 2024-02-21 13:49:43 +01:00
DDSLoader.cpp Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
DDSLoader.h AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
ExifOrientedBitmap.h LibGfx/ExifOrientedBitmap: Add support for CMYKBitmap 2024-01-24 22:16:22 -07:00
GIFLoader.cpp LibGfx/GIF: Avoid a silly loop in GIF logical screen parsing 2024-01-05 13:20:00 +01:00
GIFLoader.h LibGfx: Provide an implementation for ImageDecoderPlugin::icc_data() 2023-10-29 07:21:10 +00:00
ICOLoader.cpp LibGfx/ICO: Remove unused parameter 2024-02-14 06:56:03 +01:00
ICOLoader.h LibGfx/ICO: Remove unused parameter 2024-02-14 06:56:03 +01:00
ILBMLoader.cpp LibGfx/ILBMLoader: Properly display images with a bitplane mask 2024-01-18 13:59:17 +01:00
ILBMLoader.h LibGfx: Provide an implementation for ImageDecoderPlugin::icc_data() 2023-10-29 07:21:10 +00:00
ImageDecoder.cpp LibGfx: Add the start of a JBIG2 loader 2024-03-09 16:01:22 +01:00
ImageDecoder.h LibGfx+Fallout: Make ImageDecoder return ErrorOr 2024-03-07 11:20:06 -05:00
JBIG2Loader.cpp LibGfx/JBIG2: Simplify and restrict adaptive template pixel reading 2024-03-14 10:57:57 -04:00
JBIG2Loader.h LibPDF+LibGfx: Support JBIG2s with /JBIG2Globals set 2024-03-09 16:01:22 +01:00
JPEGLoader.cpp LibGfx/JPEGLoader: Check earlier for quantization tables presence 2024-02-26 20:13:25 +00:00
JPEGLoader.h LibGfx/JPEG: Expose the Exif metadata 2024-01-22 20:16:32 -07:00
JPEGShared.h LibGfx/JPEG: Put generic definitions in a shared header 2023-06-22 21:13:04 +02:00
JPEGWriter.cpp LibGfx/JPEGWriter: Make it possible to write CMYKBitmaps 2024-02-02 07:19:18 +01:00
JPEGWriter.h LibGfx/JPEGWriter: Make it possible to write CMYKBitmaps 2024-02-02 07:19:18 +01:00
JPEGWriterTables.h LibGfx/JPEG: Add a JPEG encoder :^) 2023-06-22 21:13:04 +02:00
JPEGXLLoader.cpp LibGfx/ExifOrientedBitmap: Add support for CMYKBitmap 2024-01-24 22:16:22 -07:00
JPEGXLLoader.h LibGfx/JPEGXL: Add a JPEG-XL decoder :^) 2023-07-21 10:47:34 -06:00
PAMLoader.cpp LibGfx/PNM: Remove unnecessary line 2024-01-26 14:53:33 +01:00
PAMLoader.h LibGFX/PAM: Allow reading CMYK .pam files 2024-01-26 07:36:53 +01:00
PBMLoader.cpp LibGfx/PNM: Remove unnecessary line 2024-01-26 14:53:33 +01:00
PBMLoader.h LibGfx/PortableFormat: Propagate errors from read_image_data() 2023-03-24 10:56:58 +01:00
PGMLoader.cpp LibGfx/PNM: Remove unnecessary line 2024-01-26 14:53:33 +01:00
PGMLoader.h LibGfx/PortableFormat: Propagate errors from read_image_data() 2023-03-24 10:56:58 +01:00
PNGLoader.cpp LibGfx/PNG: Spec comment for PNGImageDecoderPlugin::unfilter_scanline() 2024-01-15 23:42:45 +01:00
PNGLoader.h LibGfx: Make unfilter_scanline() a static PNGImageDecoderPlugin method 2023-11-17 19:09:50 +01:00
PNGShared.h LibGfx+LibPDF: Create filter_type() for converting u8 to FilterType 2023-11-17 19:09:50 +01:00
PNGWriter.cpp Userland: Prefer _string over _short_string 2023-08-08 07:37:21 +02:00
PNGWriter.h
PortableFormatWriter.cpp LibGfx/PortableFormat: Use FixedArray::unchecked_at 2023-05-09 11:18:46 +02:00
PortableFormatWriter.h LibGfx/PortableFormat+image: Make encode take a Stream 2023-05-09 11:18:46 +02:00
PortableImageLoaderCommon.h LibGfx/PNM: Remove two fixmes 2024-02-02 08:26:40 +00:00
PortableImageMapLoader.h LibGFX/PAM: Allow reading CMYK .pam files 2024-01-26 07:36:53 +01:00
PPMLoader.cpp LibGfx/PNM: Remove unnecessary line 2024-01-26 14:53:33 +01:00
PPMLoader.h LibGfx/PortableFormat: Propagate errors from read_image_data() 2023-03-24 10:56:58 +01:00
QOILoader.cpp LibGfx: Provide an implementation for ImageDecoderPlugin::icc_data() 2023-10-29 07:21:10 +00:00
QOILoader.h AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
QOIWriter.cpp Everywhere: Remove unused DeprecatedString includes 2023-04-09 22:00:54 +02:00
QOIWriter.h
TGALoader.cpp LibGfx/TGA: Move a variable closer to its use 2024-03-08 08:38:31 +01:00
TGALoader.h LibGfx: Make validate_before_create() create a regular bool 2024-03-08 08:38:31 +01:00
TIFFLoader.cpp LibGfx/TIFF: Reject images with a null value in tile's dimensions 2024-03-07 11:31:38 -05:00
TIFFLoader.h LibGfx/TIFF: Add an alternative entry point to only request metadata 2024-01-22 20:16:32 -07:00
TinyVGLoader.cpp LibGfx/TinyVG: Fix decoding green channel of graphics RGB565 colors 2024-03-12 21:53:23 +00:00
TinyVGLoader.h LibGfx+ImageViewer: Replace ImageDecoder::is_vector() with an enum 2024-01-10 09:39:00 +01:00
WebPLoader.cpp Everywhere: Prefer {:#x} over 0x{:x} in format strings 2024-02-21 17:54:38 +01:00
WebPLoader.h LibGfx/WebP: Decode the first chunk in create() 2023-07-15 09:34:07 +02:00
WebPLoaderLossless.cpp LibGfx/WebPLoaderLossless: Fix grammar-o in comment 2024-01-29 09:12:06 -05:00
WebPLoaderLossless.h LibGfx/WebP: Minor cosmetical changes in WebPLoaderLossless.h 2023-05-09 06:35:56 +02:00
WebPLoaderLossy.cpp LibGfx/LibVideo: Check for overreads only at end of a VPX range decode 2023-06-10 07:17:12 +02:00
WebPLoaderLossy.h WebP/Lossy: Implement macroblock coefficient decoding 2023-05-29 10:41:53 -06:00
WebPLoaderLossyTables.h WebP/Lossy: Add const annotations to functions in Tables.h 2023-06-01 16:23:46 +02:00