Commit Graph

2580 Commits

Author SHA1 Message Date
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
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
5c6212052c Convert subsequent frames of L mode GIF to LA if transparency is present 2022-03-01 20:11:35 +11:00
Andrew Murray
573cf278f1 Reset size when seeking away from "Large Thumbnail" MPO frame 2022-03-01 19:10:10 +11:00
Andrew Murray
2b9cc3ccc5 Documented writing your own encoder in C 2022-03-01 16:34:21 +11:00
Andrew Murray
95e3194497 Improved documentation for _pulls_fd and _pushes_fd 2022-03-01 13:15:12 +11:00
Andrew Murray
fc7319318e Added BigTIFF reading 2022-03-01 09:23:12 +11:00
Andrew Murray
bb9338e34d Removed duplicate code 2022-02-28 14:13:04 +11:00
Andrew Murray
4d868abd8a Moved non-codec code outside of try block 2022-02-28 14:13:04 +11:00
Andrew Murray
a606fd85a3 Run encoder cleanup method after errors as well 2022-02-28 14:12:56 +11:00
Andrew Murray
f2987d65c0 Linked to file codec documentation 2022-02-28 08:36:26 +11:00
Hugo van Kemenade
1d3b373160
Merge pull request #6069 from radarhere/pyencoder 2022-02-27 18:34:09 +02:00
Andrew Murray
56324c300d Simplify code by using _accept 2022-02-27 14:48:36 +11:00
Andrew Murray
e2288356ca Use _accept check in _open 2022-02-27 14:48:36 +11:00
Andrew Murray
885e305fe9 Make code clearer by matching _accept condition 2022-02-27 14:48:36 +11:00
Andrew Murray
83b9e66133 Moved flags check into _accept 2022-02-27 14:48:36 +11:00
Andrew Murray
efb9d503a7 Raise SyntaxError if data is not as expected 2022-02-27 14:48:36 +11:00
Andrew Murray
fbaaf3c19b Do not read data until necessary 2022-02-27 14:48:36 +11:00
Andrew Murray
e36774617c Added BLP1 saving 2022-02-25 23:58:13 +11:00
Andrew Murray
1859bc3462 Added reading non-JPEG BLP1 as RGBA 2022-02-25 17:50:21 +11:00
Andrew Murray
3ec928251c Fixed reading uncompressed BLP2 with alpha 2022-02-25 16:54:53 +11:00
Andrew Murray
169025df6c Added BLP saving 2022-02-25 16:53:53 +11:00
Andrew Murray
747029bea9 Simplified code 2022-02-25 16:07:32 +11:00
Andrew Murray
a0e1fde1ed Added PyEncoder 2022-02-25 16:07:01 +11:00
Andrew Murray
0d729941a8 Handle packets that cross scan lines 2022-02-25 09:41:16 +11:00
Andrew Murray
17d342bc4b Simplified code as both values are 7 bit 2022-02-25 09:41:16 +11:00
Hugo van Kemenade
96516ce5f1
Merge pull request #6078 from radarhere/imageshow 2022-02-23 14:56:18 +02:00
Andrew Murray
3c1e7a7f5a Corrected docstring [ci skip] 2022-02-22 10:32:02 +11:00
Andrew Murray
35cdcdc65d Added ImageShow.register examples 2022-02-21 20:32:21 +11:00
Andrew Murray
f8546768d6 Do not update images during n_frames or is_animated seeking 2022-02-21 18:34:05 +11:00
Andrew Murray
590c616cfd If next byte ends the GIF, stay on the current frame 2022-02-21 17:35:50 +11:00
Andrew Murray
73cf28cc94 If GIF has already seeked past first frame, it is animated 2022-02-21 15:57:13 +11:00
mergify[bot]
c58d2817bc
Merge pull request #6056 from radarhere/fits
Added FITS reading
2022-02-20 21:49:01 +00: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
b78e601b63
Merge pull request #6071 from radarhere/handler
Fixed BUFR, GRIB and HDF5 stub saving
2022-02-19 11:25:42 +02: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
bfa6da63a4
Merge pull request #6045 from radarhere/imageshow
Do not automatically remove temporary ImageShow files on Unix
2022-02-19 11:06:10 +02:00
Hugo van Kemenade
3d33987d7c
Merge pull request #4685 from Meithal/patch-3
Correctly read JPEG compressed BLP images
2022-02-19 11:03:36 +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
7dca0135dd Merge branch 'main' into fits 2022-02-19 14:41:45 +11:00
Andrew Murray
2368723230 Deprecated FitsStubImagePlugin 2022-02-19 14:41:12 +11:00
Andrew Murray
3f5fad3a27 Fixed BUFR, GRIB and HDF5 stub saving 2022-02-19 14:29:03 +11:00
Andrew Murray
341802c2dc Removed unused argument 2022-02-19 10:50:07 +11: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
985e4fbe40 Simplified code 2022-02-17 22:22:34 +11:00
Hugo van Kemenade
0aca22e863
Merge pull request #6052 from radarhere/p2pa 2022-02-17 09:39:39 +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
Hugo van Kemenade
bd4e20f8c2
Merge pull request #6058 from radarhere/relative
Replaced absolute PIL import with relative import
2022-02-17 00:15:53 +02:00
Andrew Murray
54cb09d8b4 When converting to P, restrict colors to palette size 2022-02-16 11:01:00 +11:00
Andrew Murray
948c064b28 Allow getpalette() to return less than 256 colors 2022-02-16 09:56:13 +11:00
Hugo van Kemenade
f5a77fed39
Merge pull request #6054 from radarhere/palette 2022-02-15 19:01:07 +02:00
Andrew Murray
9d3c8d2714 Added further typestr entries 2022-02-15 22:30:33 +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
3bbcad1ad2 Avoid circular dependency 2022-02-15 22:30:12 +11:00
Andrew Murray
bba493d702 Replaced absolute PIL import with relative import 2022-02-15 21:50:20 +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
dfdb17671d Added FITS reading 2022-02-15 11:22:46 +11:00
Andrew Murray
9a4106c14f
Merge branch 'main' into enum 2022-02-15 08:12:28 +11:00
Andrew Murray
41a9975377 Moved strcmp outside of loop 2022-02-14 21:50:19 +11:00
Andrew Murray
9cdb0508b6 Attach RGBA palettes from putpalette() when suitable 2022-02-14 20:28:47 +11:00
Andrew Murray
5411263d92 Simplified code 2022-02-14 19:24:47 +11:00
Andrew Murray
83d4f451fa Ensure image is opaque after converting P to PA with RGB palette 2022-02-14 16:10:59 +11:00
Andrew Murray
993bb23ce0 Do not manually remove temporary files on Unix in get_command() 2022-02-14 09:33:58 +11:00
Andrew Murray
e19447cbbb Do not manually remove temporary files on Unix 2022-02-12 08:04:40 +11:00
Andrew Murray
7f8df9d712 Use "title" argument for display 2022-02-12 07:49:27 +11:00
Andrew Murray
70a17080e4 Updated return values to match docstring 2022-02-12 07:49:20 +11:00
mergify[bot]
89768e3d57
Merge pull request #6042 from radarhere/tiff_bits
Clarify code and comments
2022-02-10 21:20:22 +00:00
Hugo van Kemenade
f5fab326fa
Merge pull request #6030 from radarhere/photoshopblocks
Added get_photoshop_blocks() to parse Photoshop TIFF tag
2022-02-10 09:40:17 +02:00
Hugo van Kemenade
6520d44496
Merge pull request #6041 from mikhail-iurkov/tiff_bits
Drop excess values in BITSPERSAMPLE
2022-02-10 09:32:34 +02:00
Andrew Murray
2ae70f144f Added get_photoshop_blocks() to parse Photoshop tag 2022-02-10 12:00:23 +11:00
Andrew Murray
1f82202998 Adjusted comments 2022-02-10 11:08:25 +11:00
Andrew Murray
b38a67fa12
Merge branch 'main' into enum 2022-02-10 09:52:24 +11:00
Mikhail Iurkov
bb5a090f60
Drop excess values in BITSPERSAMPLE 2022-02-09 16:40:43 +03:00
mergify[bot]
1c679a93f9
Merge pull request #6040 from hugovk/fix-docs-return
Fix return in docs
2022-02-09 13:19:48 +00:00
Hugo van Kemenade
8b7c37dc0c
Merge pull request #6035 from nulano/raqm-warn 2022-02-09 14:34:33 +02:00
Hugo van Kemenade
601c9d8515 Fix return in docs 2022-02-09 14:28:43 +02:00
nulano
a278e0aa65
issue warning if Raqm layout is requested, but Raqm is not available 2022-02-07 23:57:35 +00:00
Andrew Murray
ecb64fe210 Allow 1 mode images to be inverted 2022-02-08 09:12:01 +11:00
Andrew Murray
3114064b16 Removed redundant try catch 2022-02-07 21:06:36 +11:00
Andrew Murray
c6b81d5989 Ensure Tkinter hook is activated for getimage() 2022-02-07 19:15:25 +11:00
Andrew Murray
85b872deb6 Added unpacker from RGBA;15 to RGB 2022-02-07 10:18:14 +11:00
Andrew Murray
ed283d15ca
Merge pull request #6010 from radarhere/show_file
In show_file, use os.remove to remove temporary images
2022-02-03 09:41:20 +11:00
Andrew Murray
10c4f75aaa Added delay after opening image with xdg-open 2022-02-03 08:58:12 +11:00
Andrew Murray
143032103c Updated formatting
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2022-02-03 08:48:43 +11:00
Andrew Murray
8da80130db In show_file, use os.remove to remove temporary images 2022-02-03 08:48:36 +11:00
Andrew Murray
dd46100bdc Restrict builtins within lambdas for ImageMath.eval 2022-02-03 08:42:53 +11:00
Andrew Murray
fb7edfda68 Improved consistency of returning an image access object from load() 2022-02-02 11:49:31 +11:00
Luke Granger-Brown
a13ba2ee3b Support Python distributions where _tkinter is compiled in
In some cases, the Tk library may have been directly compiled in or
bundled into the main executable by the time Pillow runs, in which case
__file__ isn't available (nor would it make sense to use, anyway).

