Commit Graph

2903 Commits

Author SHA1 Message Date
Andrew Murray
2a7e603ae2 Defer parsing of palette into colors 2022-09-09 22:28:30 +10:00
Andrew Murray
bce9df62f1
Rearranged text
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2022-09-06 16:19:47 +10:00
Andrew Murray
7359af91f0
Rearranged text
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2022-09-06 16:18:55 +10:00
Andrew Murray
209ec9da47 Use target 2022-09-06 06:43:52 +10:00
Andrew Murray
ee5de25f87 Apply transparency to P images before passing to tkinter.PhotoImage 2022-09-05 11:58:45 +10:00
Andrew Murray
780de80e5c Added examples for updating code 2022-09-03 22:23:05 +10:00
Andrew Murray
a36b766d36 Simplified enum references 2022-09-03 20:53:22 +10:00
Hugo van Kemenade
7158816bc8
Merge pull request #6552 from radarhere/constants 2022-08-31 18:06:00 +03:00
Hugo van Kemenade
0b5c150805
Merge pull request #6497 from radarhere/convert 2022-08-31 17:09:38 +03:00
mergify[bot]
762c29c711
Merge pull request #6504 from radarhere/pyaccess_pa
Allow RGB and RGBA values for PA image putpixel
2022-08-31 13:12:06 +00:00
Andrew Murray
d06cd7073d
Merge pull request #6551 from nulano/interp
Removed support for PyPy before Python 3.6
2022-08-31 21:27:58 +10:00
Andrew Murray
2eca2989a2 Merge branch 'main' into pyaccess_pa 2022-08-31 20:56:38 +10:00
Hugo van Kemenade
b953f73548
Merge pull request #6518 from radarhere/pdf_ccittfaxdecode 2022-08-31 13:55:46 +03:00
Hugo van Kemenade
b607e834a9
Merge pull request #6510 from radarhere/buffer 2022-08-31 13:50:35 +03:00
Hugo van Kemenade
6697de1160
Merge pull request #6493 from radarhere/bytes_ascii 2022-08-31 13:46:36 +03:00
Andrew Murray
b3dcf17886 Use constants 2022-08-31 20:09:05 +10:00
Hugo van Kemenade
96441fb3b1
Merge pull request #6499 from radarhere/eps 2022-08-30 17:11:13 +03:00
nulano
54c560f611
Removed support for PyPy before Python 3.6 2022-08-30 14:12:48 +02:00
Andrew Murray
7b0e56bb21 Removed support for Python before interpaddr() 2022-08-30 09:21:24 +10:00
Andrew Murray
841ba4a940 Simplified code 2022-08-30 08:08:01 +10:00
Andrew Murray
e7fab6abf4 Fixed remapping to palette with duplicate entries 2022-08-29 23:20:31 +10:00
Andrew Murray
9fa421923c Removed requirement for 256 palette entries 2022-08-28 15:58:30 +10:00
Andrew Murray
e613271776 Fixed typo 2022-08-27 18:48:47 +10:00
Andrew Murray
38b53a9fd7 Do not call load() before draft() 2022-08-26 20:33:51 +10:00
Ondrej Baranovič
18bd77bbc0
simplify code, make test more generic 2022-08-25 19:45:33 +10:00
nulano
ced381edaa
Document ImageDraw attributes 2022-08-25 00:48:19 +02:00
Andrew Murray
f9d3ee0f48 Round position in pad() 2022-08-24 22:56:19 +10:00
Bibin Hashley
be9224f285 ImageOps.contain function finding new size issue 2022-08-23 02:57:03 +05:30
Andrew Murray
3b4ea7c602 Do not use CCITTFaxDecode filter if libtiff is not available 2022-08-22 19:57:33 +10:00
Andrew Murray
54b01f55f8 Round box position to integer when pasting embedded color 2022-08-22 12:14:54 +10:00
Andrew Murray
c463ef4fe3 Fallback to not using mmap if buffer is not large enough 2022-08-17 21:13:09 +10:00
Andrew Murray
8a60db322f Copy palette when converting from P to PA 2022-08-17 17:05:53 +10:00
Andrew Murray
b84816c02f Added pa2p 2022-08-16 22:45:55 +10:00
Hugo van Kemenade
87ecd01fc0
Merge pull request #6484 from radarhere/imagedraw_font 2022-08-15 08:08:53 +03:00
Andrew Murray
a37593f004 Allow RGB and RGBA values for PA image putpixel 2022-08-14 14:34:42 +10:00
Andrew Murray
5d4fbdfab4 Simplified code 2022-08-13 19:46:46 +10:00
Andrew Murray
99e401123b Corrected palette size when saving 2022-08-13 19:46:07 +10:00
Andrew Murray
7e1a0ca544 Open 1 bit EPS in mode 1 2022-08-13 18:32:29 +10:00
Andrew Murray
3459120732 Fixed writing bytes as ASCII tag 2022-08-11 20:46:58 +10:00
Andrew Murray
8135bd5cfb Added documentation 2022-08-11 10:35:44 +10:00
Hugo van Kemenade
92b0f2c919
Merge pull request #6476 from radarhere/exif 2022-08-09 15:08:54 +03:00
Hugo van Kemenade
26b7930bfc
Merge pull request #6485 from radarhere/font
Note to Windows users that FreeType will keep the font file open
2022-08-07 19:14:09 +03:00
Hugo van Kemenade
ae14255c34
Merge pull request #6470 from radarhere/pdf_ccittfaxdecode
Save 1 mode PDF using CCITTFaxDecode filter
2022-08-07 19:11:37 +03:00
Andrew Murray
c24b6ef4f0 Document workaround 2022-08-06 23:01:36 +10:00
Andrew Murray
42a5a743c1 Note to Windows users that FreeType will keep the font file open 2022-08-06 22:48:10 +10:00
Andrew Murray
04d9761316 Changed "font" to class variable 2022-08-06 17:29:44 +10:00
Andrew Murray
e77a7b6b4f Added support for RGBA PSD images 2022-08-05 23:29:58 +10:00
Andrew Murray
1197e19982 Document that exif_transpose() does not change orientations of 1 2022-08-04 14:19:17 +10:00
Andrew Murray
1112ad67a3 Document that orientation data is removed by exif_transpose() 2022-08-04 14:18:31 +10:00
Andrew Murray
c3cc621c67 Merge branch 'python-pillow-main' 2022-08-02 15:55:21 +10:00
Andrew Murray
2b14d83549 Added strip_size as TIFF encoder argument 2022-08-01 21:41:17 +10:00
Andrew Murray
f5b27f90f7 Save 1 mode PDF using CCITTFaxDecode filter 2022-08-01 20:38:47 +10:00
ShadelessFox
952237d373
Minimize unnecessary code changes 2022-07-31 19:16:25 +03:00
mergify[bot]
363586be6a
Merge pull request #6463 from bigcat88/xmp-tags-orientation
Parse orientation from XMP tag contents
2022-07-30 02:02:50 +00:00
mergify[bot]
87a08e2381
Merge pull request #6457 from REDxEYE/ATI1-2_support
Add support for ATI1/2(BC4/BC5) DDS files
2022-07-27 12:30:52 +00:00
Andrew Murray
4276340074 Sorted formats by n 2022-07-27 21:32:48 +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
Hugo van Kemenade
cd261abbcb
Merge pull request #6455 from radarhere/gif_tile 2022-07-25 10:05:27 +03:00
Hugo van Kemenade
dd20412472
Merge pull request #6444 from radarhere/mpo
Support saving multiple MPO frames
2022-07-24 11:21:46 +03:00
ShadelessFox
3bec5999e0
Rename remaining occurrences of BC6S -> BC6HS 2022-07-23 15:20:35 +03:00
Andrew Murray
5bd893f760 Rename format to BC6H and BC6HS 2022-07-23 14:16:40 +10:00
REDxEYE
2376399150 Add test and test files for ATI1 pixel format and fix image mode for ATI1 2022-07-23 01:02:06 +03:00
REDxEYE
ad2c6a20fe Add support for ATI1/2(BC4/BC5) DDS files
This commit adds support for loading DDS with ATI1 and ATI2 fourcc pixel format
2022-07-23 00:30:27 +03:00
Andrew Murray
8784ee1410 Moved code into separate function 2022-07-22 07:59:30 +10:00
Andrew Murray
0844fb0ed3 Do not clear tile if not updating the image when seeking 2022-07-21 09:05:14 +10:00
ShadelessFox
4b97f88ef8
Code cleanup 2022-07-19 02:19:21 +03:00
ShadelessFox
18a3c249b6
Fix BC6H_SF decoder 2022-07-18 22:24:40 +03:00
REDxEYE
b7715d1600
Fix BC6H_SF decoding error.
Decoding error were caused by additional sign extend call after endpoint
transform, according to khronos documentation, you only suppose to sign
extend endpoints only once, further calls to sign extend mangles
endpoint data.
2022-07-18 22:24:40 +03:00
ShadelessFox
f58c0ea533
Fix BC6 block decoder 2022-07-18 22:24:40 +03:00
Andrew Murray
dea30e4c80 Fixed set_variation_by_name offset 2022-07-18 08:39:23 +10:00
Andrew Murray
2944ff18d6 Support saving multiple MPO frames 2022-07-16 20:02:58 +10: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
9f6a315092 Added ABGR MASK_MODE 2022-07-14 07:25:28 +10:00
Andrew Murray
2b9d48403a Reordered SUPPORTED to match MASK_MODES 2022-07-14 07:08:25 +10:00
Hugo van Kemenade
ec0b9ede09
Merge pull request #6429 from radarhere/psdraw 2022-07-12 13:01:12 +03:00
Andrew Murray
40a0999303 Raise ValueError if PNG sRGB chunk is truncated 2022-07-11 20:02:41 +10:00
Andrew Murray
80c1ef5dcd Simplified rectangle command 2022-07-11 19:38:46 +10:00
Andrew Murray
db1d945ce7 Changed second rectangle parameter to distance from bottom 2022-07-11 18:36:27 +10:00
Andrew Murray
ed98c668ee Fixed PSDraw rectangle 2022-07-11 06:54:23 +10:00
Hugo van Kemenade
b0185e4e48
Merge pull request #6415 from radarhere/doc 2022-07-06 21:01:54 +03:00
Andrew Murray
4f7f5470b1 Fixed typo 2022-07-06 08:30:24 +10:00
Andrew Murray
527eecae80 Fallback to python3 2022-07-05 20:55:56 +00:00
Mark Harfouche
02e90e21f4 Release the GIL when applying matrix conversion to images 2022-07-05 15:13:39 -04:00
Santiago Castro
a0b22d2203
Fix when sys.executable is empty or null 2022-07-04 09:50:47 -07:00
Andrew Murray
300f6c8a59 Document where to find other codecs 2022-07-04 19:33:21 +10:00
Hugo van Kemenade
26e2c7e030 9.3.0.dev0 version bump 2022-07-01 21:29:53 +03:00
Hugo van Kemenade
dc518ac25e 9.2.0 version bump 2022-07-01 16:16:26 +03:00
Andrew Murray
8a6050ee5b Replaced __internal__ argument with warning filters 2022-07-01 14:10:29 +02:00
Andrew Murray
729fe6f8b0 Updated indentation 2022-07-01 19:45:36 +10:00
nulano
ad5271d62f
Document replacements for individual deprecated font methods 2022-06-30 15:03:55 +02:00
Andrew Murray
65020e7c7c Documented deprecation in individual methods 2022-06-30 15:03:12 +02:00
Ondrej Baranovič
838b1f1598
add replacement for getsize_multiline to deprecation warning 2022-06-30 14:22:07 +02:00
pre-commit-ci[bot]
303ec1a95e [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2022-06-30 12:21:43 +00:00
Ondrej Baranovič
f57a9d678c
update TransposedFont.getlength error message
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2022-06-30 14:20:56 +02:00
Andrew Murray
0d91d13a6e Merge branch 'main' into deprecate-getsize 2022-06-30 20:37:37 +10:00
Andrew Murray
d66e730fea
Merge pull request #6376 from nulano/fribidi-no-version
Fixed null check for fribidi_version_info in FriBiDi shim
2022-06-30 19:27:28 +10:00
Andrew Murray
c9f1b35e98 Added GIF decompression bomb check 2022-06-30 12:47:35 +10:00
Hugo van Kemenade
714ff4e397
Merge pull request #6386 from dawidcrivelli/handle_pcf_missing_characters
Handle PCF fonts files with less than 256 characters
2022-06-27 07:59:50 +03:00
Andrew Murray
93805d5257 Limit expected number of characters to nencoding 2022-06-27 14:05:13 +10:00
Andrew Murray
fc497ffe5e
Merge pull request #6378 from raygard/fix_get_optimize
Improved GIF optimize condition
2022-06-27 09:12:20 +10:00
Andrew Murray
847ad8c512 Clarify check that palette is not already at its smallest 2022-06-26 20:58:36 +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
e774be01fe
Merge pull request #6391 from radarhere/pcx
Pad PCX palette to 768 bytes when saving
2022-06-23 09:50:22 +03:00
Hugo van Kemenade
6dd5b2e8c9
Merge pull request #6377 from btrekkie/fix-round-to-palette
Fixed bug with rounding pixels to palette
2022-06-22 12:31:25 +03:00
Andrew Murray
317286d260 Pad palette to 768 bytes 2022-06-22 17:27:49 +10:00
Andrew Murray
db741bf25f Skip remaining characters after IndexError 2022-06-22 16:55:33 +10:00
Hugo van Kemenade
557e293ece
Merge pull request #6361 from radarhere/wayland
Use gnome-screenshot on Linux if available
2022-06-21 18:02:31 +03:00
Dawid Crivelli
f160e698a1 Handle PCF fonts files with missing characters 2022-06-20 16:20:08 +02:00
Andrew Murray
3e8a9b2165 Fixed loading L mode RLE8 images 2022-06-20 21:01:10 +10:00
nulano
93acbcf9e2
add getbbox and getlength to TransposedFont with tests 2022-06-20 02:37:42 +01:00
nulano
1bf87556ef
add textbbox and textlength to ImageDraw2 and update tests 2022-06-19 22:04:57 +01:00
nulano
c854bf8d1c
add getbbox and getlength to basic ImageFont and update related tests 2022-06-19 22:04:56 +01:00
nulano
406fe59242
deprecate font.getsize and related functions 2022-06-19 22:03:34 +01:00
mergify[bot]
8de74b9fab
Merge pull request #6370 from LostBenjamin/patch-1
Fix wrong operator bug in PyCMSError exception message
2022-06-19 13:21:43 +00:00
Andrew Murray
709744432a Optimise palettes with more than 128 colors 2022-06-19 16:47:50 +10:00
pre-commit-ci[bot]
f656711c80 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2022-06-19 00:20:28 +00:00
Ray Gardner
128ed189e5 Improve test in _get_optimize()
Palette can be optimized if number of colors can be reduced by half or more.
2022-06-18 18:07:58 -06:00
William Jacobs
9f9e26522e Fixed bug with rounding pixels to palette
This fixes a bug with rounding pixels to the nearest palette color. Specifically, there is a typo with computing the minimum distance from a palette color to a given cache box. This is causing palette colors to be incorrectly excluded from consideration.
2022-06-18 04:09:41 -04:00
nulano
c2047b8293
fix null check for fribidi_version_info in fribidi shim 2022-06-17 17:13:11 +01:00
Andrew Murray
4d6e5a0d09 Limit tile size to avoid extending outside image 2022-06-16 08:36:43 +10:00
Hugo van Kemenade
959e576dd2 Use f-string 2022-06-15 21:43:18 +03:00
Jingxuan He
b47bcc246f
Fix a potential wrong operator bug 2022-06-15 17:39:37 +02:00
Andrew Murray
1bac1cf6f5 Moved all comments logic into _ignore_comments() 2022-06-14 21:39:55 +10:00
Andrew Murray
c4d51fb268 Added support for PPM arbitrary maxval in plain formats 2022-06-13 19:55:25 +10:00
Andrew Murray
b1ba0909ed
Prefer gnome-screenshot if xdisplay is None
Co-authored-by: Ondrej Baranovič <nulano@nulano.eu>
2022-06-13 09:56:52 +10:00
Andrew Murray
5051a29a4e Merge branch 'main' into plainPPM 2022-06-12 16:11:17 +10:00
Andrew Murray
a48d95061d Use gnome-screenshot on Linux if available 2022-06-12 16:00:31 +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
Hugo van Kemenade
f7ec22f518
Merge pull request #6197 from radarhere/endian
Fixed behaviour change from endian fix
2022-06-10 19:02:54 +03:00
Hugo van Kemenade
3a61c9e95e
Merge pull request #6350 from radarhere/remap_rgba_palette 2022-06-10 18:43:09 +03:00
Andrew Murray
11be163143 Added apply_transparency() 2022-06-06 22:47:58 +10:00
Hugo van Kemenade
418820a1e8
Merge pull request #6341 from radarhere/imagedraw
Only import ImageFont in ImageDraw when necessary
2022-06-05 22:25:10 +03:00
Andrew Murray
4c8aff9798 Allow remapping P images with RGBA palettes 2022-06-06 00:12:48 +10:00
Hugo van Kemenade
38931c1e47
Merge pull request #6278 from radarhere/polygon
Fixed drawing translucent 1px high polygons
2022-06-04 09:34:37 +03:00
Hugo van Kemenade
55d3c07e1d
Merge pull request #6232 from radarhere/colormap 2022-06-01 23:12:13 +03:00
Hugo van Kemenade
37c642338b
Merge pull request #6337 from RedShy/p2pa_images_conversion
Fix "P"->"PA" image conversion
2022-06-01 22:17:55 +03:00
Hugo van Kemenade
b261e17907
Merge pull request #6335 from radarhere/exif 2022-06-01 16:36:03 +03:00
Andrew Murray
e96177451e Only import ImageFont when necessary 2022-05-30 19:36:36 +10:00
Andrew Murray
40a918d274 Set readcount to TIFF_VARIABLE for a variable number of values 2022-05-28 20:14:05 +10:00
Andrew Murray
71d6a7b14f
Merge pull request #6303 from radarhere/disconnected
Only try to connect discontiguous corners at the end of edges
2022-05-28 16:40:00 +10:00
Davide Consalvo
84da70988f
Merge branch 'python-pillow:main' into p2pa_images_conversion 2022-05-27 12:37:43 +02:00
Davide Consalvo
6a071f81d7 fixed p2pa conversion 2022-05-27 12:24:19 +02: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
Hugo van Kemenade
0476914ee4
Merge pull request #6219 from radarhere/gif_eof
Do not update GIF frame position until local image is found
2022-05-27 08:29:38 +02:00
Andrew Murray
b1885779a9 Once exif data is parsed, do not reload unless it changes 2022-05-27 07:54:54 +10:00
nulano
dacd5d6eb9
add decref calls to imagingft to fix #6321 2022-05-24 16:36:30 +01:00
nulano
09da6fa73b
inline fname2char to fix #6319 2022-05-24 16:15:01 +01:00
Andrew Murray
2457eafabd Only read the number of loops from the first frame 2022-05-24 12:53:19 +10:00
Andrew Murray
5cf02f816f Moved Netscape extension after global color table when saving 2022-05-24 12:53:03 +10:00
Andrew Murray
62d0f0e38d Once comment is loaded, keep it for subsequent frames 2022-05-22 15:30:16 +10:00
Andrew Murray
db76eaa12c
Merge branch 'main' into comment_correct_placement 2022-05-22 14:56:57 +10:00
Andrew Murray
e9cb2156ec
Merge pull request #6294 from raygard/comments_separate_multiple
Separate multiple GIF comment blocks in a frame with newlines
2022-05-22 14:53:03 +10:00
Andrew Murray
62d5817e29 Changed delimiter to \n 2022-05-22 14:11:11 +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
Andrew Murray
2072a52bb5
Merge pull request #6292 from raygard/comment_use_gif89a
Always use GIF89a for comments
2022-05-21 10:24:14 +10:00
Hugo van Kemenade
33f00c9ca8
Merge pull request #6231 from radarhere/bmp_compression
Ignore compression value from BMP info dictionary when saving as TIFF
2022-05-20 16:18:15 +03:00
Hugo van Kemenade
fbb74a6050
Merge pull request #6234 from radarhere/font_variant
If font is file-like object, do not re-read from object to get variant
2022-05-19 23:30:44 +03: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
Andrew Murray
98329354e0 Simplified version check 2022-05-19 20:59:16 +10:00
Hugo van Kemenade
ef8cec6185
Merge pull request #6256 from radarhere/furthestV
Ensure that furthest v is set in quantize2
2022-05-17 20:04:50 +03:00
Andrew Murray
f0353c5996 When reading past the end of a scan line, reduce bytes left 2022-05-17 11:53:24 +03:00
Andrew Murray
62c7ee0f00 Only try to connect discontiguous corners at the end of edges 2022-05-16 22:31:49 +10:00
Yulv-git
a0fa540b0b Fix some typos. 2022-05-14 12:46:46 +08:00
Ray Gardner
22d9095e5c Correct placement of GIF comment
Place GIF comment after Global Color table. Should go after "NETSCAPE" looping extension after pull #6211.
2022-05-13 17:09:37 -06:00
Ray Gardner
44c6467400 Multiple GIF comments in a frame are separated
If more than one comment is in a GIF frame, separate them with \r\n in the info dict.
2022-05-13 16:36:20 -06:00
Ray Gardner
b3d29e946a Always use GIF89a for long comments
Fix bug that allows GIFs with long comments to be written as GIF87a.
2022-05-13 11:33:33 -06:00
Andrew Murray
ef8fd7f8b9 Populate Python palette in fromarray() 2022-05-09 18:50:54 +10:00
Hugo van Kemenade
6b05a28482
Merge pull request #6253 from radarhere/png_chunk_length
Raise ValueError if PNG chunks are truncated
2022-05-07 00:29:38 +03:00
Hugo van Kemenade
f84684931d
Merge pull request #6265 from radarhere/gif_duration
Use durations from each frame by default when saving GIFs
2022-05-06 18:44:01 +03:00
Andrew Murray
c824ab048f Fixed drawing translucent 1px high polygons 2022-05-06 22:35:26 +10:00
Hugo van Kemenade
779fb4975b
Merge pull request #6270 from radarhere/samples_per_pixel
Adjust BITSPERSAMPLE to match SAMPLESPERPIXEL
2022-05-05 14:22:19 +03:00
Andrew Murray
4dc1a55f65 Adjust BITSPERSAMPLE to match SAMPLESPERPIXEL 2022-05-04 22:11:10 +10:00
Andrew Murray
886fcbe3d6 Do not open images with zero or negative height 2022-05-04 21:25:40 +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
7e084c7ede Use durations from each frame by default when saving 2022-05-03 20:07:47 +10:00
Hugo van Kemenade
87c2373265
Merge pull request #6242 from radarhere/ppm_maxval 2022-05-01 21:21:52 +03:00
Andrew Murray
44494a1171 Set furthestV to first v in case compute_distances does not assign it 2022-05-01 23:32:47 +10:00
Andrew Murray
b299d7cfc2 Simplified code by using unsigned int instead of union 2022-05-01 23:32:47 +10:00
Andrew Murray
51bdc99b96 Raise ValueError if PNG chunks are truncated 2022-05-01 13:45:58 +10:00
Andrew Murray
81b473f9d2 Raise ValueError for invalid maxval 2022-04-30 10:37:50 +10:00
Andrew Murray
a50c3957df Updated URL 2022-04-27 22:28:10 +10:00
axt-one
9fb0087ec2 modified screencapture option in ImageGrab.grab() 2022-04-26 18:04:08 +09:00
Andrew Murray
bcded33cee
Merge pull request #6195 from hugovk/cleanup
Cleanup: various
2022-04-26 18:51:44 +10:00
Hugo van Kemenade
42a81c4173
Merge pull request #6239 from radarhere/ppm_token
Decode bytes before passing to f-string
2022-04-26 09:14:20 +03:00
Hugo van Kemenade
64880ab8d5
Merge pull request #88 from radarhere/cleanup 2022-04-25 22:06:52 +03:00
Hugo van Kemenade
79e8eba3f8
Docs: spacing
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2022-04-25 18:13:50 +03:00
Andrew Murray
5d4258e72b Simplified index slicing 2022-04-25 22:52:29 +10:00
Andrew Murray
9490509784
Merge pull request #6237 from hugovk/deprecate-qt5
Deprecate support for Qt 5 (PyQt5 and PySide2)
2022-04-25 10:03:35 +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
5867e0bbac Decode bytes before passing to f-string 2022-04-24 15:42:45 +10:00
Hugo van Kemenade
f854d7f7c9 Deprecate support for Qt 5 (PyQt5 and PySide2). Use Qt 6 (PyQt6 or PySide6) instead. 2022-04-22 15:56:11 +03:00
Andrew Murray
a40c7a6bea If font is file-like object, do not re-read from object to get variant 2022-04-22 07:31:20 +10:00
Andrew Murray
1e3fdb3055 Pad COLORMAP to 768 items 2022-04-21 11:29:17 +10:00
Andrew Murray
2c5e5049db Ignore compression value from BMP info dictionary 2022-04-21 07:58:12 +10:00
Alex Tedeschi
4279c74289
Increase wait time of temporary file deletion
Increase wait time to 4 seconds from 2 seconds for the deletion of the temporary file made from .show(). The Windows default image viewer at times can take longer than 2 seconds to open and display an image causing the image to never display for the user.
2022-04-18 16:23:50 -04:00
Hugo van Kemenade
bf46c6a648
Fix docstring
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2022-04-18 07:42:05 +03:00
Andrew Murray
a33dc56560
Merge pull request #6220 from nulano/deprecate-fill
Deprecate FreeTypeFont.getmask2 fill parameter
2022-04-18 08:05:10 +10:00
Ondrej Baranovič
995be34ddb
flip so the conditional is positive
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2022-04-17 19:27:14 +02:00
Andrew Murray
c87c2cf5b3 Added removal date for fill parameter 2022-04-17 10:03:50 +02:00
Andrew Murray
2a29b2dba1 Document that fill parameter is optional 2022-04-17 10:03:50 +02:00
Hugo van Kemenade
2dd848ca4f
Include deprecation removal date
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2022-04-17 08:06:28 +03:00
Andrew Murray
e62449f94c Added DeferredError to _fp 2022-04-17 12:14:53 +10:00
Andrew Murray
f18688e84e Removed unused variable 2022-04-17 12:13:58 +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
nulano
b4b8249c9d
None is also not a valid value 2022-04-16 17:46:43 +02:00
nulano
a766b5b0d5
deprecate fill in imageFont 2022-04-16 17:07:32 +02:00
Hugo van Kemenade
967c875e6b
Merge pull request #86 from radarhere/cleanup-names
Cleanup: adjust names
2022-04-16 17:13:10 +03:00
Andrew Murray
e4b39d9cc7 Variable in function should be snake_case 2022-04-16 22:15:48 +10:00
Andrew Murray
280b4e9e1a Updated variable name in comment 2022-04-16 22:15:21 +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
Andrew Murray
c8118438ae Do not update frame position until local image is found 2022-04-16 17:07:39 +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
Andrew Murray
72a59d298a Variable in function should be snake_case 2022-04-15 19:00:23 +10:00
Andrew Murray
950d0ad1d3 Fixed behaviour change from #5901 endian fix 2022-04-12 23:12:54 +10:00
Hugo van Kemenade
fe4c859fc1 [Private] argument name should be snake_case 2022-04-10 23:55:16 +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
d3c9a6504e Variable in function should be snake_case 2022-04-10 23:55:16 +03:00
Hugo van Kemenade
965df6df6f Add missing paramters to docstrings 2022-04-10 23:39:54 +03:00
Hugo van Kemenade
1997c814ab Move useful comment into docstring 2022-04-10 23:39:54 +03:00
Hugo van Kemenade
855c1a12da Use self for first method parameter 2022-04-10 23:39:54 +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
9d87b26a67 Don't redeclare loop variable 2022-04-10 23:39:54 +03:00
Hugo van Kemenade
b863da6deb Don't redeclare (unused) loop variable 2022-04-10 23:39:54 +03:00
Hugo van Kemenade
ee85e387ba Remove redundant parentheses 2022-04-10 23:39:54 +03:00
Hugo van Kemenade
6a648c9ce7 Add comma to make a tuple 2022-04-10 23:39:54 +03:00
Hugo van Kemenade
a9707e0a6f Remove redundant regex escapes 2022-04-10 23:39:54 +03:00
Hugo van Kemenade
c9acb9b387
Update docstring
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2022-04-10 19:27:57 +03:00
Hugo van Kemenade
13994d4b36 More f-strings 2022-04-10 17:56:42 +03:00
Hugo van Kemenade
74ccda3aff Simplify chained comparison 2022-04-10 17:50:17 +03:00
Hugo van Kemenade
935bdfa516 Use triple-quoted docstrings 2022-04-10 17:47:32 +03:00
Hugo van Kemenade
63f64de8b5
Merge pull request #6188 from radarhere/point 2022-04-08 20:05:30 +03:00
Andrew Murray
e824558076 If removal version has arrived, raise an error 2022-04-08 21:22:31 +10: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
4996f84fb3
Merge pull request #6182 from radarhere/fribidi 2022-04-06 16:59:58 +03: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
Andrew Murray
b2081a60eb Search for libfribidi.dylib in /usr/local/lib 2022-04-05 09:28:41 +10:00
Andrew Murray
ba5f2d75b5
Merge pull request #6167 from gmarkall/unpack-bgra16
Add support for unpacking 16-bit BGRA
2022-04-04 07:49:45 +10:00
Hugo van Kemenade
188211a913
Merge pull request #6178 from radarhere/imagetk
Deprecated PhotoImage.paste() box parameter
2022-04-03 10:06:37 +03:00
Andrew Murray
a724be66be Deprecated PhotoImage.paste() box parameter 2022-04-02 23:44:28 +11:00
Andrew Murray
216e3d79a9 Removed documentation for deprecated size parameter 2022-04-02 23:33:19 +11:00
Andrew Murray
29c122fe5d Updated BGRA comments 2022-04-02 22:00:49 +11:00
Andrew Murray
6b2da2f123 Consider transparency from each frame when saving 2022-04-02 21:04:22 +11:00
Hugo van Kemenade
e811ff4671 9.2.0.dev0 version bump 2022-04-01 17:53:13 +03:00
Hugo van Kemenade
1e0bc4acbb 9.1.0 version bump 2022-04-01 10:48:00 +03:00
scaramallion
07be0d26ba Re-add explicit default MCT value 2022-03-31 22:13:17 +03:00
scaramallion
bab4effbce Fix s390x build failure 2022-03-31 22:13:17 +03:00
scaramallion
4e7f041795 Rename parameter and add more tests 2022-03-31 22:13:17 +03:00
scaramallion
f8a74cbed1 Fix priority when selecting j2k kind 2022-03-31 22:13:17 +03:00
scaramallion
de26f78eb1 Add 'mct' and 'use_jp2' options for J2K saving 2022-03-31 22:13:17 +03:00
Graham Markall
e500dcfb97 Add support for unpacking 16-bit BGRA 2022-03-31 10:42:54 +01:00
Ondrej Baranovič
237f6a2662
don't call dlerror in fribidi shim 2022-03-31 02:13:05 +02:00
Hugo van Kemenade
e60ca89721
Merge pull request #6150 from radarhere/gif 2022-03-30 23:23:59 +03:00
Hugo van Kemenade
4bc6483564
Merge pull request #6034 from radarhere/imageops 2022-03-30 16:16:57 +03:00
Andrew Murray
e22a4395d3 Renamed setting 2022-03-29 21:26:29 +11:00
Andrew Murray
33022eef16 Added versionadded 2022-03-28 22:02:26 +11:00
Andrew Murray
ae8de77721 Raise ValueError when trying to save empty image 2022-03-28 21:18:53 +11:00
Hugo van Kemenade
1bc0e1bb9d
Merge pull request #5973 from radarhere/planar_configuration 2022-03-27 18:52:44 +03:00
Hugo van Kemenade
f7169f9c93
Merge pull request #5980 from radarhere/polygon 2022-03-27 18:51:10 +03:00
Hugo van Kemenade
5a35e87e65
Merge pull request #5958 from radarhere/memory 2022-03-27 18:49:07 +03:00
Hugo van Kemenade
57a5066d14
Merge pull request #6032 from radarhere/tk 2022-03-27 18:46:45 +03:00
Hugo van Kemenade
35e1932748
Merge pull request #5970 from radarhere/warnings 2022-03-27 18:43:38 +03:00
Hugo van Kemenade
fa6e18a771
Merge pull request #6152 from radarhere/screencapture
Use screencapture arguments to crop on macOS
2022-03-27 11:27:16 +03:00
Hugo van Kemenade
96a9776931
Merge pull request #6151 from radarhere/pdf
Do not mark L mode JPEG as 1 bit in PDF
2022-03-27 11:23:57 +03:00
Hugo van Kemenade
5ff4a137c7
Merge pull request #6147 from radarhere/webp 2022-03-26 19:51:32 +02:00
Hugo van Kemenade
aeba11db1b
Merge pull request #6148 from radarhere/gif_size 2022-03-26 19:48:08 +02:00
Hugo van Kemenade
8107098657
Merge pull request #6132 from radarhere/fillorder 2022-03-26 19:47:14 +02: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
3ce6501228
Merge pull request #6136 from radarhere/imageshow
Fixed calling DisplayViewer or XVViewer without a title
2022-03-24 07:35:59 +02:00
Hugo van Kemenade
e5ce1c8c57
Merge pull request #6128 from radarhere/gif_rgba 2022-03-23 18:36:03 +02:00
Hugo van Kemenade
c3d0dcda7a
Merge pull request #6122 from radarhere/ico 2022-03-23 17:07:00 +02:00
Hugo van Kemenade
3cce863ec8
Merge pull request #6124 from radarhere/exif 2022-03-23 17:01:22 +02:00
Hugo van Kemenade
a921fcbf75
Merge pull request #6102 from radarhere/bmp_rle8 2022-03-23 17:00:31 +02:00
Andrew Murray
a4bb0ec660
Merge pull request #6006 from lukegb/tk-in-binary
Support Python distributions where _tkinter is compiled in
2022-03-23 12:40:27 +11:00
Andrew Murray
c5efe60c37 Reverted converting L with transparency to LA after first frame 2022-03-22 22:07:37 +11:00
Andrew Murray
dd2b91c5b8 Use screencapture arguments to crop on macOS 2022-03-22 21:58:32 +11:00
Andrew Murray
bde3086592 Do not mark L mode JPEG as 1 bit 2022-03-22 21:41:11 +11:00
Andrew Murray
ce8c682748 Added setting to convert to RGB only at a different palette 2022-03-22 20:28:49 +11:00
Andrew Murray
66bb2bd5e8 Added setting to convert first GIF frame to RGB 2022-03-22 20:20:38 +11:00
Andrew Murray
7928e944cb Keep subsequent L frames without transparency as L 2022-03-22 20:20:38 +11:00
Andrew Murray
b0d0d2b9cc Fixed saving L mode GIF with background as WebP 2022-03-22 20:17:28 +11:00
Hugo van Kemenade
a6a843e548
Merge pull request #6140 from radarhere/webp_duration
Added WebP default duration of zero when saving
2022-03-22 09:23:10 +02:00
Andrew Murray
d806227199 Do not expand GIF during n_frames 2022-03-21 23:19:26 +11:00
Andrew Murray
ebdb47e693 Support reading I;16R TIFF images 2022-03-20 13:34:50 +11:00
Andrew Murray
be9ee98631 Removed period before colon 2022-03-19 17:48:31 +11:00
Hugo van Kemenade
7857a1dff0
Merge pull request #6119 from radarhere/ppm_maxval 2022-03-18 18:14:40 +02:00
Andrew Murray
2981569b29 Added default duration of zero 2022-03-17 23:49:23 +11:00
Andrew Murray
edc6c3d2f0 Use maxval instead of unreliable 32-bit specific behaviour 2022-03-16 22:10:47 +11:00
Andrew Murray
e3b53dc7e0 Use SAFEBLOCK instead of arbitrary large number 2022-03-16 21:23:29 +11:00
Andrew Murray
6f128c4c39 Removed unused variable 2022-03-15 22:15:24 +11:00
Andrew Murray
f3b7ee2d3e Do not pass None to subprocess 2022-03-15 08:31:17 +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
0d5a2d2b83 Allow PyDecoder to pass truncated data to C decoder 2022-03-13 14:11:28 +11:00
Andrew Murray
e32a94e835 Removed tokens_read variable 2022-03-13 13:36:26 +11:00
Andrew Murray
4fcef0d163 Removed re-raising of exception 2022-03-12 17:44:32 +11:00
Andrew Murray
9e04416c6c Removed token_spans variable 2022-03-12 17:40:08 +11:00
Andrew Murray
073acd4c82 Moved decoder names out of MODES 2022-03-12 17:32:15 +11:00
Andrew Murray
76871795f7 Resolved UNDONE by removing code 2022-03-12 15:54:08 +11:00
Andrew Murray
59780abd79 Save multiple images at different bit depths if provided 2022-03-12 15:49:36 +11:00
Andrew Murray
268be11be6 If primary image is already destination size, do not duplicate 2022-03-12 15:49:36 +11:00
Andrew Murray
5ce67cd896 Use _binary instead of struct 2022-03-12 15:49:36 +11:00
Andrew Murray
a8586fe1ff Do not save duplicates when duplicate sizes are supplied 2022-03-12 15:49:36 +11:00
Andrew Murray
4e16a9a942 Retain RGBA transparency when saving multiple frames 2022-03-12 15:14:36 +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
Andrew Murray
ca6724bb9d Merge branch 'main' into gif 2022-03-11 08:44:42 +11:00
Hugo van Kemenade
5c931de27f
Merge pull request #6117 from radarhere/return 2022-03-10 22:27:03 +02:00
Hugo van Kemenade
06396094c0
Merge pull request #6116 from radarhere/load_prepare 2022-03-10 22:26:00 +02:00
Hugo van Kemenade
652542c770
Merge pull request #6112 from radarhere/i_i16_conversion
Clip I;16 to be unsigned, not signed
2022-03-10 19:56:45 +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
ad07b04678 Maximum maxval is 65535 2022-03-10 09:55:47 +11:00
Andrew Murray
039b7ecd56 Finish reading data at eof 2022-03-09 22:36:34 +11:00
Andrew Murray
9db527a473 Finish once enough data has been read 2022-03-09 22:36:33 +11:00
Andrew Murray
11f1ba3540 Skip additional data if past end of row 2022-03-09 22:36:32 +11:00
Andrew Murray
0ace3fcd26 Added BMP RLE8 decoder 2022-03-09 22:35:48 +11:00
Andrew Murray
4283a604c0 Added support for arbitrary maxval 2022-03-09 22:29:45 +11:00
Andrew Murray
e87432b745 First return value is unused 2022-03-08 19:51:24 +11:00
Andrew Murray
54a4a38e42 Return -1 when finished decoding 2022-03-08 19:48:58 +11:00
Andrew Murray
0d6f3ad6cc Removed load_prepare nearly identical to ImageFile load_prepare 2022-03-08 19:01:57 +11:00
Andrew Murray
397a940995
Merge pull request #6094 from radarhere/decoder
Improved codec documentation
2022-03-07 08:01:31 +11:00
Hugo van Kemenade
c16737d589
Merge pull request #6096 from radarhere/cleanup 2022-03-06 20:12:13 +02:00
pre-commit-ci[bot]
0215175e1d [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2022-03-06 02:39:09 +00:00
Andrew Murray
d20f39d02e
Merge branch 'main' into plainPPM 2022-03-06 13:38:19 +11:00
Hugo van Kemenade
180c89f755
Merge pull request #6092 from radarhere/accept 2022-03-05 23:10:08 +02:00
Andrew Murray
633abcbe7e
Updated error message
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2022-03-06 07:27:11 +11:00
Hugo van Kemenade
c32f908629
Merge pull request #6106 from radarhere/imagestat
Document that histogram() uses 256 bins per channel
2022-03-05 08:27:25 +02:00
Andrew Murray
c8b69a78f3 Clip I;16 to be unsigned, not signed 2022-03-05 13:42:39 +11:00
Andrew Murray
2922a00e9c Renamed decoder 2022-03-04 17:08:40 +11:00
Piolie
be97a851a8 Update src/PIL/PpmImagePlugin.py
Remove commented line.

Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2022-03-04 17:03:17 +11:00
Piolie
652f447412 Implement grayscale/color decoder 2022-03-04 16:59:01 +11:00
Piolie
ea7e108ca3 Implement bitonal decoder 2022-03-04 16:58:56 +11:00
Piolie
1ed05715d2 Expand preamble and _open function 2022-03-04 16:58:48 +11:00
Andrew Murray
72b7ab54bd pre-commit autoupdate --freeze 2022-03-04 16:42:24 +11:00
Andrew Murray
f7504b1ef9 Changed variable 2022-03-04 15:49:37 +11:00
Andrew Murray
4f8173f53f Refactored to reduce risk of infinite loop 2022-03-04 15:22:47 +11:00
Andrew Murray
65edcc4f77 Merge branch 'main' into PPMheaders 2022-03-04 12:30:41 +11:00
Andrew Murray
f5b9e2c43a Explicitly check if magic number is empty 2022-03-04 12:29:20 +11:00
Andrew Murray
3426052874 Removed re-raising of exception 2022-03-04 12:27:28 +11:00
Andrew Murray
cb4e26783f Retain variable case for backwards compatibility 2022-03-04 12:27:14 +11:00
Andrew Murray
e2e87d73c3 Reverted SyntaxError change to match other plugins 2022-03-04 12:26:55 +11:00