Commit Graph

4344 Commits

Author SHA1 Message Date
Hugo van Kemenade
5eea6ed633 Replace 'assert False' with pytest.fail() 2023-11-12 22:30:28 +02:00
Andrew Murray
bf76320444
Merge pull request #7491 from bgilbert/jpeg-tables-only
Implement `streamtype=1` option for tables-only JPEG encoding
2023-11-11 16:06:34 +11:00
Hugo van Kemenade
a7fe25df53
Merge pull request #7522 from radarhere/png_save_all 2023-11-07 11:35:24 +02:00
Aarni Koskela
9e615b6ad3 Add noqas for UP031 2023-11-06 12:43:14 +02:00
Andrew Murray
c29648ff53 If save_all PNG only has one frame, do not create animated image 2023-11-03 22:08:48 +11:00
Andrew Murray
a5a6ca150c
Merge pull request #7493 from radarhere/frombytes
Fixed frombytes() for images with a zero dimension
2023-11-03 18:56:34 +11:00
Andrew Murray
bff6b4d6a2 Switched from direct setup.py invocation to "pip install ." 2023-10-27 19:17:15 +11:00
Benjamin Gilbert
4d7372bfd0 Implement streamtype=1 option for tables-only JPEG encoding
We already support streamtype=2 to skip producing JPEG tables, but
streamtype=1, which skips everything but the tables, was never implemented.
The streamtype=1 stub code dates to Git pre-history, so it's not
immediately clear why.  Implement the missing support.

jpeg_write_tables() can't resume after a full output buffer (it fails with
JERR_CANT_SUSPEND), so it might seem that Pillow needs to pre-compute the
necessary buffer size.  However, in the normal case of producing an
interchange stream, the tables are written via the same libjpeg codepath
during the first jpeg_write_scanlines() call, and table writes aren't
resumable there either.  Thus, any buffer large enough for the normal case
will also be large enough for a tables-only file.

The streamtype option isn't documented and this commit doesn't change that.
It does add a test though.

Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
2023-10-24 20:30:45 -05:00
Andrew Murray
91f115bead Fixed im.frombytes() for images with a zero dimension 2023-10-25 08:52:26 +11:00
Andrew Murray
5071692039 Fixed Image.frombytes() for images with a zero dimension 2023-10-25 08:52:06 +11:00
Andrew Murray
f54dd84586 Test unsupported autocontrast mode 2023-10-24 12:44:00 +11:00
Andrew Murray
19aeed07bf Merge branch 'main' into gray 2023-10-20 07:47:17 +11:00
Andrew Murray
e760b02bfa Combine if and assert statement 2023-10-19 20:34:28 +11:00
Andrew Murray
d682c18ded Use "gray" more consistently 2023-10-19 19:12:01 +11:00
Andrew Murray
8b71f3d3c1 Added messages to errors 2023-10-19 18:42:41 +11:00
Andrew Murray
0da7ad7c48 Merge branch 'main' into load_default 2023-10-14 10:33:50 +11:00
mergify[bot]
a4bc7146e5
Merge pull request #7412 from radarhere/cover
Added ImageOps cover method
2023-10-13 22:16:30 +00:00
Hugo van Kemenade
ff37a5be37
Merge pull request #7458 from radarhere/truncated_exif 2023-10-13 23:49:55 +02:00
Hugo van Kemenade
101154e0d5
Merge pull request #7437 from radarhere/apng 2023-10-13 23:48:22 +02:00
Hugo van Kemenade
810f5f06c4
Merge branch 'main' into cover 2023-10-13 23:42:06 +02:00
Andrew Murray
7319d86328 Catch struct.error from truncated EXIF when reading DPI 2023-10-12 10:13:46 +11:00
Andrew Murray
4e7f61f459
Merge branch 'main' into bgr 2023-10-06 18:50:25 +11:00
Hugo van Kemenade
5957f109a5
Merge pull request #7310 from radarhere/cmyk2rgb 2023-10-06 01:43:50 -06:00
Andrew Murray
a3fd009875 Match warning message 2023-10-06 17:31:06 +11:00
Andrew Murray
f24222a954 Merge branch 'main' into jpeg_xmp 2023-10-06 17:23:53 +11:00
Andrew Murray
787daa9f19 Merge branch 'main' into cmyk2rgb 2023-10-06 15:52:32 +11:00
Andrew Murray
2d9c4e663f
Merge pull request #7302 from radarhere/png_i16
Allow saving I;16B images as PNG
2023-10-06 15:45:58 +11:00
Hugo van Kemenade
6f73691564
Merge pull request #7257 from radarhere/i16_point 2023-10-05 12:54:25 -06:00
Hugo van Kemenade
09605ff48e
Merge pull request #7413 from radarhere/bc5s 2023-10-05 09:48:12 -06:00
Hugo van Kemenade
0c55a2d864
Merge pull request #7319 from radarhere/iptc 2023-10-05 09:44:56 -06:00
Hugo van Kemenade
5f04b3d278
Merge pull request #7289 from radarhere/undefined_palette 2023-10-05 09:31:02 -06:00
Hugo van Kemenade
0a432541ae
Merge pull request #7392 from radarhere/eps 2023-10-05 09:27:06 -06:00
Andrew Murray
b98dc8abe1 Consider default image when selecting mode for PNG save_all 2023-10-02 19:07:56 +11:00
Andrew Murray
43e6826199
Merge pull request #7382 from nopperl/parse-eps-trailer
Read bounding box information from the trailer of EPS files if specified
2023-10-02 09:53:35 +11:00
Hugo van Kemenade
c2f7ea59b9
Merge pull request #7426 from radarhere/dds_palette 2023-09-30 14:40:17 -06:00
Andrew Murray
955b2d553c
Merge branch 'main' into cover 2023-09-30 19:04:22 +10:00
Hugo van Kemenade
8cb1e29491
Merge pull request #7420 from radarhere/transparency 2023-09-30 02:53:22 -06:00
Hugo van Kemenade
99e11f9e08
Merge pull request #7406 from radarhere/webp 2023-09-28 14:25:34 -06:00
Andrew Murray
cd4adb1677 Added reading 8-bit color images 2023-09-27 19:41:45 +10:00
Andrew Murray
e27d7a6f84 Changed has_transparency_data() to property 2023-09-26 20:14:22 +10:00
Hugo van Kemenade
132357ac46 Add check-executables-have-shebangs to pre-commit and remove executable flags 2023-09-25 16:45:38 +03:00
Hugo van Kemenade
f76b63d016 Add end-of-file-fixer to pre-commit 2023-09-25 16:45:38 +03:00
Hugo van Kemenade
36d0bf044b Fix LOG005 use exception() within an exception handler 2023-09-25 16:45:38 +03:00
Hugo van Kemenade
507b7d519a Fix LOG011 avoid pre-formatting log messages 2023-09-25 16:45:38 +03:00
Andrew Murray
ad12caecda Convert RGBA palette to RGBA image when saving WebP 2023-09-25 20:28:25 +10:00
Andrew Murray
6bbed1add0 Added has_transparency_data() 2023-09-25 20:10:44 +10:00
Andrew Murray
d919942f8e Last trailer comment has priority 2023-09-22 18:36:52 +10:00
Andrew Murray
094f23dd5c EOF ends not just the trailer, but also the file 2023-09-22 18:26:41 +10:00
Andrew Murray
4c9c7636be Merge branch 'main' into parse-eps-trailer 2023-09-22 16:16:26 +10:00
Andrew Murray
352bcaac74 Set blue channel to 128 for BC5S 2023-09-21 16:38:45 +10:00