Commit Graph

701 Commits

Author SHA1 Message Date
Andrew Murray
3f78ba80f9 Do not require curly bracket in tag name 2023-07-10 22:05:28 +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
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
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
Rozie
43a12542ad
Update Image.show docs to list all viewers used on linux
[ci skip]
Accurate description of how default viewer is chosen
2023-06-23 15:05:28 +03:00
Andrew Murray
cb8956fffb Convert to HSV if mode is HSV in getcolor() 2023-06-22 23:27:45 +10:00
mergify[bot]
561986ee71
Merge pull request #7092 from radarhere/exif_transpose
Added in_place argument to ImageOps.exif_transpose()
2023-06-14 07:24:47 +00:00
Andrew Murray
044de40c93 Document that alpha_only is a keyword-only argument 2023-06-14 11:28:14 +10:00
Andrew Murray
17b19b5668 Merge branch 'main' into apng 2023-06-14 11:26:42 +10:00
Andrew Murray
d7c7b832f1
Highlight code
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-06-14 11:25:42 +10:00
Andrew Murray
bae918280d
Changed alpha_only to keyword-only argument
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-06-14 11:25:12 +10:00
Andrew Murray
8bbd4ada9b Merge branch 'main' into exif_transpose 2023-06-14 09:57:25 +10:00
Andrew Murray
c24c1ccf81 Use "not in"
Co-authored-by: Aarni Koskela <akx@iki.fi>
2023-06-14 08:52:55 +10:00
Andrew Murray
aeb6e9909e Removed unused argument 2023-06-10 15:57:05 +10:00
Ishant Mrinal Haloi
f328383763
Apply suggestions from code review
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-05-14 11:11:56 +05:30
Andrew Murray
59b7a48570 Updated docstrings 2023-05-13 12:24:50 +10:00
Ishant Mrinal Haloi
2db9c68571
Apply suggestions from code review
Co-authored-by: Ondrej Baranovič <3819630+nulano@users.noreply.github.com>
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-05-13 07:32:02 +05:30
Ishant Mrinal Haloi
46708099b1
Apply suggestions from code review
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-05-12 21:56:40 +05:30
Ishant Mrinal Haloi
ccdce1791d rename format to image_format 2023-05-06 10:35:28 +05:30
Ishant Mrinal Haloi
2d841e16c2
Apply suggestions from code review
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2023-05-06 10:31:58 +05:30
Ishant Mrinal Haloi
5377b0735f add _repr_jpg_ for ipython display
Signed-off-by: Ishant Mrinal Haloi <mrinal.haloi11@gmail.com>
2023-05-04 21:43:57 +05:30
Andrew Murray
15ef533df9 Added alpha_only argument to getbbox() 2023-05-02 08:41:18 +10:00
Alexander Piskun
b10379b3c1
Load image before deepcopy(__getstate__)
Signed-off-by: bigcat88 <bigcat88@icloud.com>
2023-04-21 17:42:45 +03:00
Andrew Murray
cc84ff5e7d Note that open() seeks to the start of file objects 2023-04-17 16:10:29 +10:00
Andrew Murray
fe8599c5d6 Use ExifTags 2023-04-16 14:04:39 +10:00
Andrew Murray
2cba9904db Removed _category 2023-04-08 11:48:06 +10:00
Hugo van Kemenade
b25bf5161a Remove Image.coerce_e, deprecated in 9.2.0 2023-04-06 16:11:36 +03:00
Hugo van Kemenade
c8ec15980b Remove constants deprecated in 9.1.0 2023-04-06 16:11:36 +03:00
Hugo van Kemenade
ddc4e90235 Remove im.category and related Image.NORMAL, Image.SEQUENCE, Image.CONTAINER, deprecated in 8.2.0 2023-04-06 16:11:36 +03:00
Yay295
b606da7f0e
add missing word 2023-03-31 07:19:33 -05:00
Andrew Murray
485532c1f3 Mention available pixel types when converting from NumPy 2023-03-31 21:00:28 +11:00
Andrew Murray
e95b55acd4 Document loss of palette when converting to NumPy 2023-03-31 20:48:14 +11:00
Andrew Murray
6a931861fe Load before getting size in __array_interface__ 2023-03-23 10:12:18 +11:00
Andrew Murray
fcc59a4001 Use existing variable names from ImageFile 2023-02-25 16:31:26 +02:00
Aarni Koskela
b6b72170a8 Clarify variable names in Image
Co-authored-by: Yay295 <Yay295@users.noreply.github.com>
2023-02-24 09:59:54 +02:00
Andrew Murray
da38395396
Removed quotes from result in docstring 2023-02-12 21:56:23 +11:00
Andrew Murray
a8e03e4dab Added Exif code examples 2023-02-10 20:11:50 +11:00
pre-commit-ci[bot]
074c6afdc7 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-02-09 04:41:00 +00:00
Vladimir
0eac4f1942
Fix syntax 2023-02-08 20:34:45 -08:00
Vladimir
1656753146
Add docstrings for getixif() and Exif 2023-02-07 22:48:33 -08:00
pre-commit-ci[bot]
24183d652e [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-02-06 19:27:19 +00:00
Andrew Murray
3e37a919b1 Prevent register_open from adding duplicates to ID 2023-01-28 22:43:04 +11:00
Andrew Murray
bf0abdca27 Do not retry past formats when loading all formats for the first time 2023-01-19 08:06:30 +11:00
Andrew Murray
5f9285eea6 Do not retry specified formats if they failed 2023-01-14 23:22:35 +11:00
Hugo van Kemenade
2df4865e42 Use 'key in mydict' instead of 'key in mydict.keys()' 2023-01-08 13:47:46 +02:00
Andrew Murray
d4d981dc9f Updated size parameter descriptions 2023-01-02 08:41:50 +11:00
Andrew Murray
b4347daa3c Merge branch 'main' into enum 2022-12-31 09:37:56 +11:00
Andrew Murray
68fdd2a9e7 Further improve exception traceback readability 2022-12-30 14:24:28 +11:00
Hugo van Kemenade
2ae55ccbda Improve exception traceback readability 2022-12-30 00:07:52 +02:00
Andrew Murray
1e3f3ab596 Do not attempt to read IFD1 if absent 2022-12-29 21:52:09 +11:00
Hugo van Kemenade
1a93e84355
Merge pull request #6798 from radarhere/apply_transparency 2022-12-28 16:49:59 +02:00
Andrew Murray
bcdb208fe2 Restored Image constants, except for duplicate Resampling attributes 2022-12-28 09:44:53 +11:00
Hugo van Kemenade
0934c25686
Merge pull request #6762 from radarhere/exif_hide_offsets 2022-12-23 16:05:21 +02:00
Andrew Murray
9dfba1fe2b Merge branch 'main' into exif_hide_offsets 2022-12-22 09:03:11 +11:00
Andrew Murray
c6d1fddba5 Merge branch 'main' into registered_extensions 2022-12-22 07:45:52 +11:00
Hugo van Kemenade
acdb882aae
Merge pull request #6793 from radarhere/tile 2022-12-21 16:56:41 +02:00
Andrew Murray
2a86d7353f Always initialize all plugins in registered_extensions() 2022-12-19 08:19:15 +11:00
Andrew Murray
5301b86f1c Use snake case 2022-12-14 06:48:36 +11:00
Andrew Murray
f6f622dcee Clarify apply_transparency() docstring 2022-12-12 06:36:27 +11:00
Andrew Murray
4f0b83cc54 Only set tile in ImageFile __setstate__ 2022-12-09 12:29:27 +11:00
Andrew Murray
c2a42655e1 Allow get_child_images to access JPEG thumbnails 2022-12-06 19:30:53 +11:00
Andrew Murray
8ada23ed04 Added IFD1 reading 2022-12-05 09:09:00 +11:00
Andrew Murray
a0326245a2 Removed typo 2022-11-28 08:40:04 +11:00
Andrew Murray
24a5405a9f Added IFD enum 2022-11-28 08:39:56 +11:00
Andrew Murray
3473eb8e7f Added Exif hide_offsets() 2022-11-26 15:44:03 +11:00
Hugo van Kemenade
bb2016794f
Merge pull request #6647 from radarhere/rgb2lab 2022-10-19 10:32:03 +02:00
Hugo van Kemenade
87a9d7197e
Merge pull request #6644 from radarhere/convert 2022-10-19 10:22:00 +02:00
Andrew Murray
a4b257269e Image channel is used when converting PA with an RGBA palette 2022-10-13 20:21:39 +11:00
Hugo van Kemenade
c2efd60e22
Merge pull request #6594 from radarhere/numpy 2022-10-12 12:57:51 +02:00
Andrew Murray
fcd3eef594 Added conversion between RGB/RGBA/RGBX and LAB 2022-10-07 22:33:45 +11:00
Andrew Murray
b8cd3e72a6 Do not attempt normalization if image is already normal 2022-10-07 09:48:56 +11:00
Hugo van Kemenade
f73499e475
Merge pull request #6543 from radarhere/remap_palette 2022-09-21 12:45:26 +03:00
Andrew Murray
d02f91c6da Raise a warning if NumPy will not raise an error during conversion 2022-09-17 20:11:55 +10:00
Hugo van Kemenade
9b53e3b581
Merge pull request #6539 from radarhere/thumbnail
Do not call load() before draft() in Image.thumbnail
2022-09-11 19:15:01 +03:00
Andrew Murray
a36b766d36 Simplified enum references 2022-09-03 20:53:22 +10:00
Andrew Murray
9fa421923c Removed requirement for 256 palette entries 2022-08-28 15:58:30 +10:00
Andrew Murray
38b53a9fd7 Do not call load() before draft() 2022-08-26 20:33:51 +10:00
Andrew Murray
a37593f004 Allow RGB and RGBA values for PA image putpixel 2022-08-14 14:34:42 +10:00
Andrew Murray
f42e255206 Simplified code 2022-07-26 11:58:44 +10:00
Alexander Piskun
6e97da0260
fixing xmp tag orientation generated by exiftool 2022-07-26 00:30:32 +03:00
Tim Gates
dfa6655bdd
docs: fix simple typo, unpredicatable -> unpredictable
There is a small typo in src/PIL/Image.py.

Should read `unpredictable` rather than `unpredicatable`.

Signed-off-by: Tim Gates <tim.gates@iress.com>
2022-07-16 19:04:42 +10:00
Andrew Murray
300f6c8a59 Document where to find other codecs 2022-07-04 19:33:21 +10:00
Andrew Murray
e5046b1057 Reverted to __array_interface__ with the release of NumPy 1.23 2022-06-24 23:08:36 +10:00
Hugo van Kemenade
8bd7e81b5d
Merge pull request #6352 from radarhere/apply_transparency
Added apply_transparency()
2022-06-11 17:58:10 +03:00
Andrew Murray
11be163143 Added apply_transparency() 2022-06-06 22:47:58 +10:00
Andrew Murray
4c8aff9798 Allow remapping P images with RGBA palettes 2022-06-06 00:12:48 +10:00
Hugo van Kemenade
b261e17907
Merge pull request #6335 from radarhere/exif 2022-06-01 16:36:03 +03:00
Hugo van Kemenade
27f5c4d8fb
Merge pull request #6176 from radarhere/gif_transparency
Improve transparency handling when saving GIF
2022-05-27 08:31:37 +02:00
Andrew Murray
b1885779a9 Once exif data is parsed, do not reload unless it changes 2022-05-27 07:54:54 +10:00
Andrew Murray
99f4623a8d Remove transparency if it cannot be remapped 2022-05-21 17:39:37 +10:00
Andrew Murray
46a80d144a Update transparency when remapping the palette 2022-05-21 16:37:47 +10:00
Hugo van Kemenade
2c58c3ee11
Merge pull request #6213 from radarhere/fp 2022-05-19 18:52:55 +03:00
Andrew Murray
80782bba9b
Merge pull request #6254 from benrg/affine-transform
Support more affine expression forms in im.point()
2022-05-19 21:06:04 +10:00
Yulv-git
a0fa540b0b Fix some typos. 2022-05-14 12:46:46 +08:00
Andrew Murray
ef8fd7f8b9 Populate Python palette in fromarray() 2022-05-09 18:50:54 +10:00
Ben Rudiak-Gould
88f46f3c99 Add a comment 2022-05-03 13:42:04 -07:00
Andrew Murray
46802d5def Removed unused import and restored existing checks (#1)
* Removed unused import

* Restored existing checks

* Restored coerce_e, _E and data property

* Deprecated coerce_e

Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
2022-05-03 13:05:39 -07:00
Ben Rudiak-Gould
4e12ccc63e Support more affine expression forms in Image.point
In modes I and F, Image.point only supported affine expressions of the
forms (lambda x:) x * a, x + a, and x * a + b. Expressions like 1 - x
had to be written x * -1 + 1.

This rewrite, though still limited to affine transformations, supports
far more expression forms, including 1 - x, (2 * x + 1) / 3, etc.
2022-05-03 13:05:39 -07:00
Andrew Murray
bcded33cee
Merge pull request #6195 from hugovk/cleanup
Cleanup: various
2022-04-26 18:51:44 +10:00
Andrew Murray
5d4258e72b Simplified index slicing 2022-04-25 22:52:29 +10:00
Sumanth
f77aabf281
Update Image.py docstrings.
Update Image.py file with  a typo in effect_mandelbrot method.
The Typo was in docstrings of the effect_mandelbrot method in Image module of PIL.
2022-04-24 18:42:37 +05:30
Andrew Murray
e62449f94c Added DeferredError to _fp 2022-04-17 12:14:53 +10:00
Andrew Murray
4e075adcc5 Merged _close_fp into close and __exit__ 2022-04-17 12:13:58 +10:00
Andrew Murray
2ae52552f7 Renamed __fp to _fp 2022-04-17 12:13:58 +10:00
Andrew Murray
35fbf22250
Merge branch 'main' into cleanup-names 2022-04-16 19:49:40 +10:00
Andrew Murray
535c45717f
Merge pull request #6184 from hugovk/deprecations-helper
Add deprecations helper
2022-04-16 18:58:46 +10:00
Hugo van Kemenade
136d1a89df
Fix deprecation warning
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2022-04-15 12:08:15 +03:00
Hugo van Kemenade
7fa92c67b1 [Private] class names should be CamelCase 2022-04-10 23:55:16 +03:00
Hugo van Kemenade
d241e38120 [Private] function names should be snake_case 2022-04-10 23:55:16 +03:00
Hugo van Kemenade
830da5c41e Rewrite dict creation as dict literal for better performance 2022-04-10 23:39:54 +03:00
Hugo van Kemenade
63f64de8b5
Merge pull request #6188 from radarhere/point 2022-04-08 20:05:30 +03:00
Andrew Murray
0b5cdba431 Load before getting size in resize() 2022-04-08 19:11:27 +10:00
Andrew Murray
42f67d184a Round lut values where necessary 2022-04-07 08:58:57 +10:00
Hugo van Kemenade
4cb8e4b3fa Add deprecations helper 2022-04-06 13:19:52 +03:00
Andrew Murray
910a29fb92 Load image before performing size calculations in thumbnail() 2022-04-06 11:19:39 +10:00
Hugo van Kemenade
9134f07615
Merge pull request #6134 from radarhere/created_cleanup
If an error occurs after creating a file, remove the file
2022-03-24 08:08:36 +02:00
Hugo van Kemenade
3cce863ec8
Merge pull request #6124 from radarhere/exif 2022-03-23 17:01:22 +02:00
Andrew Murray
be9ee98631 Removed period before colon 2022-03-19 17:48:31 +11:00
Andrew Murray
71c30ed266 If an error occurs after creating a file, remove the file 2022-03-14 23:33:45 +11:00
Andrew Murray
07210e9425 Handle EXIF data truncated to just the header 2022-03-12 08:23:40 +11:00
Hugo van Kemenade
515957b2ac
Merge pull request #6097 from radarhere/bigtiff 2022-03-11 23:05:41 +02:00
Hugo van Kemenade
29960c6610
Merge pull request #6108 from radarhere/none 2022-03-10 17:36:13 +02:00
Hugo van Kemenade
d0a33addc5
Merge pull request #6086 from radarhere/l_gif 2022-03-10 17:35:00 +02:00
Andrew Murray
397a940995
Merge pull request #6094 from radarhere/decoder
Improved codec documentation
2022-03-07 08:01:31 +11:00
Andrew Murray
c27519960f Check if self.im is not None 2022-03-03 22:10:19 +11:00
Andrew Murray
de968dd920 Document that histogram() uses 256 bins per channel 2022-03-02 21:21:25 +11:00
Andrew Murray
7d3274518d Allow LA to be used as a mask in paste() 2022-03-01 21:05:42 +11:00
Andrew Murray
e2b007f0c2 Use transparency info key when converting to LA 2022-03-01 20:25:25 +11:00
Andrew Murray
2b9cc3ccc5 Documented writing your own encoder in C 2022-03-01 16:34:21 +11:00
Andrew Murray
fc7319318e Added BigTIFF reading 2022-03-01 09:23:12 +11:00
Andrew Murray
7aa49741c6 Merge branch 'main' into getpalette 2022-02-20 23:52:20 +11:00
Andrew Murray
da451e5bea Record the version the rawmode argument was added 2022-02-19 22:55:23 +11:00
Hugo van Kemenade
de06aba8f1
Merge pull request #6068 from radarhere/quantize
Changed quantize default dither to FLOYDSTEINBERG
2022-02-19 11:24:17 +02:00
Hugo van Kemenade
e0afe932a1
Merge pull request #6057 from radarhere/mode_conv
Merged _MODE_CONV typ into ImageMode as typestr
2022-02-19 10:13:36 +02:00
Andrew Murray
7538864839 Changed quantize default dither to FLOYDSTEINBERG 2022-02-19 10:49:46 +11:00
Hugo van Kemenade
1ec7be9a87
Merge pull request #6060 from radarhere/palette
Consider palette size when converting and in getpalette()
2022-02-18 23:31:56 +02:00
Hugo van Kemenade
07741c9315
Merge pull request #5954 from radarhere/enum 2022-02-18 15:53:41 +02:00
Andrew Murray
6be87277f7 Allow rawmode None to return the palette in the current mode 2022-02-17 10:35:13 +11:00
Andrew Murray
852859476b Added rawmode argument to getpalette() 2022-02-17 10:15:03 +11:00
Andrew Murray
948c064b28 Allow getpalette() to return less than 256 colors 2022-02-16 09:56:13 +11:00
Andrew Murray
fbd23bbf28 Clarified code 2022-02-15 22:30:33 +11:00
Andrew Murray
902e3812a8 Use ternary operator 2022-02-15 22:30:33 +11:00
Andrew Murray
a2313be894 Merged _MODE_CONV typ into ImageMode as typestr 2022-02-15 18:01:02 +11:00
Andrew Murray
95c17a8334 Replaced _MODE_CONV extra with bands length 2022-02-15 17:39:56 +11:00
Andrew Murray
9cdb0508b6 Attach RGBA palettes from putpalette() when suitable 2022-02-14 20:28:47 +11:00
Andrew Murray
b38a67fa12
Merge branch 'main' into enum 2022-02-10 09:52:24 +11:00
Hugo van Kemenade
0a49ec1cc0
Merge pull request #5891 from shamrin/stable-jupyter-text-output
Keep IPython/Jupyter text/plain output stable
2022-01-23 10:29:50 +02:00
Andrew Murray
591231bbb4
Changed error wording
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2022-01-21 08:19:27 +11:00
Andrew Murray
af90dd773b Raise an error when performing a negative crop 2022-01-18 16:38:00 +11:00
Andrew Murray
ed8073e846 Deprecated constants in favour of enums 2022-01-15 10:07:07 +11:00
Andrew Murray
f8e4e9c2dd Added enums 2022-01-15 09:02:31 +11:00
Andrew Murray
b5160591bc Return an empty bytestring from tobytes() for an empty image 2022-01-07 16:29:38 +11:00
Hugo van Kemenade
e077229d7a Remove readonly from Image.__eq__ 2022-01-04 11:32:15 +02:00
Andrew Murray
cdb0fba2ed Removed redundant part of condition 2021-12-30 11:45:40 +11:00
Hugo van Kemenade
17ec8b5c98
Merge pull request #5879 from radarhere/quantize
Limit quantized palette to number of colors
2021-12-28 10:08:54 +02:00
Andrew Murray
020308a7be Clarified that the sequence object for putdata() should be flattened 2021-12-28 09:38:41 +11:00
Andrew Murray
0af91de452 Image.NONE is only used for resampling and dithers 2021-12-27 12:27:06 +11:00
pre-commit-ci[bot]
56d630294c [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2021-12-15 20:39:43 +00:00
Alexey Shamrin
b3cb55f823
keep IPython/Jupyter text/plain output stable 2021-12-15 22:35:32 +02:00
Andrew Murray
ec198899f6 Limit quantized palette to number of colors 2021-12-11 16:23:37 +11:00
Andrew Murray
cea84e6b2d Improved explanation of fromarray "mode" parameter 2021-11-23 20:35:35 +11:00
Andrew Murray
83c42fcabd Do not redeclare class each time when converting to NumPy 2021-11-20 10:13:10 +11:00
Hugo van Kemenade
36eb97d3c0
Merge branch 'main' into rm-3.6 2021-10-25 12:05:05 +03:00
Hugo van Kemenade
31a96b9c9b Upgrade Python syntax with pyupgrade --py36-plus and format with Black 2021-10-19 15:34:52 +03:00
Hugo van Kemenade
716a0baf74 Drop support for EOL Python 3.6 2021-10-19 15:34:52 +03:00
Hugo van Kemenade
6e310e3e2e Update expected Pillow 10 release date: 2023-07-01 2021-10-18 15:48:49 +03:00
Andrew Murray
83864b01cf Removed Image.show command parameter 2021-10-18 11:08:51 +11:00
Andrew Murray
499040491b Removed Image._showxv 2021-10-18 11:06:06 +11:00
Andrew Murray
cd50d468ba Removed PILLOW_VERSION 2021-10-18 11:05:53 +11:00
Andrew Murray
0dba28613b Copy Python palette to new image in quantize() 2021-08-31 00:33:10 +10:00
Hugo van Kemenade
ea4263c448
Merge pull request #5634 from radarhere/putpalette
putpalette() rawmode may be modes that can be unpacked to RGB
2021-08-13 13:19:50 +03:00
Hugo van Kemenade
3d35e5458f
Merge pull request #5606 from radarhere/convert_transparency 2021-08-13 13:18:39 +03:00
Hugo van Kemenade
afebfcb096
Merge pull request #5647 from radarhere/transform_palette 2021-08-13 13:18:00 +03:00
Hugo van Kemenade
2e5ce839ba
Merge pull request #5633 from radarhere/save_path
Corrected pathlib.Path detection when saving
2021-08-06 17:15:15 +03:00
Hugo van Kemenade
3307bf691f
Merge pull request #5594 from radarhere/convert
If default conversion from P is RGB with transparency, convert to RGBA
2021-08-06 14:08:38 +03:00
Andrew Murray
d1815377b8 Copy palette to new image in transform() 2021-07-31 22:49:16 +10:00
Andrew Murray
438c3cc097 Speed up rotating square images by 90 or 270 degrees 2021-07-30 19:57:09 +10:00
Andrew Murray
89ab20fd15 putpalette() rawmode may be modes that can be unpacked to RGB 2021-07-25 16:32:59 +10:00
Andrew Murray
4038a287ee Corrected pathlib.Path detection when saving 2021-07-24 14:21:33 +10:00
Andrew Murray
97e0cb85ee Keep transparency when converting from P to LA or PA 2021-07-12 22:55:12 +10:00
Andrew Murray
fdfa9e8521 If default conversion from P is RGB with transparency, convert to RGBA 2021-07-08 17:08:11 +10:00
Andrew Murray
9688507193 Removed variable 2021-07-05 23:02:26 +10:00
Thomas Viehmann
8d1b433c76
Use numpy.array with dtype
Thank you @radarhere.

Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-07-01 14:08:51 +02:00
Thomas Viehmann
1c03526b65 Make Image.__array__ take optional dtype argument
This is required by the numpy protocol.
2021-07-01 13:09:40 +02:00
Andrew Murray
cab9179a85
Merge pull request #5315 from radarhere/simplified
Simplified code
2021-06-30 19:24:19 +10:00
Andrew Murray
0aa8bd00e7 Added warning if defusedxml is not found 2021-06-30 11:29:13 +10:00
Andrew Murray
d9d811ff21 Replaced xml.etree.ElementTree with defusedxml.ElementTree 2021-06-30 11:28:44 +10:00
Andrew Murray
41b58f4b16 Replaced xml.etree.ElementTree with re 2021-06-30 11:28:40 +10:00
Hugo van Kemenade
50302231ed
Merge pull request #5552 from radarhere/palette 2021-06-28 19:01:54 +03:00
Hugo van Kemenade
b5c4b9afe0
Merge pull request #5455 from radarhere/xmp 2021-06-28 18:43:04 +03:00
Hugo van Kemenade
6d94376d1f
Merge pull request #5416 from radarhere/tiff_exif
Allow getexif() to access TIFF tag_v2 data
2021-06-28 18:12:17 +03:00
Andrew Murray
1ee30ded0b Fixed reloading palette 2021-06-28 22:27:05 +10:00
Andrew Murray
6db0e96102 Ensure image is loaded in remap_palette 2021-06-28 20:12:22 +10:00
Andrew Murray
804183c248 Only use an RGBA palette for images with an alpha channel 2021-06-27 18:29:02 +10:00
Andrew Murray
450382f574 Do not use raw ImagePalette 2021-06-27 15:09:39 +10:00
Andrew Murray
59a3e3bc60 Rearranged code to limit line length 2021-06-23 19:37:56 +10:00
Andrew Murray
9192a33b38 Removed unnecessary load() 2021-06-23 19:29:02 +10:00
Andrew Murray
8210645e4b If all 256 colors are in use, then there is no need for an additional color for background or transparency 2021-06-23 19:28:46 +10:00
Andrew Murray
fa559277fb When allocating a new color, repurpose an unused index if necessary 2021-06-23 19:27:08 +10:00
Andrew Murray
4d36feefc7 Set palette to be empty by default 2021-06-23 19:22:21 +10:00
Andrew Murray
aa4489c993 Keep palette the same length 2021-06-19 09:31:46 +10:00
Andrew Murray
f45d2e296d Ensure palette string matches RGB mode 2021-06-19 09:16:05 +10:00
Andrew Murray
cd31dae0d1 Added getxmp() for PNG 2021-06-12 13:57:14 +10:00
Hugo van Kemenade
3cbf4d5ef7
Merge pull request #5379 from radarhere/numpy
Allow converting an image to a numpy array to raise errors
2021-05-20 15:09:02 +03:00
Andrew Murray
3795772187 Use python3 2021-05-08 12:37:06 +10:00
Andrew Murray
0f68e63793 Allow for sys.stdout.buffer to be missing 2021-05-03 18:07:05 +10:00
Andrew Murray
fae9afe351 Replace sys.stdout with sys.stdout.buffer when saving 2021-04-29 21:35:57 +10:00
Andrew Murray
622ba122ce Added Exif load_from_fp method to get TIFF tag_v2 data 2021-04-29 21:21:55 +10:00
Andrew Murray
7c0344bb99 For special image modes, revert default resize resampling to NEAREST 2021-04-17 12:18:42 +10:00
Andrew Murray
77a8a53a94 Allow converting an image to a numpy array to raise errors 2021-04-03 13:20:58 +11:00
Andrew Murray
2c8684c525 Moved getxmp() into JpegImageFile 2021-04-01 22:28:37 +11:00
Hugo van Kemenade
6812205f18
Merge pull request #5144 from UrielMaD/feature_xmp 2021-04-01 12:44:47 +03:00
Andrew Murray
80878fa4c6 Merge branch 'master' into modes 2021-03-31 18:58:11 +11:00
Andrew Murray
0a56d9b287
Merge branch 'master' into simplified 2021-03-29 19:37:55 +11:00
Hugo van Kemenade
e405ab300b
Merge pull request #5351 from radarhere/categories 2021-03-28 14:34:50 +03:00
Andrew Murray
f799915d6f
Merge pull request #5304 from nulano/5300
Do not premultiply alpha when resizing with Image.NEAREST resampling
2021-03-28 16:02:01 +11:00
Andrew Murray
71cd97a519 Added deprecation warnings 2021-03-28 15:51:28 +11:00
Hugo van Kemenade
5e1d304769
Merge pull request #5353 from radarhere/quantize_attributes
Use quantization method attributes
2021-03-27 20:01:49 +02:00
nulano
49fa3656b1 do not premultiply alpha when resizing with Image.NEAREST resampling 2021-03-23 13:16:20 +01:00
Andrew Murray
4e0bc3bab6 Use quantization method attributes 2021-03-22 19:44:56 +11:00
Andrew Murray
0ff9879171 Document supported quantization methods for RGBA images 2021-03-22 19:21:31 +11:00
Andrew Murray
ab56edb49f Documented default quantization method 2021-03-22 19:18:36 +11:00
Andrew Murray
36a4b055bb Updated comments 2021-03-15 12:50:30 +11:00
Andrew Murray
68719fe6ea
Merge branch 'master' into exif 2021-03-15 12:41:45 +11:00
Andrew Murray
c52b45df62 Removed automatic retrieval of GPS IFD 2021-03-15 12:33:06 +11:00
Andrew Murray
ca204ba04f Removed Image._MODEINFO 2021-03-07 14:21:27 +11:00
Andrew Murray
e437a8f981 Do not edit text of mode strings 2021-03-07 13:14:07 +11:00
Andrew Murray
8206f14419 Simplified code 2021-03-06 21:44:31 +11:00
Andrew Murray
690cf9ebe2 Allow alpha_composite destination to be negative 2021-03-06 20:54:21 +11:00
Andrew Murray
e763f8f2be Save interop IFD when converting Exif to bytes 2021-02-22 07:47:59 +11:00
Andrew Murray
b25bc40009 Simplified code
Co-authored-by: Konstantin Kopachev <kkopachev@popsugar.com>
2021-02-22 07:47:05 +11:00
Andrew Murray
4b14f0102d Save base IFDs when converting Exif to bytes 2021-02-22 07:47:05 +11:00
Andrew Murray
faf8fad76d Stopped flattening EXIF IFD into getexif() 2021-02-22 07:47:05 +11:00
Andrew Murray
587e073dac Moved case transformation before initialization check 2021-02-05 20:28:34 +11:00
Piolie
0c1675a143 Make formats parameter in Image.open accept aNy cAsE 2021-02-04 22:47:53 -03:00
Andrew Murray
c10bf8d9a7 Improved docstring [ci skip] 2021-01-31 13:14:14 +11:00
Mark Laagland
e6ff82b9ab Small fix for convert documentation of Image.py
[ci skip]
2021-01-24 22:49:27 +01:00
Andrew Murray
4eccadced4 Document that getcolors() returns colors in the image mode [ci skip] 2021-01-09 21:30:16 +11:00
Uriel Martinez
7f5dbb7c9b
Update src/PIL/Image.py
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-01-02 21:57:24 -06:00
Andrew Murray
3c482b1b0b Changed list of single item dictionaries to dictionary 2020-12-30 23:10:29 +11:00
Andrew Murray
ad9614be7a Renamed variable 2020-12-30 22:46:49 +11:00
Alexander
1ff61bcaa6 use offset for all binary input functions instead of slicing 2020-12-30 19:10:50 +11:00
Alexander
3757b8c748 remove extra i8 calls where input is proved bytes[] or int 2020-12-30 19:04:11 +11:00
Hugo van Kemenade
85d61ca7d5
Merge pull request #5139 from radarhere/repr_png
Added exception explaining that _repr_png_ saves to PNG
2020-12-29 12:43:22 +02:00