Commit Graph

1830 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
948c064b28 Allow getpalette() to return less than 256 colors 2022-02-16 09:56:13 +11: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
9cdb0508b6 Attach RGBA palettes from putpalette() when suitable 2022-02-14 20:28:47 +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
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
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
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
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
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
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
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
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
7370a0b1cf Remove consecutive duplicates that only differ by their offset 2022-01-01 14:54:23 +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
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
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