If __file__ is missing, then set the library path to None and rely on
our Tk loader being able to find the function pointers within the main
binary - we know we probably have it because we've managed to import it
already.
2022-02-01 19:57:01 +00:00
nulano
999ef3e4ea Revert "detect FreeType / HarfBuzz features"
This reverts commit 6565d13275.
2022-01-31 00:11:47 +00:00
Andrew Murray
36f293071e Updated raqm to 0.9.0 2022-01-31 08:05:01 +11:00
Andrew Murray
04a3ac32a0 Updated raqm to 0.8.0 2022-01-28 22:04:57 +11:00
Andrew Murray
1d91f6dce5 Document when file argument will be removed 2022-01-26 09:08:41 +11:00
Andrew Murray
31aa2ad98c Removed unused variables 2022-01-24 11:06:41 +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
Hugo van Kemenade
53d0dd5ed1
Merge pull request #5972 from radarhere/crop 2022-01-21 08:37:28 +02:00
Andrew Murray
b894c8c73d Connected discontiguous polygon corners 2022-01-21 11:55:59 +11: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
ef99a73473 Clarified that version numbers refer to Tk, not Pillow 2022-01-20 10:04:35 +11:00
Andrew Murray
67944cedc7 Always save with contiguous planar configuration 2022-01-18 19:40:57 +11:00
Andrew Murray
af90dd773b Raise an error when performing a negative crop 2022-01-18 16:38:00 +11:00
Andrew Murray
c692fb42f8 Fixed comparison warnings 2022-01-18 14:19:43 +11:00
Andrew Murray
1be53c8bb3 Removed debugging 2022-01-18 09:08:50 +11:00
Hugo van Kemenade
95c7083063
Merge pull request #5959 from radarhere/imageshow_file 2022-01-16 14:41:28 +02:00
Andrew Murray
5df83a57ff Documented deprecation 2022-01-16 11:38:34 +11:00
Andrew Murray
86944abbab Deprecated show_file "file" argument in favour of "path" 2022-01-15 16:08:37 +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
fe32501922 Corrected allocation 2022-01-14 10:16:35 +11:00
Andrew Murray
a9441a475d Added IREC header entry for use with Bio-formats library 2022-01-12 17:29:25 +11:00
Andrew Murray
ba86d90a00 Simplified code 2022-01-12 15:17:04 +11:00
Andrew Murray
01e7b3943d Simplified code 2022-01-11 13:50:57 +11:00
Andrew Murray
9c6df29b4d Removed unreachable error 2022-01-11 13:50:57 +11:00
Andrew Murray
90f3f72e19 Removed unused constant 2022-01-11 13:30:51 +11:00
Andrew Murray
9a9afd36b4
Merge pull request #5935 from FirefoxMetzger/add-missing-ImageModes
Add missing ImageModes
2022-01-11 11:56:16 +11:00
Sebastian Wallkötter
11dd543837 remove mode BGR 2022-01-10 08:17:53 +01:00
Andrew Murray
6e5e45a9ec Ensure duplicated file pointer is closed 2022-01-09 16:10:12 +11:00
Andrew Murray
2d9dfefe6e Added specific error if coordinate type is incorrect 2022-01-08 13:47:51 +11:00
Andrew Murray
b5160591bc Return an empty bytestring from tobytes() for an empty image 2022-01-07 16:29:38 +11:00
Sebastian Wallkötter
f40c005399 Add missing ImageModes
The modes are mentioned in the docs, but weren't part of ImageMode.
2022-01-06 07:58:57 +01:00
Hugo van Kemenade
e077229d7a Remove readonly from Image.__eq__ 2022-01-04 11:32:15 +02:00
Andrew Murray
05b63366df 9.1.0.dev0 version bump 2022-01-03 09:22:31 +11:00
Andrew Murray
82541b6dec 9.0.0 version bump 2022-01-02 20:51:23 +11:00
Andrew Murray
8531b01d6c Restrict builtins for ImageMath.eval 2022-01-02 17:23:49 +11:00
Andrew Murray
1059eb5376 If appended EOI did not work, do not keep trying 2022-01-01 21:04:32 +11:00
Andrew Murray
5543e4e2d4
Merge pull request #5920 from radarhere/calloc
Fixed ImagePath.Path array handling
2022-01-01 19:16:11 +11:00
Andrew Murray
c48271ab35 Handle case where path count is zero 2022-01-01 15:44:04 +11:00
Andrew Murray
1e092419b6 Initialize coordinates to zero 2022-01-01 15:44:04 +11:00
Andrew Murray
7370a0b1cf Remove consecutive duplicates that only differ by their offset 2022-01-01 14:54:23 +11:00
Hugo van Kemenade
1d3fbf2049
Merge pull request #5915 from radarhere/load 2021-12-30 10:39:08 +02:00
Andrew Murray
6565d5b1f3
Merge pull request #5517 from kmilos/patch-1
Explicitly enable strip chopping for large uncompressed TIFFs
2021-12-30 15:34:02 +11:00
Andrew Murray
8e9da1559b Lint fix 2021-12-30 14:47:59 +11:00
Andrew Murray
cdb0fba2ed Removed redundant part of condition 2021-12-30 11:45:40 +11:00
Andrew Murray
4d1d2c9855
Merge pull request #5807 from DWesl/tkimaging-on-cygwin
Use the Windows method to get TCL functions on Cygwin
2021-12-30 00:08:31 +11:00
Andrew Murray
d8f2fb50a4
Merge pull request #5404 from radarhere/feed
Changed error type to allow for incremental WebP parsing
2021-12-29 07:33:56 +11:00
Hugo van Kemenade
3c39be3bc2
Merge pull request #5901 from radarhere/i16
Improved I;16 operations on big endian
2021-12-28 10:12:00 +02:00
Hugo van Kemenade
fccc261386
Merge pull request #5899 from radarhere/bmp
Ensure that BMP pixel data offset does not ignore palette
2021-12-28 10:10:08 +02: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
Hugo van Kemenade
cc670c940e
Merge pull request #5869 from radarhere/quantize_palette
Fixed palette index for zeroed color in FASTOCTREE quantize
2021-12-28 10:05:58 +02:00
Hugo van Kemenade
f560707def
Merge pull request #5859 from radarhere/saving_rgba_gif
When saving RGBA to GIF, make use of first transparent palette entry
2021-12-28 10:04:10 +02:00
Hugo van Kemenade
1806cf5607
Merge pull request #5848 from radarhere/sampleformat
Pass SAMPLEFORMAT to libtiff
2021-12-28 10:03:16 +02:00
Hugo van Kemenade
e7b53259d1
Merge pull request #5824 from radarhere/l_macro
Added rounding when converting P and PA
2021-12-28 10:02:36 +02:00
Hugo van Kemenade
8e631e4cd9
Merge pull request #5910 from radarhere/putdata
Improved putdata() documentation and data handling
2021-12-28 09:53:33 +02:00
Andrew Murray
aeb549ef8f Fixed unpacking I;16B to I;16 on big endian 2021-12-28 17:38:01 +11:00
Andrew Murray
4b7b07de70 Fixed JPEG2000 I;16 images on big endian 2021-12-28 17:06:05 +11:00
Hugo van Kemenade
dd8049363e Use more specific regex chars to prevent ReDoS - exclude carriage return 2021-12-28 10:22:39 +11:00
Andrew Murray
e0d5417bcd Raise an error if sequence is not flattened 2021-12-28 09:38:41 +11:00
Andrew Murray
e9294d890f Accept float values for putdata() in Python 3.10 2021-12-28 09:38:41 +11:00
Andrew Murray
020308a7be Clarified that the sequence object for putdata() should be flattened 2021-12-28 09:38:41 +11:00
Hugo van Kemenade
282d8250c6
Merge pull request #5908 from radarhere/none 2021-12-27 15:44:40 +02:00
Andrew Murray
4222605442 Fixed freeing pointer 2021-12-27 13:39:37 +11:00
Andrew Murray
0af91de452 Image.NONE is only used for resampling and dithers 2021-12-27 12:27:06 +11:00
Hugo van Kemenade
1510efb647
Merge pull request #5897 from m-shinder/main
Added ImageShow support for xdg-open
2021-12-23 08:32:16 +02:00
Andrew Murray
34ad580f42 Fixed typo 2021-12-22 16:42:39 +11:00
Andrew Murray
ff723e45ab Ensure that pixel data offset does not ignore palette 2021-12-21 12:43:50 +11:00
mihail
5cca90a37c
Add: XDGViewer which uses xdg-open
Synopsis

