Andrew Murray
69a81dd867
Convert list to tuple in Python instead of C
2023-08-28 22:43:20 +10:00
Hugo van Kemenade
c1c474a1f2
Merge pull request #7307 from radarhere/mode
2023-07-31 17:14:10 +03:00
Andrew Murray
9979a822c7
Changed Image mode property to be read-only by default
2023-07-29 09:28:18 +10:00
Andrew Murray
e5c94eced2
Simplified code
2023-07-23 16:26:42 +10:00
Andrew Murray
fd310512b9
Set C palette to be empty by default
2023-07-17 23:04:43 +10:00
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