Commit Graph

2721 Commits

Author SHA1 Message Date
Nulano
fa4b3776f0 deprecate IptcImagePlugin.{dump,i,PAD} 2023-12-31 17:41:13 +02:00
Hugo van Kemenade
6c4b47dc46
Merge pull request #7496 from radarhere/exif 2023-12-31 17:39:21 +02:00
Hugo van Kemenade
da61ed1330
Merge pull request #7661 from radarhere/iptc 2023-12-31 17:38:35 +02:00
Hugo van Kemenade
d71cf168ee
Merge pull request #7566 from radarhere/exit 2023-12-31 17:37:43 +02:00
Hugo van Kemenade
119885aa66
Merge pull request #7589 from radarhere/dds_rgb 2023-12-31 17:35:30 +02:00
Hugo van Kemenade
5df7235d90
Merge pull request #7654 from radarhere/rowsperstrip 2023-12-31 17:29:26 +02:00
Hugo van Kemenade
6282caf3f4
Merge pull request #7659 from nulano/types-binary 2023-12-31 16:56:16 +02:00
Nulano
3396ce102d do not accept int in PIL._binary.i8 2023-12-31 15:12:18 +01:00
Andrew Murray
42c574afdf
Merge pull request #7656 from nulano/types-containerio
Add type hints to PIL.ContainerIO
2024-01-01 00:25:20 +11:00
Nulano
46a6ddf0c2 fix loading IPTC images and add test 2023-12-31 13:53:09 +01:00
Andrew Murray
2ec53e36e9 Apply ImageFont.MAX_STRING_LENGTH to ImageFont.getmask() 2023-12-31 23:17:28 +11:00
Andrew Murray
1d9c931626 Changed tile tuple to match other plugins 2023-12-31 22:43:08 +11:00
Hugo van Kemenade
9158c9aec0 Optimise ImageColor using functools.lru_cache 2023-12-30 16:26:50 +02:00
Andrew Murray
557ba59d13 Include further builtins 2023-12-30 09:30:12 +11:00
Andrew Murray
0ca3c33c59 Allow ops 2023-12-30 09:29:40 +11:00
Eric Soroos
45c726fd4d Don't allow __ or builtins in env dictionarys for ImageMath.eval 2023-12-30 09:28:32 +11:00
Nulano
9a6b6316a7 add type hints to PIL.ContainerIO 2023-12-29 23:24:21 +01:00
Nulano
6a33d6d170 add type hints to PIL._binary 2023-12-29 23:15:41 +01:00
Andrew Murray
f7ec665bf1 Support setting ROWSPERSTRIP tag 2023-12-29 23:00:14 +11:00
Andrew Murray
f6bcf4e1ae Use IMAGEWIDTH and IMAGELENGTH when calculating strip size 2023-12-29 14:15:40 +11:00
Nulano
30015f6236 simplify decompression bomb check in FreeTypeFont.render 2023-12-27 17:05:14 +01:00
pre-commit-ci[bot]
0d90bc8187 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-12-27 13:57:22 +00:00
Nulano
3a4298d16c avoid hard dependency on typing_extensions 2023-12-27 14:55:30 +01:00
Nulano
cc51dace35 fix types hints for ImageFile._Tile 2023-12-27 14:55:30 +01:00
Nulano
90d5552800 use _util.DeferredError.new everywhere 2023-12-27 14:55:30 +01:00
Nulano
6bcf807fe2 add type hints for _util 2023-12-27 14:55:30 +01:00
Andrew Murray
0aebd577ea Moved type hint to BYTES_PER_ROW 2023-12-27 22:27:20 +11:00
Andrew Murray
6e97dd5cec Raise ValueError when trying to save without bitmap 2023-12-27 12:32:35 +11:00
Andrew Murray
85818cd616 Added type hints to FontFile and subclasses 2023-12-27 12:27:21 +11:00
Andrew Murray
e9252a9353 Always return None from compile() 2023-12-27 11:07:53 +11:00
Hugo van Kemenade
396b96f28b
Optimise ImageMode.getmode
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-12-26 15:08:58 -07:00
Hugo van Kemenade
26f58e7afc Optimise ImageMode.getmode 2023-12-26 18:05:55 +02:00
Andrew Murray
d400ef2b46 Added type hints 2023-12-26 12:18:38 +11:00
Hugo van Kemenade
fbecf7790b
Merge pull request #7635 from radarhere/type_hints_imagesequence 2023-12-25 13:17:06 +02:00
Andrew Murray
f8d75032db Added strict type hints 2023-12-25 18:58:47 +11:00
Andrew Murray
6768d3aa91
Merge pull request #7497 from ZachNagengast/fix-alpha-for-overlapping-glyphs
Fix incorrect color blending for overlapping glyphs in BGRA mode
2023-12-24 19:03:28 +11:00
Andrew Murray
d2dc8d3a6e Added type hints 2023-12-24 15:59:12 +11:00
Hugo van Kemenade
17af8eca02
Add type hints for ImageMode
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-12-23 02:16:46 -07:00
Hugo van Kemenade
76809f09ef Add type hints for ImageMode 2023-12-22 16:23:28 +02:00
Andrew Murray
64ddace6c4 Add 'from __future__ import annotations' using Ruff/isort 2023-12-22 23:06:35 +11:00
Hugo van Kemenade
43b2f61e79 Add 'from __future__ import annotations' using Ruff/isort 2023-12-21 13:13:31 +02:00
Hugo van Kemenade
dd42a24f9e
Merge pull request #7565 from radarhere/tile 2023-12-21 12:59:28 +02:00
Hugo van Kemenade
18907b5f7e
Merge pull request #7568 from radarhere/gif_transparency 2023-12-21 12:58:07 +02:00
Hugo van Kemenade
0331d9d48b
Merge pull request #7560 from radarhere/string_length_check 2023-12-21 12:55:37 +02:00
Hugo van Kemenade
b638d056d5
Merge pull request #7548 from radarhere/imagefont 2023-12-21 12:55:20 +02:00
Hugo van Kemenade
9eb93915c3
Merge pull request #7521 from radarhere/gif_save_all 2023-12-21 12:52:26 +02:00
Hugo van Kemenade
ccfe33fd3a
Merge pull request #7515 from radarhere/gif 2023-12-21 12:51:20 +02:00
Hugo van Kemenade
7e30619541
Merge pull request #7483 from radarhere/psd 2023-12-21 12:50:34 +02:00
Andrew Murray
1f9dafec80 Added type hints for format and format_description 2023-12-19 14:11:00 +11:00
Hugo van Kemenade
368c05c9dc Inline isinstance check 2023-12-18 18:11:29 +02:00
Andrew Murray
b60a5827e8 Import annotations to allow for pipe as union type 2023-12-15 07:59:38 +11:00
Andrew Murray
e482ea9305
Corrected type hint
Co-authored-by: Ondrej Baranovič <nulano@nulano.eu>
2023-12-15 07:57:14 +11:00
Andrew Murray
ac38a91816 Added type hints 2023-12-14 23:10:30 +11:00
Andrew Murray
ac1f10fa82
Merge pull request #7576 from deliangyang/main
Import plugins relative to the module
2023-12-14 18:28:22 +11:00
Benjamin Gilbert
4b422db243 Add keep_rgb option to prevent RGB -> YCbCr conversion during JPEG write
libjpeg automatically converts RGB to YCbCr by default.  Add a keep_rgb
option to disable libjpeg's automatic conversion of RGB images during
write.
2023-12-13 18:26:35 -06:00
Andrew Murray
45e44085c0
Merge pull request #7609 from bgilbert/encoder-errors
Translate encoder error codes to strings; deprecate `ImageFile.raise_oserror()`
2023-12-13 20:45:47 +11:00
Benjamin Gilbert
e1fb1ab5c4 Deprecate raise_oserror() for removal in Pillow 12
It's only useful if the caller has an IMAGING_CODEC_* error code, which
are only produced by codec decode() methods and are automatically
translated by ImageFile.

Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
2023-12-13 02:17:32 -06:00
Benjamin Gilbert
ec17dc11ba Translate encoder error codes to strings
When decoding, we use raise_oserror() to convert codec error codes to
strings.  Adapt that code to be used when encoding as well.  Add a new
helper function that returns the exception so we can still raise
`from exc`.
2023-12-12 23:13:51 -06:00
Andrew Murray
4c7eeec4fc
Merge pull request #7600 from nulano/anchor-clarify-docs
Clarify default anchor alignment
2023-12-13 07:36:00 +11:00
Nulano
af2d976880 clarify default anchor alignment 2023-12-12 17:22:19 +01:00
pre-commit-ci[bot]
232094e065 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-12-06 21:45:26 +00:00
Andrew Murray
8b44116773 Merge branch 'main' into dds_rgb 2023-12-07 08:43:57 +11:00
Hugo van Kemenade
7cc0482804
Merge pull request #6486 from REDxEYE/improved_dds 2023-12-06 22:51:05 +02:00
Andrew Murray
e9afaee248
Merge pull request #7593 from florath/ImageStat_getextrema_opt
Optimize ImageStat.Stat._getextrema function
2023-12-06 17:27:56 +11:00
Andrew Murray
e43dd6610d
Merge pull request #7578 from radarhere/font
Handle pathlib.Path in FreeTypeFont
2023-12-06 12:09:16 +11:00
Andrew Murray
00c6a89177 Link to plugin 2023-12-06 11:10:20 +11:00
Andreas Florath
ed03954d9e
Merge branch 'main' into ImageStat_getextrema_opt 2023-12-05 16:39:18 +01:00
REDxEYE
9e6030f5a9
Rename _420_OPAQUE to OPAQUE_420
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-12-05 13:04:19 +03:00
Andrew Murray
0a66b98558
Merge pull request #7597 from hugovk/comprehensions
Use list comprehensions to create transformed lists
2023-12-05 18:56:49 +11:00
Andrew Murray
f2e478e968 Merge branch 'main' into improved_dds 2023-12-05 17:49:47 +11:00
Andrew Murray
b3f374333b
Merge pull request #7603 from sambvfx/bc4-dds
Added support for reading DX10 BC4 DDS images
2023-12-05 17:23:16 +11:00
Hugo van Kemenade
f7c3f2a447
Use underscore as throwaway variable
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-12-05 00:03:38 +02:00
Sam Bourne
8c5d5c7e6b Add support for BC4 dds files 2023-12-04 09:54:10 -08:00
Hugo van Kemenade
9601102724
Merge branch 'main' into comprehensions 2023-12-04 17:09:10 +02:00
Hugo van Kemenade
fe26900688
Merge pull request #7599 from florath/ImageStat_getcount_opt 2023-12-04 17:04:38 +02:00
Hugo van Kemenade
e92c07f402
Apply suggestions from code review
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
Co-authored-by: Alexander Karpinsky <homm86@gmail.com>
2023-12-04 16:34:39 +02:00
Andrew Murray
d042c4bc37 Added typing.IO to type hint 2023-12-04 22:26:14 +11:00
Andrew Murray
9a6c47a9d2 Merge branch 'main' into font 2023-12-04 22:25:58 +11:00
Andrew Murray
b51dcc070b
Merge pull request #7587 from radarhere/freetypefont
Moved error from truetype() to FreeTypeFont
2023-12-04 22:05:38 +11:00
Andrew Murray
b431e2c140
Merge pull request #7555 from radarhere/pdf_palette
Correct PDF palette size when saving
2023-12-04 21:54:01 +11:00
Andreas Florath
90e1e94530
Merge branch 'python-pillow:main' into ImageStat_getcount_opt 2023-12-04 10:36:21 +01:00
Andreas Florath
ac47b75953
Update src/PIL/ImageStat.py
Simplification of return statement

Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-12-04 10:27:30 +01:00
Hugo van Kemenade
27d7bd10c8 Use list comprehensions to create transformed lists 2023-12-03 21:59:44 +02:00
Andrew Murray
e072a12974 Corrected constant values 2023-12-02 21:36:17 +11:00
Andrew Murray
5aadeb5004 Moved _Tile to ImageFile 2023-12-02 21:36:17 +11:00
Andrew Murray
ab96324c12 Removed support for RGB bitcount 8 2023-12-02 21:36:17 +11:00
Andrew Murray
56b4822294 args may be a string or None 2023-12-02 21:36:17 +11:00
Andrew Murray
662cb229c2 Updated variable name to match tile 2023-12-02 21:36:17 +11:00
Andrew Murray
49578f0059
Merge branch 'main' into improved_dds 2023-12-02 21:35:20 +11:00
Andrew Murray
a6a612c6c5
Merge branch 'main' into fix-alpha-for-overlapping-glyphs 2023-12-02 21:33:29 +11:00
Andrew Murray
96fe0a103b Merge branch 'main' into ImageStat_getextrema_opt 2023-12-02 21:27:36 +11:00
Zach Nagengast
bd2977c518
Update src/PIL/ImageDraw.py
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-12-01 22:56:59 -08:00
Andrew Murray
0e523d9868 Fixed closing file pointer with olefile 0.47 2023-12-02 10:57:16 +11:00
Andreas Florath
7762dd382a Fixed spacing in _getextrema method
Signed-off-by: Andreas Florath <andreas@florath.net>
2023-12-01 18:53:44 +01:00
Andreas Florath
1b8f9d386b Optimize ImageStat.Stat._getextrema function
The optimzed function improves the performance.  The original function
always runs through the complete historgram of length 256 even if it
is possible to exit the loop early (break).

Running some tests I found performance improvements of factor >10
depending on the image.

Signed-off-by: Andreas Florath <andreas@florath.net>
2023-12-01 18:53:44 +01:00
Andreas Florath
e01354a2c8 Added space before colon
Signed-off-by: Andreas Florath <andreas@florath.net>
2023-12-01 18:52:27 +01:00
Andreas Florath
f7d40ce31c Removed functools and operator import which are not needed anymore
Signed-off-by: Andreas Florath <andreas@florath.net>
2023-12-01 18:52:27 +01:00
Andreas Florath
a04c6a27e8 Optimization of ImageStat.Stat._getcount method
The new implementation uses "sum" instead of the construct
"functools.reduce(operator.add, ...)". Test showed that the
new function is about three times faster than the original.
Also it is shorter and easier to read.

Signed-off-by: Andreas Florath <andreas@florath.net>
2023-12-01 18:52:27 +01:00
Hugo van Kemenade
76446ee450
Merge pull request #7524 from cclauss/ruff-rules-C4-PERF102-PIE810-PLR 2023-12-01 17:09:25 +02:00
Andrew Murray
2e8dd3bdca Use int.from_bytes() 2023-12-01 22:56:25 +11:00