Commit Graph

3833 Commits

Author SHA1 Message Date
Hugo van Kemenade
5908ccc5ae
Merge pull request #5938 from radarhere/zero
Return an empty bytestring from tobytes() for an empty image
2022-01-07 08:34:50 +02:00
Andrew Murray
b5160591bc Return an empty bytestring from tobytes() for an empty image 2022-01-07 16:29:38 +11:00
Andrew Murray
fbe396f22a Removed duplicate check 2022-01-07 12:34:58 +11:00
pre-commit-ci[bot]
52f29a537d [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2022-01-03 17:11:34 +00: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
525c840b0f Updated path after pillow-wheels switched to libjpeg-turbo 2022-01-01 20:15:06 +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
Andrew Murray
1998d12bb6 Added sys import 2021-12-30 00:11:20 +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
4222605442 Fixed freeing pointer 2021-12-27 13:39:37 +11:00
Andrew Murray
73ccda9cd1 Do not compare properties to themselves 2021-12-26 13:27:41 +11:00
Andrew Murray
ff723e45ab Ensure that pixel data offset does not ignore palette 2021-12-21 12:43:50 +11: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
b1cc094f57 Add 16-bit grayscale test 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
Andrew Murray
1fb1bec0e8 Added test 2021-11-29 17:49:19 +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
3a302f3e4b Only add test to PPM 2021-11-25 23:33:59 +11:00
Andrew Murray
3af00edc85 Added context managers 2021-11-25 23:16:07 +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
Andrew Murray
838c8efa25 Corrected file length in header 2021-11-20 14:17:42 +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
Andrew Murray
d7873e02ab Added test that translucent polygon pixels do not combine 2021-11-16 11:12:48 +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
DWesl
5a41417224 Skip test_readonly_save on Cygwin.
The test seems to require opening a file for reading, mmapping it,
then opening that file for writing.  Windows doesn't allow this.
2021-11-04 19:48:53 -04: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
e6ffeac66f Updated image comparison 2021-10-19 16:08:23 +11:00
Hugo van Kemenade
cb5c8f6f86 Remove unused left_old variable 2021-10-18 11:28: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
Hugo van Kemenade
a8c18d0817 Rename master to main 2021-10-15 17:30:05 +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
pre-commit-ci[bot]
dbb0a41600 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2021-10-13 21:10:23 +00:00
Andrew Murray
1140f6538d
Ensure reset after test failure
Co-authored-by: Ondrej Baranovič <nulano@nulano.eu>
2021-10-14 08:09:36 +11: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
Andrew Murray
b5d6a73da9 Added test 2021-10-13 11:39:31 +02: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
Hugo van Kemenade
63c5faa0f6
Merge pull request #5688 from Google-Autofuzz/new_atheris 2021-09-13 09:27:57 +03: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
5d399603db Update test case
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-09-02 15:03:03 +03:00
Hugo van Kemenade
1dc6564eb7 Raise ValueError if color specifier is too long 2021-09-02 15:02:57 +03:00
Eric Soroos
d5edc5ff09 FLI tests for Oss-fuzz crash.
* Note, valgrind doesn't pick this up, it's only the oss-fuzz
  reproducer that catches it OMM.
2021-09-02 15:02:27 +03:00
Andrew Murray
0dba28613b Copy Python palette to new image in quantize() 2021-08-31 00:33:10 +10:00
pre-commit-ci[bot]
3b69035d4b [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2021-08-25 14:52:20 +00:00
Julien Voisin
9d48143567 Improve the fuzzer wrt. the current atheris version 2021-08-25 16:50:47 +02:00
Andrew Murray
1b397751ec
Added context managers 2021-08-24 23:43:38 +10:00
Hugo van Kemenade
57c672efcc
Merge pull request #5654 from radarhere/ihdr 2021-08-24 15:08:23 +03:00
Andrew Murray
8b639f7546
Merge pull request #5686 from hugovk/fix-test-warnings
Fix/filter/avoid test warnings
2021-08-24 21:53:03 +10: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
d773fcd23d Filter out UserWarning: Truncated File Read 2021-08-24 11:33:43 +03:00
Hugo van Kemenade
320ab8172e Avoid DecompressionBombWarning: Image size (151587072 pixels) exceeds limit of 89478485 pixels, could be decompression bomb DOS attack. 2021-08-24 11:19:45 +03:00
Hugo van Kemenade
474270fbd5 Filter out UserWarning: Truncated File Read 2021-08-24 11:03:10 +03:00
Hugo van Kemenade
2b9e230f76 Fix ResourceWarning: unclosed file 2021-08-24 10:58:02 +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
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
Yutao Yuan
0f11d22cce Add tests for saving to stdout 2021-08-10 19:12:20 +08:00
Andrew Murray
cbdc751628 Read AND mask from end 2021-08-10 07:04:36 +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
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
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
8045ecceef Added tests 2021-08-01 19:01:43 +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
300f1ffc02 Added test 2021-07-30 20:29:07 +10:00
Andrew Murray
438c3cc097 Speed up rotating square images by 90 or 270 degrees 2021-07-30 19:57:09 +10:00
Andrew Murray
a9372d5cf0 Fixed generated palettes 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
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
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
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
63c3b26f6a Fixed using info dictionary when writing multiple frames 2021-07-13 23:02:23 +10:00
Andrew Murray
ca16cf2aac Added test 2021-07-13 18:47:55 +10:00
Andrew Murray
97e0cb85ee Keep transparency when converting from P to LA or PA 2021-07-12 22:55:12 +10:00
Andrew Murray
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
Andrew Murray
abb192c9b3 Added test 2021-07-07 11:34:15 +02:00
Andrew Murray
917a598615 Handle removing orientation from alternate types of EXIF data 2021-07-06 10:37:28 +10:00
Meithal
919f38e3d9 Try test 2021-07-05 00:20:15 +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
73f6cf22f3 Use numpy.float64 instead of numpy.float to avoid deprecation (thank you radarhere) 2021-07-01 14:06:13 +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
Hugo van Kemenade
861a031304
Merge pull request #5514 from kmilos/fix_tiff_rowsperstrip 2021-06-30 17:31:42 +03:00
Hugo van Kemenade
06f88ddff4
Merge pull request #4526 from newpanjing/master 2021-06-30 17:13:43 +03:00
Roger Baumgartner
5f4653d0b4 Attempt to read dpi information from JPEG2000's resc header box 2021-06-30 06:43:33 -07:00
mergify[bot]
914950959b
Merge pull request #4989 from gofr/4962-jpeg-zigzag
De-zigzag JPEG's DQT when loading; deprecate convert_dict_qtables
2021-06-30 12:37:26 +00:00
Andrew Murray
1b74bddfde
Merge pull request #5564 from radarhere/getcolor
Do not use background or transparency index for new color
2021-06-30 21:45:21 +10:00
Andrew Murray
d11c794997 Merge branch 'master' into 4962-jpeg-zigzag 2021-06-30 20:54:55 +10:00
Andrew Murray
8f5762ec5f Parametrized test 2021-06-30 20:32:48 +10:00
Andrew Murray
0aa8bd00e7 Added warning if defusedxml is not found 2021-06-30 11:29:13 +10:00
Andrew Murray
d9d811ff21 Replaced xml.etree.ElementTree with defusedxml.ElementTree 2021-06-30 11:28:44 +10:00
Andrew Murray
eab2b17d64 Do not use background or transparency index for new color 2021-06-30 00:05:25 +10:00
Andrew Murray
3e5ceb6d67 Corrected border position 2021-06-29 21:24:41 +10:00
Andrew Murray
90ece137b0
Merge branch 'master' into master 2021-06-29 20:52:35 +10:00
Andrew Murray
a1d8d638bf
Checked complete length of value 2021-06-29 19:41:00 +10:00
mergify[bot]
28330c2f9d
Merge pull request #5561 from radarhere/crash
Moved CVE image to pillow-depends
2021-06-29 07:07:14 +00:00
Hugo van Kemenade
2251be1a6f
Merge pull request #5554 from radarhere/tag_group_data 2021-06-28 19:03:01 +03:00
Hugo van Kemenade
50302231ed
Merge pull request #5552 from radarhere/palette 2021-06-28 19:01:54 +03:00
Hugo van Kemenade
d0394d44c2
Merge pull request #5402 from radarhere/dds 2021-06-28 18:50:21 +03:00
Hugo van Kemenade
b5c4b9afe0
Merge pull request #5455 from radarhere/xmp 2021-06-28 18:43:04 +03:00
Hugo van Kemenade
9f28e4be26
Merge pull request #5412 from radarhere/ifdrational_eq_float 2021-06-28 18:33:46 +03:00
Hugo van Kemenade
6d94376d1f
Merge pull request #5416 from radarhere/tiff_exif
Allow getexif() to access TIFF tag_v2 data
2021-06-28 18:12:17 +03:00
Hugo van Kemenade
78f150cb42
Merge pull request #5405 from radarhere/fits
Read FITS image mode and size
2021-06-28 17:57:49 +03:00
Hugo van Kemenade
f3db65db09
Merge pull request #5347 from radarhere/edge 2021-06-28 17:17:17 +03:00
Andrew Murray
2976c4efdc Removed crash image 2021-06-28 23:27:52 +10:00
Andrew Murray
1ee30ded0b Fixed reloading palette 2021-06-28 22:27:05 +10:00
Andrew Murray
d24299a16c Corrected comments 2021-06-28 20:21:46 +10:00
Andrew Murray
6db0e96102 Ensure image is loaded in remap_palette 2021-06-28 20:12:22 +10:00
Hugo van Kemenade
00303a29e9
Merge pull request #5557 from radarhere/gif_first_frame_transparency 2021-06-27 16:14:23 +03:00
Andrew Murray
804183c248 Only use an RGBA palette for images with an alpha channel 2021-06-27 18:29:02 +10:00
Andrew Murray
7005e66f00 Use first index for repeated color 2021-06-27 16:33:47 +10:00
Andrew Murray
450382f574 Do not use raw ImagePalette 2021-06-27 15:09:39 +10:00
Andrew Murray
dd28af0dfa
Merge branch 'master' into tag_group_data 2021-06-27 12:06:11 +10:00
Andrew Murray
f6d504c8f6 Use context manager 2021-06-26 00:48:16 +10:00
Glenn Maynard
432677740d Add a test for an image that works with other GIF decoders.
This test is fixed by the next commits.
2021-06-26 00:48:10 +10:00
Andrew Murray
5b4cb5052a Draw first frame on top of transparency 2021-06-25 21:54:21 +10:00
Andrew Murray
61c39074f5 Fixed undefined variable in logging 2021-06-25 19:46:58 +10:00
Andrew Murray
a2709be7f4 Added tag data for IFD groups 2021-06-24 19:56:01 +10:00
Andrew Murray
b6b362c807 Set color after attaching palette in expand() 2021-06-23 19:28:56 +10:00
Andrew Murray
8210645e4b If all 256 colors are in use, then there is no need for an additional color for background or transparency 2021-06-23 19:28:46 +10:00
Andrew Murray
f3451aefc6 Convert opaque RGBA color to RGB if that is the palette mode 2021-06-23 19:26:53 +10:00
Andrew Murray
3b9792ab74 Convert getcolor input to RGBA if that is the palette mode 2021-06-23 19:23:34 +10:00
Andrew Murray
4d36feefc7 Set palette to be empty by default 2021-06-23 19:22:21 +10:00
Andrew Murray
dc89f0eaa9 Set colors 2021-06-23 19:16:04 +10:00
Hugo van Kemenade
ec74f3b1c0
Merge pull request #5367 from radarhere/quant 2021-06-20 21:57:05 +03:00
Hugo van Kemenade
e5b2d61e00
Merge pull request #5551 from radarhere/imageops 2021-06-20 15:51:21 +03:00
Hugo van Kemenade
53b51e1df6
Merge pull request #5549 from radarhere/palette 2021-06-20 15:44:38 +03:00
Hugo van Kemenade
7c08565e5e
Merge pull request #5547 from radarhere/exif 2021-06-20 13:22:05 +03:00
Hugo van Kemenade
8b0244ac66
Merge pull request #5540 from radarhere/numresolution 2021-06-20 11:58:51 +03:00
Andrew Murray
6639b2af7f Copy palette to new images in expand 2021-06-19 21:24:58 +10:00
Andrew Murray
f45d2e296d Ensure palette string matches RGB mode 2021-06-19 09:16:05 +10:00
Andrew Murray
04566917f8 Do not modify EXIF of original image instance in exif_transpose() 2021-06-18 19:01:12 +10:00
Andrew Murray
3066c48faa
Merge pull request #5533 from radarhere/random
Fixed errors when running tests in random order
2021-06-14 22:43:31 +10:00
Andrew Murray
6449cdc1a3 Added RGBA saving 2021-06-14 18:14:28 +10:00
Andrew Murray
143e08c92c Added RGB saving 2021-06-14 18:14:28 +10:00
Andrew Murray
bd298b128c Fixed default numresolution for small JPEG2000 images 2021-06-14 11:23:56 +10:00
Andrew Murray
cd31dae0d1 Added getxmp() for PNG 2021-06-12 13:57:14 +10:00
Andrew Murray
ae3bdf87f0 Added getxmp() for TIFF 2021-06-12 12:17:38 +10:00
Andrew Murray
c1fbe2d975 Corrected getxmp() descending into XML 2021-06-12 11:58:11 +10:00
Miloš Komarčević
100299a838 Add multiple strip saving test 2021-06-12 11:49:20 +10:00
Hugo van Kemenade
101887360c
Merge pull request #5501 from radarhere/dds_bc5 2021-06-11 10:34:19 +03:00
Hugo van Kemenade
a9b0adc57f
Merge pull request #5510 from radarhere/textbbox 2021-06-10 17:46:32 +03:00
Andrew Murray
41fc39174a Reset fuzzer LOAD_TRUNCATED_IMAGES and filters to allow for random test order 2021-06-10 13:49:17 +10:00
Andrew Murray
d99a6ff862 Reset MAX_IMAGE_PIXELS after each test to allow for random test order 2021-06-10 13:17:57 +10:00
Hugo van Kemenade
2a7eb5415e
Merge pull request #5513 from radarhere/ico_bmp
Added ICO saving in BMP format
2021-06-06 18:12:33 +03:00
Hugo van Kemenade
87dca4f477
Merge pull request #5493 from radarhere/png_load_end
Ensure PNG seeks to end of previous chunk at start of load_end
2021-06-06 10:35:04 +03:00
Hugo van Kemenade
1ac7bd9f87
Merge pull request #5473 from radarhere/tiff_seek
Do not allow TIFF to seek to a past frame
2021-06-05 18:49:34 +03:00
Andrew Murray
2c9a9b3529 Added ICO saving in BMP format 2021-05-27 06:21:28 +10:00
Andrew Murray
362d504011 Raise an error if textbbox is used without a FreeTypeFont 2021-05-25 20:45:38 +10:00
Hugo van Kemenade
affa059e95
Merge pull request #5504 from radarhere/tuple_size
Added specific error messages when ink has incorrect number of bands
2021-05-23 17:18:38 +03:00
Hugo van Kemenade
3cbf4d5ef7
Merge pull request #5379 from radarhere/numpy
Allow converting an image to a numpy array to raise errors
2021-05-20 15:09:02 +03:00
Andrew Murray
3b4db88202 Added BC5_SNORM reading when FourCC is DX10 2021-05-19 22:19:19 +10:00
Andrew Murray
f59ff6d55b Read BC5_TYPELESS as BC5_UNORM 2021-05-19 21:16:12 +10:00
Andrew Murray
1bb98974f8 Moved DXT5 test after DXT3 test 2021-05-19 21:14:51 +10:00
Andrew Murray
a1412681ff Added specific error messages when ink has incorrect number of bands 2021-05-19 20:19:57 +10:00
Andrew Murray
2e7f40e0b8 Added BC5_SNORM reading 2021-05-18 17:44:21 +10:00
Andrew Murray
68ac6d151e Added BC5_UNORM reading 2021-05-17 18:57:23 +10:00
Hugo van Kemenade
a72ae6823c
Merge pull request #5476 from radarhere/dpi_rounding 2021-05-16 20:00:10 +03:00
Hugo van Kemenade
d53a664866
Merge pull request #5470 from radarhere/wmf_dpi_rounding
Removed WMF DPI rounding
2021-05-16 19:57:14 +03:00
Andrew Murray
78406ed1ff
Merge pull request #5460 from xtsm/ellipse
Remove spikes when drawing thin pieslices
2021-05-14 23:37:11 +10:00
Hugo van Kemenade
f02739715d
Merge pull request #5452 from radarhere/missing_samplesperpixel
Updated default value for SAMPLESPERPIXEL TIFF tag
2021-05-14 16:17:34 +03:00
Andrew Murray
bf97a92bc6 Ensure PNG seeks to end of previous chunk at start of load_end 2021-05-14 13:18:49 +10:00
Andrew Murray
7bfaffd5fa Simplified tests now that casting to float is not needed 2021-05-10 09:36:57 +10:00
Andrew Murray
c04260b3f5 Convert to float for comparison with float in IFDRational __eq__ 2021-05-10 08:36:45 +10:00
Andrew Murray
9bbe53a01d
Merge pull request #5446 from radarhere/tiff_dpi_rounding
Removed TIFF DPI rounding
2021-05-10 08:34:05 +10:00
Hugo van Kemenade
3942eaec18
Merge pull request #5471 from radarhere/webp_error_code 2021-05-09 23:18:49 +03:00
Hugo van Kemenade
79eb24ba34
Merge pull request #5474 from radarhere/stdout 2021-05-09 23:17:23 +03:00
Hugo van Kemenade
649eaae360
Merge pull request #5434 from radarhere/text_alpha 2021-05-09 22:17:58 +03:00
Hugo van Kemenade
23f848ea54
Merge pull request #5443 from radarhere/fp 2021-05-09 20:39:44 +03:00
Andrew Murray
9ac888262a Do not allow TIFF to seek to a past frame 2021-05-08 00:25:47 +10:00
Andrew Murray
18e204df05 Removed DPI rounding from JPEG loading 2021-05-07 21:23:29 +10:00
Andrew Murray
0de3beaeaf Removed DPI rounding when BMP loading 2021-05-07 20:50:18 +10:00
Andrew Murray
9d72542c08 Removed DPI rounding from PNG loading 2021-05-07 20:50:01 +10:00
Andrew Murray
e7749abdf9 Corrected error in restoring sys.stdout 2021-05-07 20:44:46 +10:00
Andrew Murray
4080f160b6 Include code in WebP error 2021-05-07 00:12:03 +10:00
Andrew Murray
b9c571a328 Removed WMF DPI rounding 2021-05-06 20:08:54 +10:00
Andrew Murray
6fc039a21c Updated default value for SAMPLESPERPIXEL tag 2021-05-04 16:50:12 +10:00
Hugo van Kemenade
20b8a83773
Merge pull request #5437 from radarhere/stdout 2021-05-03 11:57:46 +03:00
Andrew Murray
0f68e63793 Allow for sys.stdout.buffer to be missing 2021-05-03 18:07:05 +10:00
Hugo van Kemenade
d2f2fbacaa
Merge pull request #5426 from radarhere/undefined_zero
Fixed UNDEFINED TIFF tag of length 0 being changed in roundtrip
2021-05-03 09:07:32 +03:00
Stanislau Tsitsianok
ca67a0c1a2
Added test for #5432 2021-05-02 17:12:27 +03:00
Hugo van Kemenade
0836e388e8
Merge pull request #5459 from radarhere/pdf_float
Do not round dimensions when saving PDF
2021-05-02 11:16:34 +03:00
Hugo van Kemenade
8a8ac60817
Merge pull request #5417 from radarhere/contain
Added ImageOps contain()
2021-05-01 18:44:37 +03:00
Andrew Murray
d22fe41776 Reorganised test to use parametrize 2021-05-01 22:36:12 +10:00
Andrew Murray
bc935f9970 Do not round dimensions when saving PDF 2021-05-01 12:13:09 +10:00
Andrew Murray
8bc19ac78c Do not alter pixels outside mask when drawing text on an image with transparency 2021-04-29 23:08:25 +10:00
Andrew Murray
b78cf8cd75 Added state methods to allow pickling of IFDRational 2021-04-29 22:47:44 +10:00
Andrew Murray
537cd7a82e Removed TIFF DPI rounding 2021-04-29 22:47:44 +10:00
Andrew Murray
fd299e36ce Reset handle when seeking backwards as well 2021-04-29 22:47:20 +10:00
Andrew Murray
9c06ce044c Changed PSDraw default from sys.stdout to sys.stdout.buffer 2021-04-29 21:35:57 +10:00
Andrew Murray
fae9afe351 Replace sys.stdout with sys.stdout.buffer when saving 2021-04-29 21:35:57 +10:00
Andrew Murray
622ba122ce Added Exif load_from_fp method to get TIFF tag_v2 data 2021-04-29 21:21:55 +10:00
Andrew Murray
976d9fa347 Fixed UNDEFINED TIFF tag of length 0 being changed in roundtrip 2021-04-29 21:21:09 +10:00
Hugo van Kemenade
dc817ead76
Merge pull request #5430 from radarhere/pdf_1
Switched to saving 1-bit PDFs with DCTDecode
2021-04-25 15:29:34 +03:00
Hugo van Kemenade
6461dd63b3
Merge pull request #5429 from radarhere/ico
Use bpp from ICO header
2021-04-25 12:07:38 +03:00
Hugo van Kemenade
d3a3b6dddb
Merge pull request #5408 from radarhere/indexerror
Corrected JPEG APP14 transform value
2021-04-25 11:36:40 +03:00
Hugo van Kemenade
23efd39b99
Merge pull request #5425 from radarhere/iptc
Changed TIFF tag 33723 length to 1
2021-04-25 11:23:52 +03:00
Hugo van Kemenade
b09a9210d4
Merge pull request #5414 from radarhere/morph
Changed ImageMorph incorrect mode errors to ValueError
2021-04-23 16:52:55 +03:00
Andrew Murray
d62be3e354 Switched to saving 1-bit PDFs with DCTDecode 2021-04-22 22:16:21 +10:00
Andrew Murray
900b849aa8 Use bpp from header 2021-04-22 21:18:21 +10:00
Andrew Murray
6b098a2c34 Changed TIFF tag 33723 length to 1 2021-04-21 22:37:47 +10:00
Andrew Murray
6967f3519f Test when "adobe_transform" is unable to be read 2021-04-20 20:53:50 +10:00
Andrew Murray
8d52181123 Corrected test 2021-04-20 20:24:50 +10:00
Hugo van Kemenade
bb5a34fcb0
Merge pull request #5391 from radarhere/gif_disposal
Treat previous contents of first GIF frame as transparent
2021-04-20 13:23:11 +03:00
Hugo van Kemenade
d2e73b0304
Merge pull request #5411 from radarhere/resize_default
For special image modes, revert default resize resampling to NEAREST
2021-04-19 17:57:46 +03:00
Andrew Murray
40eceec70d Added contain method 2021-04-19 20:12:52 +10:00
Hugo van Kemenade
fc08a72600
Merge pull request #5400 from radarhere/mapdepth_16
Changed mode for TGA 16-bit palette to BGR;15
2021-04-18 13:00:29 +03:00
Hugo van Kemenade
50fdc151ea
Merge pull request #5396 from radarhere/mapdepth
TGA color map entry size is only 1 byte
2021-04-18 12:57:58 +03:00
Andrew Murray
7e4fd9d845 Changed incorrect mode errors to ValueError 2021-04-18 14:47:05 +10:00
Hugo van Kemenade
197673b9b2
Merge pull request #4996 from nulano/jp2-decode-subsample 2021-04-17 21:42:17 +03:00
Andrew Murray
7c0344bb99 For special image modes, revert default resize resampling to NEAREST 2021-04-17 12:18:42 +10:00
Andrew Murray
4351c37fc4 Corrected adobe_transform value 2021-04-15 21:49:51 +10:00
Andrew Murray
1e074f5040
Merge pull request #4144 from jansol/master
Stop decoding BC1 punchthrough alpha in BC2&3
2021-04-15 20:24:52 +10:00
Andrew Murray
a47072bcbe Treat previous contents of first frame as transparent 2021-04-15 19:01:12 +10:00
Hugo van Kemenade
2f5687f886
Merge pull request #5390 from radarhere/gif_missing_background
Use zero if GIF background color index is missing
2021-04-15 11:57:31 +03:00
Hugo van Kemenade
0cc2943aef
Merge pull request #5386 from radarhere/previous_frame_loaded
Fixed ensuring that GIF previous frame was loaded
2021-04-15 10:47:44 +03:00
Andrew Murray
4dde8109d7 Resolved FIXME by reading mandatory FITS header items 2021-04-14 22:48:27 +10:00
Andrew Murray
35107e9637 Changed failure to create decoder to OSError for Parser 2021-04-14 20:01:56 +10:00
Andrew Murray
2cb1d056c0 Merge branch 'master' into jp2-decode-subsample 2021-04-11 12:49:10 +10:00
Andrew Murray
c5f886958a Merge branch 'master' into quant 2021-04-11 12:41:48 +10:00
Andrew Murray
a3dbee9f08 Cover horizontal lines both increasing in x 2021-04-11 12:41:33 +10:00
Andrew Murray
006de79d60 Use assert_image_equal_tofile 2021-04-11 12:41:33 +10:00
Tsung-Po Sun
9a4b1301de Modify test code 2021-04-11 12:41:33 +10:00
Tsung-Po Sun
87e7e88591 fix lint 2021-04-11 12:41:32 +10:00
Tsung-Po Sun
df0273e024 Reformat 2021-04-11 12:41:32 +10:00
Tsung-Po Sun
324d934128 Remove spaces 2021-04-11 12:41:32 +10:00
Tsung-Po Sun
824d2fa4f3 Add test 2021-04-11 12:41:32 +10:00
wiredfool
fe668716ed
Merge pull request #5397 from wiredfool/valgrind_fixes
Valgrind fixes
2021-04-10 19:15:17 +01:00
Eric Soroos
1c872a9eda lint stuff 2021-04-10 16:58:01 +02:00
Andrew Murray
fc64064387 Changed mode for 16-bit palette to BGR;15 2021-04-10 22:11:20 +10:00
Eric Soroos
af6fb9c518 xfail the fuzzer check as well 2021-04-10 12:03:39 +02:00
Eric Soroos
c94f66ad13 make sure we return a mark decorator 2021-04-10 12:03:15 +02:00
Eric Soroos
a3a69c8385 conditional mark for valgrind ignore 2021-04-09 23:53:24 +02:00
Andrew Murray
356681faae
Merge pull request #5393 from hugovk/test-redos
Add test for CVE-2021-25292 ReDoS
2021-04-09 23:34:11 +10:00
Eric Soroos
43aa6ade6f Local valgrind test target 2021-04-09 13:39:28 +02:00
Andrew Murray
04df6e3bf1 mapdepth is only 1 byte 2021-04-09 21:38:28 +10:00
Andrew Murray
714d6c8cd3 Removed shebang line 2021-04-09 19:10:53 +10:00
Andrew Murray
b8c8375d0c Use python3 in shebang line 2021-04-09 19:10:36 +10:00
Hugo van Kemenade
bde149be38 Add test for CVE-2021-25292 ReDoS 2021-04-08 23:53:22 +03:00
Andrew Murray
3cb2413066 Use zero if background color index is missing 2021-04-08 08:04:20 +10:00
Hugo van Kemenade
75c111903c
Merge pull request #5382 from radarhere/rounded_rectangle
Round down the radius in rounded_rectangle
2021-04-07 19:31:19 +03:00
Andrew Murray
d661e438f6 Fixed ensuring that previous frame was loaded 2021-04-06 19:31:51 +10:00
Andrew Murray
d06871d543 Set mode of three channel uncompressed RGB data to RGB 2021-04-05 17:58:02 +10:00
Andrew Murray
6f87faf0ee Reversed rawmode for uncompressed RGB data 2021-04-05 17:54:34 +10:00
Andrew Murray
92edc29439 Round down the radius in rounded_rectangle 2021-04-05 08:54:06 +10:00
Andrew Murray
d4f9c6e082 Renamed register_open accept methods for consistency 2021-04-03 21:51:23 +11:00
Andrew Murray
77a8a53a94 Allow converting an image to a numpy array to raise errors 2021-04-03 13:20:58 +11:00
Andrew Murray
3c129142c8 Catch OSError 2021-04-03 09:34:56 +11:00
Andrew Murray
39fe85f308
Merge branch 'master' into jp2-decode-subsample 2021-04-03 09:26:55 +11:00
Andrew Murray
6541bd7cb5 Added second attribute to avoid unstable nature of qsort 2021-04-02 04:07:18 +11:00
Hugo van Kemenade
8febdad8dd Review, typos and lint 2021-04-01 17:41:46 +03:00
Eric Soroos
496245aa43 Fix BLP DOS -- CVE-2021-28678
* BlpImagePlugin did not properly check that reads after jumping to
  file offsets returned data. This could lead to a DOS where the
  decoder could be run a large number of times on empty data
* This dates to Pillow 5.1.0
2021-04-01 17:17:35 +03:00
Eric Soroos
22e9bee4ef Fix DOS in PSDImagePlugin -- CVE-2021-28675
* PSDImagePlugin did not sanity check the number of input layers and
  vs the size of the data block, this could lead to a DOS on
  Image.open prior to Image.load.
* This issue dates to the PIL fork
2021-04-01 17:17:31 +03:00
Eric Soroos
ba65f0b08e Fix Memory DOS in ImageFont
* A corrupt or specially crafted TTF font could have font metrics that
  lead to unreasonably large sizes when rendering text in
  font. ImageFont.py did not check the image size before allocating
  memory for it.
* Found with oss-fuzz
* This dates from the PIL fork
2021-04-01 17:17:27 +03:00
Eric Soroos
bb6c11fb88 Fix FLI DOS -- CVE-2021-28676
* FliDecode did not properly check that the block advance was
  non-zero, potentally leading to an infinite loop on load.
* This dates to the PIL Fork
* Found with oss-fuzz
2021-04-01 17:17:23 +03:00
Eric Soroos
5a5e6db0ab Fix EPS DOS on _open -- CVE-2021-28677
* The readline used in EPS has to deal with any combination of \r and
  \n as line endings. It used an accidentally quadratic method of
  accumulating lines while looking for a line ending.
* A malicious EPS file could use this to perform a DOS of Pillow in
  the open phase, before an image was accepted for opening.
* This dates to the PIL Fork
2021-04-01 17:17:18 +03:00
Eric Soroos
3bf5eddb89 Fix OOB Read in Jpeg2KDecode CVE-2021-25287,CVE-2021-25288
* For J2k images with multiple bands, it's legal in to have different
  widths for each band, e.g. 1 byte for L, 4 bytes for A
* This dates to Pillow 2.4.0
2021-04-01 17:17:13 +03:00
Andrew Murray
2c8684c525 Moved getxmp() into JpegImageFile 2021-04-01 22:28:37 +11:00
Hugo van Kemenade
6812205f18
Merge pull request #5144 from UrielMaD/feature_xmp 2021-04-01 12:44:47 +03:00
Hugo van Kemenade
b90c73f08d
Merge pull request #5373 from wiredfool/valgrind_test_warnings
Fix pytest valgrind warnings
2021-04-01 12:17:50 +03:00
Hugo van Kemenade
8c852e44f0
Merge pull request #5349 from latosha-maltba/master 2021-04-01 11:55:37 +03:00
Andrew Murray
37f9fcf93b Removed unused imports 2021-04-01 12:57:34 +11:00
Eric Soroos
87934e22d0 Fix for crash-0da0 2021-03-31 23:24:30 +02:00
Eric Soroos
53c80281d7 fix for crash-8115 2021-03-31 22:23:57 +02:00
Eric Soroos
45530d5ce1 fixes crash-74d2 2021-03-31 22:23:57 +02:00
Eric Soroos
22a6893364 Fix pytest valgrind warnings 2021-03-31 21:28:15 +02:00
Hugo van Kemenade
c54a7bb031
Merge pull request #5333 from radarhere/gif_frame_transparency 2021-03-31 18:08:11 +03:00
Hugo van Kemenade
727533148e
Merge pull request #5282 from radarhere/quantize
Set all transparent colors to be equal in quantize()
2021-03-31 17:58:21 +03:00
Hugo van Kemenade
683affa29c
Merge pull request #5206 from radarhere/numpy 2021-03-31 17:46:32 +03:00
Andrew Murray
b0b4fee796
Merge pull request #5350 from elejke/master
Add preserve_tone option to autocontrast
2021-03-30 07:59:57 +11:00
Andrew Murray
7844c6e483 Test that preserve_tone changes RGB images but not L images 2021-03-29 23:26:34 +11:00
wiredfool
9a683db339
Merge pull request #5274 from radarhere/gradient
Fixed linear_gradient and radial_gradient I and F modes
2021-03-28 14:35:22 +01:00
wiredfool
d0612030a0
Merge pull request #5364 from wiredfool/4641_merge
Add support for reading TIFFs with PlanarConfiguration=2
2021-03-28 14:33:42 +01:00
wiredfool
611a6d2330
Merge pull request #5328 from wiredfool/oss-fuzz
More OSS-Fuzz support
2021-03-28 14:19:29 +01:00
Konstantin Kopachev
4c2dfadf26 Swap pixel values on Big Endian 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
169bb4842f only use TIFFReadRGBA* in case of o_jpeg compression 2021-03-28 15:03:37 +02:00
nulano
671837840a the previous commit also fixes these big-endian failures 2021-03-28 15:03:37 +02:00
Konstantin Kopachev
0018685a8e Add Tests and support for Planar Tiff Images 2021-03-28 15:03:37 +02:00
German Novikov
d18e55013d
Update Tests/test_imageops.py
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-03-28 15:02:52 +03:00
Eric Soroos
bf8cebc96d Add libxcb to fuzzers 2021-03-28 13:49:37 +02:00
Hugo van Kemenade
e405ab300b
Merge pull request #5351 from radarhere/categories 2021-03-28 14:34:50 +03:00
Andrew Murray
71cd97a519 Added deprecation warnings 2021-03-28 15:51:28 +11:00
Ondrej Baranovič
9872d57e3b
corrected comment 2021-03-27 02:06:36 +01:00