Commit Graph

2507 Commits

Author SHA1 Message Date
Andrew Murray
e27d7a6f84 Changed has_transparency_data() to property 2023-09-26 20:14:22 +10:00
Andrew Murray
1c30809245 Allow for LA or PA in the future 2023-09-26 20:10:52 +10:00
Andrew Murray
faa66eaa6c
Added type hint
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-09-26 20:10:12 +10:00
Hugo van Kemenade
507b7d519a Fix LOG011 avoid pre-formatting log messages 2023-09-25 16:45:38 +03:00
Hugo van Kemenade
0d1e83098d Add pyupgrade to pre-commit 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
9de4b72c97 Trailer is not in header, ImageData or itself 2023-09-22 18:26:50 +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
8064adad7a Reduced duplicate code 2023-09-22 17:58:11 +10:00
Andrew Murray
4c9c7636be Merge branch 'main' into parse-eps-trailer 2023-09-22 16:16:26 +10:00
Andrew Murray
616ed35e74 Support reading 8-bit YCbCr TIFF images 2023-09-21 20:53:23 +10:00
Andrew Murray
80dbd3b193 Added ImageOps cover method 2023-09-21 11:54:36 +10:00
Andrew Murray
9632195747 Merge branch 'main' into webp 2023-09-20 22:31:16 +10:00
Andrew Murray
26c4798707 Revert "Merge pull request #7311 from k128/main"
This reverts commit 39d866b17d, reversing
changes made to f39f74fb82.
2023-09-18 20:34:05 +10:00
Andrew Murray
cabfed9137 Describe Image.MIME in register_mime() 2023-09-16 09:34:17 +10:00
Andrew Murray
cee8fd0788 Improved init() and preinit() documentation 2023-09-16 09:34:04 +10:00
Andrew Murray
a84a43528e Added gs_binary to control Ghostscript use on all platforms 2023-09-12 19:46:46 +10:00
Andrew Murray
f225130ee5 Only search for Ghostscript Windows binary when needed 2023-09-12 19:08:30 +10:00
Andrew Murray
1217b13b9e Handle tag_v2 in TiffImagePlugin 2023-09-11 19:02:17 +10:00
Andrew Murray
d0abab7997 When orientation is applied, delete TIFF tag 2023-09-08 15:05:53 +10:00
Andrew Murray
e195e60ce2 Ensure TIFF has transposed on load before checking orientation 2023-09-08 15:05:48 +10:00
Andrew Murray
ea953c0514 When TIFF applies orientation on load, delete tag from getexif() 2023-09-08 15:05:36 +10:00
pre-commit-ci[bot]
794a1d7ff2 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-09-07 18:36:32 +00:00
nopperl
12d8b439d5 Read bounding box information from the trailer of EPS files if specified 2023-09-07 20:20:35 +02:00
Hugo van Kemenade
faa2375f81
Merge pull request #7357 from radarhere/qoi 2023-09-04 09:55:29 -06:00
Hugo van Kemenade
10d45950ae
Merge pull request #7358 from radarhere/bc5u 2023-09-04 09:54:52 -06:00
Andrew Murray
51a6d45566 Map buffer into (0, 0) image 2023-08-31 16:31:45 +10:00
Andrew Murray
2b9217bba8 Added BC5U reading 2023-08-31 12:13:35 +10:00
Andrew Murray
7bf7ff8217 Use previous pixel alpha for QOI_OP_RGB 2023-08-31 09:27:33 +10:00
Andrew Murray
f9f367fe54
Always cast to a tuple
Co-authored-by: Alexander Karpinsky <homm86@gmail.com>
2023-08-30 07:27:09 +10:00
Andrew Murray
69a81dd867 Convert list to tuple in Python instead of C 2023-08-28 22:43:20 +10:00
Andrew Murray
b1f5ee9043 Added font_size keyword arguments to ImageDraw text methods 2023-08-26 17:01:15 +10:00
Andrew Murray
eccef36948 Added size argument to load_default() 2023-08-26 17:01:01 +10:00
Andrew Murray
1e5aa21fa8 Added improved font to load_default() if FreeType is available 2023-08-26 17:00:34 +10:00
Hugo van Kemenade
c68bf7df8f
Merge pull request #7336 from radarhere/blur 2023-08-25 03:20:16 -06:00
Hugo van Kemenade
d80610822f
Merge pull request #7345 from radarhere/jpeg 2023-08-23 20:33:59 +03:00
Andrew Murray
9c3bc70f66
Use tuples
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-08-22 10:31:28 +10:00
Andrew Murray
dcfce9487e Merge branch 'main' into iptc 2023-08-22 10:14:48 +10:00
Andrew Murray
b37ca350a8 Allow FotoStation tags 2023-08-22 10:13:41 +10:00
Andrew Murray
8b14a67347 Merge branch 'main' into grabclipboard-linux 2023-08-21 23:58:17 +10:00
Andrew Murray
0a28840bc4 Expand buffer size when optimizing or progressive 2023-08-19 14:34:08 +10:00
Andrew Murray
a04ba81e22 bufsize is already increased to MAXBLOCK in ImageFile._save() 2023-08-19 12:37:00 +10:00
TheNooB
e06edcb527
Reformat variable name following PEP8
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-08-12 18:33:36 +08:00
Andrew Murray
9f54a11a9c Improve efficiency when a radius is zero 2023-08-12 18:17:07 +10:00
TheNooB
0b6ab79145
Check session type using environment variable instead of loginctl 2023-08-12 12:51:09 +08:00
Andrew Murray
c167d7a269 Allow GaussianBlur and BoxBlur to accept a sequence of x and y radii 2023-08-12 12:09:20 +10:00
TheNooB
7b157b045a
Use os.getlogin() instead of whoami command for getting username 2023-08-11 21:14:34 +08:00
TheNooB
a8b3feac86
Apply suggestions from code review
Simplify conditional expressions

Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-08-11 21:01:05 +08:00
pre-commit-ci[bot]
164ea2df6f [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-08-11 10:42:12 +00:00
TheNooB
bc658e1791
Add session type check in grabclipboard for Linux 2023-08-11 17:47:36 +08:00
Andrew Murray
39d866b17d
Merge pull request #7311 from k128/main
Read WebP duration after opening
2023-08-11 19:46:49 +10:00
Andrew Murray
bfafa460e3 Allow "loop=None" when saving 2023-08-09 10:31:34 +10:00
Andrew Murray
649ad8a804
Merge pull request #7323 from radarhere/pdf_p_transparency
Fixed transparency when saving P mode images to PDF
2023-08-08 21:30:23 +10:00
Andrew Murray
15930be644 Use "is" when comparing types 2023-08-08 08:44:03 +10:00
Andrew Murray
5c59807216 Removed unused decoders 2023-08-07 13:54:11 +10:00
Andrew Murray
a70ea82eb5 Write P transparency as SMask 2023-08-07 13:53:19 +10:00
Andrew Murray
c9147c9c85 Moved writing of object into separate function 2023-08-06 22:14:32 +10:00
Andrew Murray
6bd3ed439a Ignore IPTC field that is only zero bytes 2023-08-04 23:54:48 +10:00
Andrew Murray
c5b4ad94e8 Do not set ColorSpace for JPXDecode since it is optional 2023-08-04 18:47:28 +10:00
Andrew Murray
bc11b2d6a9 Set SMaskInData to 1 for PDFs with alpha 2023-08-04 18:46:58 +10:00
Hugo van Kemenade
95257dff87
Merge pull request #7299 from radarhere/pdf 2023-08-04 11:43:09 +03:00
Andrew Murray
6ca38552c9 Do not set ColorSpace for JPXDecode since it is optional 2023-08-03 22:07:36 +10:00
Andrew Murray
ddfb7ef14b Do not set BitsPerComponent for JPXDecode since it is ignored 2023-08-03 22:05:11 +10:00
Andrew Murray
022e650d18 Set SMaskInData to 1 for PDFs with alpha 2023-08-03 19:11:35 +10:00
Andrew Murray
6115d5957f _decoder.get_next() may return None 2023-08-01 19:16:28 +10:00
Andrew Murray
230a2e3a33 If "reset" is always true, then the argument can be removed 2023-08-01 19:15:15 +10:00
k128
15e5229030
Update WebPImagePlugin.py 2023-07-31 15:32:05 -04:00
pre-commit-ci[bot]
2f5493a5f0 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-07-31 19:19:57 +00:00
k128
27a0339d64
Update WebPImagePlugin.py
Automatically load duration
2023-07-31 15:14:22 -04:00
Hugo van Kemenade
c1c474a1f2
Merge pull request #7307 from radarhere/mode 2023-07-31 17:14:10 +03:00
Andrew Murray
07038d7e89
Merge pull request #7266 from mtreinish/handle-repr-exceptions
Handle exceptions in _repr_jpeg_ and _repr_png_
2023-07-31 11:42:44 +10:00
Andrew Murray
9979a822c7 Changed Image mode property to be read-only by default 2023-07-29 09:28:18 +10:00
Andrew Murray
07623d1a7c
Merge pull request #7305 from hugovk/docs-clarify-textlength-return
Docs: Clarify that a single value is returned, and depends on the text direction
2023-07-26 08:16:34 +10:00
Hugo van Kemenade
62cd236d1a Clarify that a single value is returned, and depends on the text direction 2023-07-25 12:31:58 +03:00
Andrew Murray
2db354af43 Allow saving I;16B images as PNG 2023-07-24 17:17:15 +10:00
Andrew Murray
e5c94eced2 Simplified code 2023-07-23 16:26:42 +10:00
Andrew Murray
0a0a3fc51f Added saving LA images as PDFs 2023-07-22 20:16:45 +10:00
Andrew Murray
fd310512b9 Set C palette to be empty by default 2023-07-17 23:04:43 +10:00
Andrew Murray
a682ceaf47 Do not use transparency if it has been removed when normalizing mode 2023-07-13 15:20:44 +10:00
Andrew Murray
3f78ba80f9 Do not require curly bracket in tag name 2023-07-10 22:05:28 +10:00
Andrew Murray
2488167f33 Allow for zero-byte padding at end of XMP data 2023-07-10 22:00:30 +10:00
Matthew Treinish
9517feccd9
Update src/PIL/Image.py
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-07-06 09:00:00 -04:00
Matthew Treinish
6d440ac995
Handle exceptions in _repr_jpeg_ and _repr_png_
In 10.0.0 a _repr_jpeg_ implementation was added to the Image object to
enable the use of display_jpeg() in IPython environments. However, in
some cases the implementation of this method could result in an
exception being raised while trying to generate the jpeg data. The best
example is if the image data is in an RGBA format as a result of the
object being created by opening a PNG file. In this case trying to save
the Image object as a jpeg will error because the jpeg format can't
represent the transparency in the alpha channel. This results in an
exception being raised in the IPython/Jupyter context when outputing the
image object. However, in cases like this IPython allows the repr
methods to return None to indicate there is no representation in that
format available. [1] This commit updates the _repr_png_ and _repr_jpeg_
methods to catch any exception that might be raised while trying to
generate the image data. If an exception is raised we treat that as not
being able to generate image data in that format and return None
instead.

Related to #7259

[1] https://ipython.readthedocs.io/en/stable/config/integrating.html#custom-methods
2023-07-06 08:42:37 -04:00
Andrew Murray
1ffe3354d7 10.1.0.dev0 version bump 2023-07-02 00:59:40 +10:00
Andrew Murray
6e28ed1f36 10.0.0 version bump 2023-07-01 22:08:11 +10:00
Andrew Murray
74859e965d Moved MAX_IMAGE_PIXELS check to Python 2023-07-01 20:52:44 +10:00
Andrew Murray
39a3b1d83e Fixed deallocating mask images 2023-07-01 18:09:27 +10:00
Andrew Murray
d398fedb9d
Added underscores for readability
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-07-01 07:25:18 +10:00
Andrew Murray
1fe1bb49c4 Added ImageFont.MAX_STRING_LENGTH 2023-06-30 23:32:26 +10:00
Hugo van Kemenade
0ac3677b56
Merge pull request #7199 from radarhere/tiff_close 2023-06-30 09:27:26 +03:00
Hugo van Kemenade
9abef1ad0b
Merge pull request #7226 from radarhere/getcolor 2023-06-30 09:26:51 +03:00
Hugo van Kemenade
be4bfaac9e
Merge pull request #7123 from radarhere/apng 2023-06-30 09:24:20 +03:00
Andrew Murray
0740499151 Prioritise speed in _repr_png_ 2023-06-30 09:05:59 +10:00
Hugo van Kemenade
1174a9e7f4
Merge pull request #7097 from radarhere/seek
`Image.open()` seeks to the start of file objects
2023-06-30 01:05:47 +03:00
Andrew Murray
8a36b0fc2d Deprecate PyAccess 2023-06-28 20:10:10 +10:00
Andrew Murray
811bfe3658 Do not use CFFI access by default on PyPy 2023-06-28 17:57:02 +10:00
Andrew Murray
8437d98f7f Limit size even if one dimension is zero 2023-06-28 11:43:05 +10:00
Andrew Murray
b0b0798820
Lint fix 2023-06-23 22:22:33 +10:00