Commit Graph

1270 Commits

Author SHA1 Message Date
nulano
1656edaf41 fix docs compliance for CF_HDROP 2020-05-09 10:44:19 +02:00
nulano
5728662c7f add support for CF_DIBV5, CF_HDROP, and 'PNG' in ImageGrab.grabclipboard() on win32 2020-05-09 09:40:58 +02:00
Alexander
f15e4a8e06 truncate icclist instead of changing to None 2020-05-08 19:48:20 +03:00
Andrew Murray
59957fb8d8 Added support for 1-D NumPy arrays 2020-05-04 20:07:23 +10:00
Andrew Murray
6669ffd053 Updated documentation now that Linux is supported 2020-05-03 13:06:25 +10:00
Hugo van Kemenade
bd0f7b7116
Merge pull request #4594 from rodrigob/patch-1 2020-05-01 19:43:51 +03:00
Andrew Murray
ae43af61da Replaced tabs with spaces 2020-05-01 22:08:57 +10:00
Andrew Murray
d5c3814691 Changed default offset for Exif 2020-05-01 19:43:37 +10:00
David Walker
cc39dbab0e Fix ImageChops documentation.
Many methods were incorrectly documented as requriring mode "1". The remaining
ones require *both* images to be mode "1".

Documentation only, [ci skip]
2020-04-30 23:25:45 -07:00
Andrew Murray
f5e9252b12 Fixed drawing a jointed line with a sequence of numeric values 2020-04-24 18:48:10 +10:00
Andrew Murray
b65e72b2fc Updated example code to new-style class [ci skip] 2020-04-23 20:05:30 +10:00
Hugo
d21e45536a Link to Filters concept from methods' parameters [CI skip] 2020-04-23 11:18:24 +03:00
Andrew Murray
9390e5636a Also consider other alpha modes 2020-04-20 18:53:37 +10:00
Andrew Murray
e10cab42f1 Consider transparency when drawing text on an RGBA image 2020-04-19 20:56:17 +10:00
Hugo van Kemenade
f83f19788b
Merge pull request #4552 from radarhere/animation
Simplified animation code
2020-04-17 19:30:04 +03:00
Andrew Murray
9956a6c777 Fixed bug when unpickling TIFF images 2020-04-17 22:13:14 +10:00
Andrew Murray
574b0ee315 Removed initial seek 2020-04-17 22:05:38 +10:00
Andrew Murray
03b5ffbd23 Use common _seek_check method 2020-04-17 22:05:25 +10:00
Andrew Murray
0b33a87b0d Replaced property methods for n_frames and is_animated with normal properties 2020-04-17 22:00:21 +10:00
Hugo van Kemenade
529e113505
Merge pull request #4561 from hugovk/fix-webp-pickle
Fix pickling WebP
2020-04-17 14:48:50 +03:00
Andrew Murray
986c55ff64 Initialise __loaded = 0, removed initialisation of __physical_frame 2020-04-17 19:15:05 +10:00
Andrew Murray
fe8225732a Throw image loading error faster 2020-04-17 18:29:45 +10:00
Hugo
94751da23e Initialise __physical_frame = 0 and add pickle roundtrip tell test 2020-04-17 11:21:57 +03:00
Hugo van Kemenade
f589f8689f
Initialise __logical_frame = 0 so tell() == 0 when unpickled
Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-04-17 11:20:38 +03:00
Andrew Murray
f21816918e Allow ImageMagick zTXt chunks to be extracted after copy() 2020-04-16 21:14:19 +10:00
Andrew Murray
1e63f772f8 Parse orientation from XMP tags 2020-04-16 21:05:34 +10:00
Hugo
2e6ab7c669 Fix pickling webp 2020-04-16 11:46:34 +03:00
Andrew Murray
13dcab0fb7 Replaced DEBUG with logging 2020-04-13 07:16:46 +10:00
Andrew Murray
f17f1bc607 Added method argument to single frame WebP saving 2020-04-11 20:43:49 +10:00
Andrew Murray
7bb51a4aca Raise DeprecationWarning on raise_ioerror 2020-04-10 12:57:29 +03:00
Hugo
dda6145fce Since Python 3.3 IOError and WindowsError have been merged into OSError 2020-04-10 12:57:29 +03:00
Andrew Murray
c414810d12 Replaced property methods for n_frames and is_animated with normal properties 2020-04-05 15:23:18 +10:00
Hugo
2e9030ddca Initialise __frame = 0 in open, and test tell 2020-04-02 08:49:26 +03:00
Hugo
0a757b7085 Initialise __frame = 0 2020-04-01 22:17:39 +03:00
Hugo
0a77f73ef3 7.2.0.dev0 version bump 2020-04-01 18:55:23 +03:00
Hugo
f0fe60ae9f 7.1.0 version bump 2020-04-01 13:12:46 +03:00
Hugo van Kemenade
46f4a349b8
Merge pull request #4507 from hugovk/fix_tiff
Fix 2 buffer overflows in TIFF decoding
2020-04-01 12:51:04 +03:00
Hugo van Kemenade
ff60894d69
Merge pull request #4505 from hugovk/jpeg2k_overflow
Fix bounds overflow in JPEG 2000 decoding
2020-04-01 12:27:27 +03:00
Hugo van Kemenade
2ef59fdbae
Merge pull request #4504 from hugovk/sgi_fixes
Fix buffer overflow in SGI-RLE decoding
2020-04-01 12:27:14 +03:00
Hugo van Kemenade
0da1eca7cf
Merge pull request #4503 from hugovk/fix_fli_6.2.x
Fix multiple OOB reads in FLI decoding
2020-04-01 12:27:04 +03:00
Hugo van Kemenade
c00fdc7e30 Fix typos
Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-04-01 11:02:44 +03:00
Eric Soroos
b8d4ce1a59 Avoid uninitialized read 2020-04-01 11:02:36 +03:00
Eric Soroos
6b842f4ec0 Ensure that Tiff's concept of Strip and Tilesize matches Pillow's 2020-04-01 11:02:33 +03:00
Eric Soroos
6a83e43247 Fix OOB Access on PcxDecode.c 2020-04-01 10:50:51 +03:00
Hugo van Kemenade
c5e9de15b1 Fix typo 2020-04-01 10:34:24 +03:00
Eric Soroos
cf6da6b790 Fix for OOB Read in DecodeJpeg2k 2020-04-01 10:33:41 +03:00
Eric Soroos
394d6a180a Track number of pixels, not the number of runs 2020-04-01 10:12:17 +03:00
Eric Soroos
5b490fc413 additional FLI check 2020-04-01 09:53:14 +03:00
Eric Soroos
088ce4df98 comments 2020-04-01 09:53:08 +03:00
Eric Soroos
8d4f3c0c5f Fix OOB Read in FLI Copy Chunk 2020-04-01 09:52:59 +03:00
Eric Soroos
c5edc361fd Fix OOB Advance Values 2020-04-01 09:52:55 +03:00
Eric Soroos
c88b0204d7 Fix OOB in LC packet 2020-04-01 09:52:51 +03:00
Eric Soroos
b4e439d6d7 Fix OOB Reads in SS2 Chunk 2020-04-01 09:52:47 +03:00
Eric Soroos
f6926a041b Refactor to macro 2020-04-01 09:52:44 +03:00
Eric Soroos
c66d8aa754 Fli issue 1 2020-04-01 09:52:40 +03:00
Hugo van Kemenade
f27873a888
Merge pull request #4243 from pmrowla/apng
Add APNG support
2020-04-01 00:23:57 +03:00
Hugo van Kemenade
b5cf165f9e
Merge pull request #4260 from nulano/imagegrab_xcb
ImageGrab.grab() for Linux with XCB
2020-03-31 23:03:21 +03:00
Hugo van Kemenade
16e1d6a048
Merge pull request #4494 from hugovk/re-add-PILLOW_VERSION
Re-add deprecated PILLOW_VERSION to give projects more time to upgrade
2020-03-31 22:58:23 +03:00
Hugo van Kemenade
761edafed8
Merge branch 'master' into re-add-PILLOW_VERSION 2020-03-31 12:07:14 +03:00
Marcin Jaworski
60997894d1 Change single to double quotes 2020-03-31 10:20:43 +02:00
Marcin Jaworski
15612d94b5 Support for different charset encondings in PcfFontFile 2020-03-31 10:20:43 +02:00
Hugo van Kemenade
c6115c1ceb
Merge pull request #4230 from dwastberg/new_chops
Added three new channel operations
2020-03-31 10:24:44 +03:00
Andrew Murray
7597a9fbfd Raise warning for more operations 2020-03-31 17:41:47 +11:00
Andrew Murray
027d180eda Raise a DeprecationWarning when comparing PILLOW_VERSION 2020-03-30 21:53:02 +11:00
Andrew Murray
5a511c6a8b
Merge pull request #4474 from radarhere/reduce2
Prevent masking Image reduce method in Jpeg2K
2020-03-30 07:29:21 +11:00
Hugo
afa758eb33 Re-add deprecated PILLOW_VERSION to give projects more time to upgrade 2020-03-29 18:36:37 +03:00
nulano
1e31de1824 add missing if brackets 2020-03-29 13:25:48 +02:00
Andrew Murray
6d8f2f95db Do not reduce size if tile already loaded
Co-Authored-By: Alexander Karpinsky <homm86@gmail.com>
2020-03-29 16:27:43 +11:00
Andrew Murray
4f9118bdbd Added comment [ci skip] 2020-03-29 16:27:37 +11:00
Andrew Murray
ff6ca4159a Prevent masking Image reduce method 2020-03-29 16:27:29 +11:00
Hugo van Kemenade
7b628a5ef6
Merge pull request #4433 from zt-initech/release_GIL_in_WEBP_encode
Release Python GIL during WEBP encode
2020-03-27 20:08:26 +02:00
Hugo van Kemenade
b1f22344b4
Style consistency 2020-03-26 19:07:51 +02:00
Hugo van Kemenade
3970db0535
Merge pull request #4471 from radarhere/exif_imagemagick
Added reading of earlier ImageMagick PNG EXIF data
2020-03-26 13:42:58 +02:00
Hugo van Kemenade
332e3923cb
Merge pull request #4457 from radarhere/endian
Fixed endian handling for I;16 getextrema
2020-03-25 23:32:37 +02:00
Hugo van Kemenade
93483a7eeb
Merge pull request #4372 from nulano/cms
Return None if display profile not found in ImageCms.get_display_profile
2020-03-25 21:06:10 +02:00
Hugo van Kemenade
5e4b6e9378
Merge pull request #4381 from radarhere/memory
Release buffer if function returns prematurely
2020-03-25 21:03:16 +02:00
Andrew Murray
6473c237c0 Fixed typo 2020-03-24 19:52:27 +11:00
nulano
5253b0cd57 Use NotImplementedError in ImageGrab if using Linux
Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-03-24 19:46:40 +11:00
nulano
0bcc7be89b xcb screengrab docs and fixes 2020-03-24 19:46:40 +11:00
nulano
f9c74825a6 xcb screengrab fixes 2020-03-24 19:40:54 +11:00
nulano
3c39e6fcf6 xcb screengrab support 2020-03-24 19:29:44 +11:00
Peter Rowlands
8373c38840 Drop alpha channels when computing frame delta 2020-03-15 20:02:10 +09:00
Andrew Murray
ca5a81ef27 Added reading of earlier ImageMagick EXIF data 2020-03-14 00:04:58 +11:00
Andrew Murray
9f61be4c72
Merge branch 'master' into apng 2020-03-09 23:29:40 +11:00
Andrew Murray
e41cfade29 Add JPEG comment to info dictionary 2020-03-07 06:57:29 +11:00
Hugo van Kemenade
3f9b615349
Merge pull request #4404 from orlnub123/bugfix/thumbnail
Fix size calculation of Image.thumbnail()
2020-03-06 00:33:03 +02:00
Hugo van Kemenade
0f7ed2d35f
Merge pull request #4435 from radarhere/close_images
Close exclusively opened images
2020-03-06 00:27:46 +02:00
Hugo van Kemenade
da4667cc9e
Merge pull request #4401 from radarhere/freetype
Fixed stroke on FreeType < 2.9
2020-03-06 00:21:17 +02:00
Hugo van Kemenade
3b30b88c7f
Merge pull request #4454 from radarhere/bbox
If present, only use alpha channel for bounding box
2020-03-05 12:38:52 +02:00
Hugo van Kemenade
974233be45
Merge pull request #4438 from jdufresne/warning
Warn on typos passed to features.check()
2020-03-02 21:26:17 +02:00
Hugo van Kemenade
cd00430b04
Merge pull request #4441 from radarhere/noargs
Use METH_NOARGS when no arguments are required
2020-03-02 21:24:56 +02:00
Hugo van Kemenade
64a9e0c660
Merge branch 'master' into apng 2020-02-29 17:40:17 +02:00
Andrew Murray
42a0653097 Fixed endian handling for I;16 getextrema 2020-02-29 20:29:28 +11:00
Andrew Murray
b934b50867 If an alpha channel is present, only use that to get bounding box 2020-02-28 22:33:02 +11:00
Andrew Murray
1c1ad65a96
Merge pull request #4424 from hugovk/fix-im-long-name
Fix saving IM images in dir with long path
2020-02-27 20:27:44 +11:00
Andrew Murray
9ba25f8135 Trim end of name, keeping ext 2020-02-26 20:15:23 +11:00
Zeev Tarantov
7df7cb25ee release python GIL during WEBP encode 2020-02-25 15:15:26 +02:00
Andrew Murray
17c10b0ca0 Fixed stroke on FreeType < 2.9 2020-02-24 22:49:33 +11:00
Andrew Murray
1dcf94af1b Removed unused method 2020-02-24 22:48:42 +11:00
Andrew Murray
55b487368a Use METH_NOARGS when no arguments are required 2020-02-24 22:48:42 +11:00
Peter Rowlands
9b72f0513c Adjust is_animated behavior
- Make is_animated APNG behavior consistent with other Pillow formats
- is_animated will be true when n_frames is greater than 1 (for APNG
  this depends on animation frame count + presence or absence of a
  default image)