xdg-open { file | URL }

xdg-open { --help | --manual | --version }

Use 'man xdg-open' or 'xdg-open --manual' for additional info.
2021-12-20 12:09:07 +03: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
768c189a29 Correct image by scaling pixels 2021-12-15 06:39:05 +11:00
Christopher Bruns
e87745d9ec Check if installed Qt version supports Format_Grayscale16 2021-12-15 06:39:05 +11:00
Christopher Bruns
6aca23cfa3 Support 16-bit grayscale ImageQt conversion. 2021-12-15 06:39:05 +11:00
Andrew Murray
ec198899f6 Limit quantized palette to number of colors 2021-12-11 16:23:37 +11:00
Andrew Murray
fdec387b4a Fixed palette index for zeroed color in FASTOCTREE quantize 2021-12-11 16:07:45 +11:00
Andrew Murray
5c05fe4d9b Fixed raising OSError in _safe_read when size is greater than SAFEBLOCK 2021-12-07 11:40:44 +11:00
Andrew Murray
0e10a5cc7b When saving RGBA, make use of first transparent palette entry 2021-12-07 06:37:01 +11:00
Hugo van Kemenade
94ca035495
Merge pull request #5857 from radarhere/gif 2021-12-06 20:58:21 +02:00
Andrew Murray
06372b5e4b
Merge pull request #5798 from ilai-deutel/fix-webp-memory-leak
WebP: Fix memory leak during decoding on failure
2021-12-05 14:54:16 +11:00
Andrew Murray
6337428df1 Loading transparent pixels in C from subsequent GIF frames is no longer a problem 2021-11-29 17:49:12 +11:00
Andrew Murray
b383a175be Convert subsequent GIF frames to RGB or RGBA 2021-11-29 17:49:06 +11:00
Andrew Murray
ab6efcb925
Merge pull request #5665 from infmagic2047/master
Do not return in ImageFile when saving to stdout
2021-11-26 00:12:40 +11:00
Andrew Murray
cea84e6b2d Improved explanation of fromarray "mode" parameter 2021-11-23 20:35:35 +11:00
Andrew Murray
2e9193a485 Pass SAMPLEFORMAT to libtiff 2021-11-23 08:10:18 +11:00
Hugo van Kemenade
c7a90551ae
Merge pull request #5829 from radarhere/tga_orientation 2021-11-21 14:14:41 +02:00
Hugo van Kemenade
877d97e858
Merge pull request #5845 from radarhere/icns 2021-11-21 14:12:01 +02:00
Hugo van Kemenade
b692faf596
Merge pull request #5839 from radarhere/tiff 2021-11-21 13:59:12 +02:00
Hugo van Kemenade
c857366d39
Merge pull request #5694 from radarhere/polygon_width 2021-11-21 13:58:18 +02:00
Andrew Murray
838c8efa25 Corrected file length in header 2021-11-20 14:17:42 +11:00
Andrew Murray
83c42fcabd Do not redeclare class each time when converting to NumPy 2021-11-20 10:13:10 +11:00
Andrew Murray
7d4a8668b1 Block tile TIFF tags when saving 2021-11-18 22:01:53 +11:00
Andrew Murray
90a52d3c0d Added width argument to polygon 2021-11-16 22:02:54 +11:00
Hugo van Kemenade
2849347694
Merge pull request #5835 from radarhere/alpha 2021-11-16 09:07:18 +02:00
Hood
7a93328834 Fix _get_pushes_fd and _get_pulls_fd method signatures
Getters are supposed to have signature "PyObject *(PyObject *self, void *closure)", but the closure argument is often not used.
In wasm it causes a trap if a function is declared with one argument and then called with two.
2021-11-15 08:49:55 -08:00
Andrew Murray
ca15c684ea Only prevent repeated polygon pixels when drawing with transparency 2021-11-15 23:28:29 +11:00
Andrew Murray
fc90a9285a Added support for top right and bottom right orientations 2021-11-11 21:53:28 +11:00
Hugo van Kemenade
18d34b287f Add support for pickling TrueType fonts 2021-11-10 14:34:20 +02:00
Andrew Murray
bb6212a332 Added rounding when converting P and PA 2021-11-10 08:00:58 +11:00
Andrew Murray
669ba570d5
Merge branch 'main' into rm-3.6 2021-11-04 08:27:36 +11:00
DWesl
c8391aaa4b Use the Windows functions to get TCL functions on Cygwin.
This is related to linking semantics, so Cygwin should follow the Windows codepath.
2021-11-03 13:03:55 -04:00
Ilaï Deutel
596e80c654
WebP: Fix memory leak during decoding on failure
When creating the `WebPAnimDecoder` object, we create a `WebPAnimDecoderObject` and populate its data using `WebPDataCopy()`.

Subsequently, if either `WebPAnimDecoderNew()` or `WebPAnimDecoderGetInfo()` fails, data is not currently deallocated. This commit clears the decoder object's data in that situation.
2021-10-28 18:15:43 +00:00
Andrew Murray
97ed2ecd97 Changed URLs to https 2021-10-27 22:51:54 +11:00
Hugo van Kemenade
36eb97d3c0
Merge branch 'main' into rm-3.6 2021-10-25 12:05:05 +03:00
Andrew Murray
993da90316
Merge pull request #5779 from hugovk/update-expected-pillow-10-release-date
Update expected Pillow 10 release date: 2023-07-01
2021-10-25 12:57:20 +11:00
Ondrej Baranovič
954baa1e73
document #5788 2021-10-23 10:51:46 +02:00
Andrew Murray
b3e690a270 Use title for display 2021-10-23 15:53:08 +11: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
Andrew Murray
cf757e6f77
Merge pull request #5777 from hugovk/rm-freetype-2.7
Remove support for FreeType 2.7 and older
2021-10-19 19:35:06 +11:00
Hugo van Kemenade
6e310e3e2e Update expected Pillow 10 release date: 2023-07-01 2021-10-18 15:48:49 +03:00
Hugo van Kemenade
b4bd8943fa
Merge pull request #5775 from hugovk/mingw-qt6 2021-10-18 12:38:14 +03:00
Hugo van Kemenade
606b5ae1e5 Remove support for FreeType 2.7 and older 2021-10-18 09:29:53 +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
e444e7ab6d Removed ImageFile.raise_ioerror 2021-10-18 11:06:02 +11:00
Andrew Murray
cd50d468ba Removed PILLOW_VERSION 2021-10-18 11:05:53 +11:00
Andrew Murray
43ceaa1614 Use QIODevice instead of QIODeviceBase 2021-10-17 13:14:47 +11:00
Hugo van Kemenade
d1148378bc Fix for PyQt6 2021-10-16 23:04:43 +03:00
Hugo van Kemenade
d7b64a6621 9.0.0.dev0 version bump 2021-10-15 11:17:23 +03:00
Hugo van Kemenade
40e7ff6226 8.4.0 version bump 2021-10-15 09:27:22 +03:00
Hugo van Kemenade
1b5e662ee6
Merge pull request #5761 from nulano/stroke 2021-10-14 21:33:07 +03:00
nulano
19f4c6fd23 don't use bitmap glyphs when drawing text with stroker 2021-10-14 08:19:04 +01:00
Andrew Murray
0b7fcbbc93
Merge branch 'master' into patch-2 2021-10-13 23:50:23 +11:00
Hugo van Kemenade
b34430b402
Merge pull request #5750 from radarhere/zero
Fixed Python errors when saving a (0, 0) TIFF image
2021-10-13 14:29:12 +03:00
Hugo van Kemenade
1cbb3f1427
Merge pull request #5736 from nulano/raqm-0.7.2 2021-10-12 16:22:32 +03:00
Andrew Murray
174b4893f3 Prefer global transparency for disposal method 2 2021-10-12 09:45:52 +11:00
Andrew Murray
8de429ecb9 Fixed Python errors when saving a (0, 0) TIFF image 2021-10-08 13:12:21 +11:00
Andrew Murray
515314b85c Updated capitalization 2021-10-02 09:50:27 +10:00
Miloš Komarčević
63879f04b1
Make TIFF strip size configurable 2021-10-01 13:50:02 +02:00
nulano
6565d13275 detect FreeType / HarfBuzz features 2021-09-28 00:37:43 +02:00
nulano
aeb3c810d0 upgrade vendored raqm to 0.7.2 2021-09-27 22:37:55 +02:00
pre-commit-ci[bot]
99428bb878 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2021-09-20 12:22:11 +00:00
Andrew Murray
312ed69c01 Commented unused method 2021-09-20 22:17:06 +10:00
Andrew Murray
8264aa81d9
Updated capitalisation
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2021-09-11 19:48:43 +10:00
Andrew Murray
c39e545949 Updated docstring 2021-09-11 19:24:24 +10:00
Andrew Murray
3f3828040b
Merge branch 'master' into tiff_exif 2021-09-07 06:33:37 +10:00
Hugo van Kemenade
869b786db1
Merge pull request #5696 from radarhere/quantize_palette 2021-09-06 15:42:12 +03:00
Hugo van Kemenade
a918186d92
Merge pull request #5667 from radarhere/ico
Read ICO AND mask from end
2021-09-05 14:30:10 +03:00
Hugo van Kemenade
65b5f91b60
Merge pull request #5659 from wiredfool/fli_framesize 2021-09-05 14:14:58 +03:00
Hugo van Kemenade
1dc6564eb7 Raise ValueError if color specifier is too long 2021-09-02 15:02:57 +03:00
Eric Soroos
a20d45fc0b Fix 6-byte OOB read in FliDecode 2021-09-02 15:00:11 +03:00
Hugo van Kemenade
874118e343
Merge pull request #5651 from nulano/5637
Hide FriBiDi shim symbols to avoid conflict with real FriBiDi library
2021-09-01 18:06:45 +03:00
Andrew Murray
0dba28613b Copy Python palette to new image in quantize() 2021-08-31 00:33:10 +10:00
Hugo van Kemenade
57c672efcc
Merge pull request #5654 from radarhere/ihdr 2021-08-24 15:08:23 +03:00
Hugo van Kemenade
4c7777c425
Merge pull request #5599 from radarhere/palette
Updates for ImagePalette channel order
2021-08-24 14:52:46 +03:00
Hugo van Kemenade
d5d6c3ba8c
Merge pull request #5611 from radarhere/apng_info 2021-08-24 11:59:38 +03:00
Hugo van Kemenade
2d01f7d022
Merge pull request #5655 from radarhere/whiteiszero
Allow saving 1 and L mode TIFF with PhotometricInterpretation 0
2021-08-14 20:41:08 +03:00
Hugo van Kemenade
a7f5b25dc3
Merge pull request #5603 from radarhere/gif_palette
For GIF save_all with palette, do not include palette with each frame
2021-08-13 13:20:57 +03: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
Andrew Murray
98aa0f10ad pre-commit autoupdate --freeze 2021-08-12 21:50:09 +10:00
Andrew Murray
cbdc751628 Read AND mask from end 2021-08-10 07:04:36 +10:00
Yutao Yuan
f55ccd9563 Remove stdout check in ImageFile._save 2021-08-09 23:13:54 +08:00
Eric Soroos
8f300af691 Actually check the framesize in FliDecode. 2021-08-08 15:02:18 +02:00
Andrew Murray
9ad8c0c415 Updated location of make_hash script [ci skip] 2021-08-08 13:08:42 +10:00
mergify[bot]
43785a3201
Merge pull request #5620 from radarhere/eps
Added "transparency" argument to EpsImagePlugin load()
2021-08-06 15:32:13 +00: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
Andrew Murray
9bf7dae03d Allow saving L mode TIFF with PhotometricInterpretation 0 2021-08-06 23:50:52 +10:00
Andrew Murray
4063deddac
Merge branch 'master' into eps 2021-08-06 23:32:02 +10:00
Andrew Murray
caecb3a772 Merge branch 'master' into wal 2021-08-06 22:03:51 +10:00
Andrew Murray
929c561937 Merge branch 'master' into eps 2021-08-06 22:03:12 +10:00
Hugo van Kemenade
025f2071f5
Merge pull request #5598 from radarhere/i16
Consider I;16 pixel size when drawing text
2021-08-06 14:10:04 +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
2dab52b8a8 Allow saving 1 mode TIFF with PhotometricInterpretation 0 2021-08-05 23:27:08 +10:00
Andrew Murray
6596e31605 Determine mode purely from ihdr header box 2021-08-05 01:06:01 +10:00
nulano
259c671a55 hide FriBiDi shim symbols to avoid conflict with real FriBiDi library 2021-08-03 00:03:21 +02:00
Hugo van Kemenade
5a9dacfc26
Merge pull request #5646 from radarhere/expand 2021-08-02 20:13:34 +03:00
Andrew Murray
6406dabf29
Merge pull request #5568 from rogermb/jpeg2000-resolution
Add support for reading DPI information from JPEG2000 images
2021-08-03 00:06:13 +10:00
Andrew Murray
02d92a594c Merge branch 'master' into expand 2021-08-02 23:39:16 +10:00
Andrew Murray
dab5721c34 Favour integer operations when calculating DPI 2021-08-02 22:09:35 +10:00
Alexander Karpinsky
a312b0e9d0
Merge pull request #5639 from uploadcare/jpeg-safe-dpi-read
Add TypeError handling to pass corrupted DPI value in EXIF
2021-08-02 14:34:54 +03:00
Andrew Murray
8ab06b4dac Updated comment [ci skip] 2021-08-01 21:06:33 +10:00
Andrew Murray
8828080868 Removed unreachable code 2021-08-01 18:39:54 +10:00
Andrew Murray
0c600f1d88 Prevent reading past end of file pointer even if box length allows it 2021-08-01 18:39:47 +10:00
Andrew Murray
3ee5a9b094 Stop reading from "res " after all information is extracted 2021-08-01 18:39:35 +10:00
Andrew Murray
ae54838146 If DPI is invalid, ignore it instead of raising an error 2021-08-01 18:38:56 +10:00
Andrew Murray
d1815377b8 Copy palette to new image in transform() 2021-07-31 22:49:16 +10:00
Andrew Murray
61419b54d6
Merge pull request #5645 from farizrahman4u/patch-2
Do not close file pointer in SGI save handler
2021-07-31 13:53:37 +10:00
Andrew Murray
9125631ff0 Added flush 2021-07-30 20:29:22 +10:00
Andrew Murray
438c3cc097 Speed up rotating square images by 90 or 270 degrees 2021-07-30 19:57:09 +10:00
Fariz Rahman
feb3103bfd
SGI save handler should not close output stream 2021-07-30 00:57:00 +04:00
Andrew Murray
a9372d5cf0 Fixed generated palettes 2021-07-29 16:20:20 +10:00
Andrew Murray
d0a30ec369 Updated documentation 2021-07-29 16:20:20 +10:00
Andrew Murray
cf275737ee Do not rearrange palette channels 2021-07-29 16:20:20 +10:00
Andrew Murray
41b968ad10 Deprecate ImagePalette size parameter 2021-07-29 16:19:53 +10:00
Hugo van Kemenade
faaeee1e7d
Merge pull request #5601 from radarhere/webp_icc_profile
Allow saving WebP with icc_profile None
2021-07-28 13:10:36 +03:00
Hugo van Kemenade
4e4d580dfd
Merge pull request #5597 from radarhere/ycbcr_tiff
Added tags when saving YCbCr TIFF
2021-07-28 13:08:54 +03:00
Hugo van Kemenade
5f39e8e60a
Merge pull request #5613 from radarhere/psd 2021-07-28 12:53:24 +03:00
Alexander Karpinsky
3abe5e884b Add TypeError handling to pass corrupted dpi value in exif 2021-07-26 16:13:01 +03:00
Andrew Murray
a43d46e87a Corrected size parameter documentation [ci skip] 2021-07-26 22:53:39 +10:00
Hugo van Kemenade
567fbaf782
Merge pull request #5615 from radarhere/expand
Fixed ImageOps expand with tuple border on P image
2021-07-26 11:33:26 +03: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
1d73a483f4 Added "transparency" argument to load() 2021-07-19 09:08:45 +10:00
Andrew Murray
7484bb08b4
Merge pull request #5588 from kmilos/patch-2
Ensure TIFF RowsPerStrip is multiple of 8 for JPEG compression
2021-07-18 18:17:25 +10:00
Andrew Murray
a9fccfada1 Added WalImageFile class 2021-07-18 12:35:27 +10:00
Andrew Murray
0a7af10827 Instead of drawing border, calculate palette index before image creation in expand() 2021-07-16 20:58:32 +10:00
Meithal
a139b97845 Cleanup 2021-07-15 20:48:47 +02:00
Meithal
3fbc9eb229 self.mode = "BGRA" wasn't correct and captured by #affa059 2021-07-15 20:33:35 +02:00
Andrew Murray
a46f5cdd0a PSD layer count may be negative 2021-07-15 19:38:26 +10:00
Andrew Murray
e766ddbc39 Removed unnecessary code 2021-07-13 23:02:27 +10:00
Andrew Murray
63c3b26f6a Fixed using info dictionary when writing multiple frames 2021-07-13 23:02:23 +10:00
Andrew Murray
0521ac71e0 Renamed variable 2021-07-13 18:47:48 +10:00
thak1411
45aec95717 Fixed round error in saving apng file 2021-07-13 12:07:36 +09:00
Andrew Murray
97e0cb85ee Keep transparency when converting from P to LA or PA 2021-07-12 22:55:12 +10:00
Andrew Murray
622a1cd542 Changed URLs to HTTPS 2021-07-12 21:00:36 +10:00
Andrew Murray
43ea81c6db For save_all with palette, do not include palette with each frame 2021-07-11 22:52:32 +10:00
Andrew Murray
b45fdd0817 Allow saving WebP with icc_profile None 2021-07-10 15:15:10 +10:00
Andrew Murray
5cdcc2cf64 Added tags when saving YCbCr TIFF 2021-07-10 01:20:36 +10:00
Andrew Murray
a39cb04f3e Consider I;16 pixel size when drawing text 2021-07-09 21:23:43 +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
Miloš Komarčević
01e423da00
Ensure TIFF RowsPerStrip is multiple of 8 for JPEG compression 2021-07-07 09:38:06 +02:00
Hugo van Kemenade
f6c91c3db9
Merge pull request #5585 from radarhere/stdout
Catch OSError when checking if fp is sys.stdout
2021-07-06 09:05:46 +03:00
Andrew Murray
f962b18f69 Catch OSError when checking if fp is sys.stdout 2021-07-06 11:00:03 +10:00
Andrew Murray
917a598615 Handle removing orientation from alternate types of EXIF data 2021-07-06 10:37:28 +10:00
Andrew Murray
9688507193 Removed variable 2021-07-05 23:02:26 +10:00
Meithal
919f38e3d9 Try test 2021-07-05 00:20:15 +02:00
Meithal
d9c14e9ccd Merge branch 'master' into patch-3 2021-07-04 13:14:43 +02:00
Andrew Murray
9707d33ed9 Allow "exif" to also accept bytestring 2021-07-04 13:32:41 +10:00
Andrew Murray
c0f619384c Added "exif" keyword argument to save Image.Exif instance 2021-07-04 12:33:55 +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
53ce23c749 8.4.0.dev0 version bump 2021-07-01 16:55:53 +10:00
Andrew Murray
51591a80a4 8.3.0 version bump 2021-07-01 13:53:49 +10:00
Andrew Murray
31c473898c
Merge pull request #5567 from radarhere/sprintf
Limit sprintf modes to 10 characters
2021-07-01 12:57:13 +10:00
Miloš Komarčević
fa66d150e2 Enable strip chopping for large TIFFs 2021-07-01 00:43:56 +10:00
Hugo van Kemenade
861a031304
Merge pull request #5514 from kmilos/fix_tiff_rowsperstrip 2021-06-30 17:31:42 +03:00