2020-02-23 15:14:06 +11:00
Peter Rowlands
00fcc53a1d Fix lint errors 2020-02-23 15:14:06 +11:00
Peter Rowlands
9f4716ff30 Fix split fdAT chunk sequence error 2020-02-23 15:14:06 +11:00
Peter Rowlands
35148b99c1 Fix comment
[ci skip]
2020-02-23 15:14:06 +11:00
Peter Rowlands
bdcf980570 Fix pypy test failures 2020-02-23 15:14:06 +11:00
Peter Rowlands
512b060a53 Fix tox -e lint errors 2020-02-23 15:14:06 +11:00
Peter Rowlands
67e3ccffeb Add APNG support
See #3483

Adds support for reading APNG files and seeking through frames,
and adds basic support for writing APNG files.
2020-02-23 15:11:08 +11:00
orlnub123
84c33abaa0 Make key an argument 2020-02-22 12:30:10 +00:00
Hugo
a82ba5b2c2 Save IM: use only filename as name, ditch potentially overlong path 2020-02-22 13:00:25 +02:00
orlnub123
8f21d0ddf0 Improve rounding 2020-02-21 23:38:38 +00:00
Andrew Murray
a8c0794107 Allow saving of zero quality JPEG images 2020-02-21 22:05:44 +11:00
Dag Wästberg
2e02500fa6 change function names to snake_case 2020-02-19 19:38:53 +11:00
dwastberg
7d5ab9f1d4 Remove old code 2020-02-19 19:37:34 +11:00
Dag Wästberg
23a61b00b5 fix formatting 2020-02-19 19:37:02 +11:00
Dag Wästberg
23c9da5264 add Overlay chop 2020-02-19 19:34:13 +11:00
Dag Wästberg
705140cc2c add hardlight and softlight chops 2020-02-19 19:30:59 +11:00
Dag Wästberg
319f5409fe fix formatting 2020-02-19 19:28:27 +11:00
Dag Wästberg
e18e96d736 fix formatting 2020-02-19 19:28:27 +11:00
Dag Wästberg
13c1b7070d add Overlay chop 2020-02-19 19:24:36 +11:00
Dag Wästberg
5e5dfbad81 add hardlight and softlight chops 2020-02-19 19:23:09 +11:00
Jon Dufresne
c057ad1535 Warn on typos passed to features.check()
If the feature isn't one of the recognized types, a UserWarning is
emitted.
2020-02-18 19:48:48 -08:00
Andrew Murray
dd8b0de666 Close excusively opened images 2020-02-18 20:49:05 +11:00
Andrew Murray
6e130e9f63 Close file pointer in __main__ 2020-02-17 22:12:46 +11:00
Andrew Murray
bd7242228b Fixed saving bug in __main__ 2020-02-17 22:11:24 +11:00
Hugo
85e06057e2 The 'Name: ' field must be less than length 100 2020-02-17 00:57:58 +02:00
orlnub123
2e716de63d Floor the size 2020-02-16 21:26:17 +11:00
orlnub123
e226e4ed64 Don't upscale if the image is smaller than the size 2020-02-16 21:25:51 +11:00
orlnub123
e9ef1d236d Fix size calculation of Image.thumbnail() 2020-02-16 21:25:51 +11:00
nulano
309291563a return None if display profile not found in ImageCms.get_display_profile 2020-02-16 21:06:13 +11:00
Andrew Murray
b0b3097018 Explicity return None
Co-Authored-By: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-02-16 20:35:39 +11:00
Andrew Murray
466da649f5 get_display_profile is only supported on Windows 2020-02-16 20:35:39 +11:00
Hugo van Kemenade
0e993c4740
Merge pull request #4334 from radarhere/outline_width
Allow explicit zero width to hide outline
2020-02-15 14:30:12 +02:00
Hugo van Kemenade
cc3c743c70
Merge pull request #4297 from radarhere/container
Change ContainerIO return type to match file object mode
2020-02-15 14:29:32 +02:00
Andrew Murray
74351dc692 Fixed sign comparison warnings 2020-02-15 22:13:23 +11:00
Andrew Murray
8acf77a042 For effiency, set newline character outside of loop 2020-02-15 22:13:10 +11:00
Andrew Murray
f958e2f8ed Return strings or bytes from ContainerIO according to the file object mode 2020-02-15 22:13:10 +11:00
Jon Dufresne
e817ed0d3e Correct str/bytes mixup in ContainerIO
Image data is expected to be read in bytes mode, not text mode so
ContainerIO should return bytes in all methods. The passed in file
handler is expected to be opened in bytes mode (as TarIO already does).
2020-02-15 22:13:10 +11:00
Hugo van Kemenade
c57e4b3a85
Merge pull request #4333 from radarhere/polygon
Only draw each polygon pixel once
2020-02-15 11:57:14 +02:00
Andrew Murray
d9e6abf8cf
Merge pull request #4410 from uploadcare/already-int
Math functions return int in Python 3
2020-02-08 09:14:27 +11:00
Alexander
54f3dc6006 Math functions return int in Python 3 2020-02-08 00:34:53 +03:00
Alexander Karpinsky
d37da39940
Merge pull request #4377 from ubyte/ubsan-signed-overflow
Avoid undefined signed overflow
2020-02-08 00:07:51 +03:00
Alexey Moiseitsev
4437a81968 Avoid undefined signed overflow 2020-02-03 14:13:16 +03:00
Alex
767f39fc75
Add support for more ExifIFD tags
Added support for:  "AmbientTemperature", "Humidity", "Pressure", "WaterDepth", "Acceleration" and "CameraElevationAngle"
2020-01-30 12:51:03 +01:00
Hugo van Kemenade
29d36c9260
Merge pull request #4388 from jdufresne/str-bytes-shim
Remove leftover Python 2 compatibility shim
2020-01-29 14:41:59 +02:00
Hugo van Kemenade
659f73d0be
Merge pull request #4389 from jdufresne/make-bytes
Remove unnecessary make_bytes() function
2020-01-27 15:55:14 +02:00
Alexander Karpinsky
5965437402
Merge pull request #4370 from uploadcare/jpeg-multiple-app13
Handle multiple and malformed JPEG APP13 markers
2020-01-27 15:46:36 +03:00
Alexander Karpinsky
fd03a68c1a
Update comment
Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-01-27 15:18:02 +03:00
Jon Dufresne
c84c736e5b Remove unnecessary make_bytes() function
The function was introduced in 65112bad7e
to handle the differences between Python 2 & 3 byte handling. Now that
Python 3 supports byte formatting, can drop the unnecessary
compatibility shim in favor of native features.
2020-01-26 15:16:04 -08:00
Jon Dufresne
d57d02e827 Remove leftover Python 2 compatibility shim
In Python 3, __str__ should not return bytes.
2020-01-26 14:46:27 -08:00
Hugo van Kemenade
892aec306b
Merge pull request #4385 from jdufresne/try-block
Limit try block to code expected to raise an exception
2020-01-26 20:04:39 +02:00