Commit Graph

521 Commits

Author SHA1 Message Date
Hugo
454fdd7800
Merge pull request #3501 from pirate486743186/patch-2
Add APNG extension to PNG plugin
2018-12-29 16:55:07 +02:00
Andrew Murray
6ead422e91 Added custom string TIFF tags 2018-12-29 16:14:52 +11:00
Andrew Murray
952de2ec4c Use constants for tag types 2018-12-29 16:14:29 +11:00
Andrew Murray
5edeca28b6 Corrected docstring 2018-12-28 07:14:44 +11:00
Andrew Murray
21268c87b3
Merge branch 'master' into patch-2 2018-12-27 17:39:40 +11:00
Andrew Murray
acc2c150f6 Added APNG mime type 2018-12-27 11:19:40 +11:00
Andrew Murray
09e94e40a1 Handle APNG chunks 2018-12-27 10:53:16 +11:00
pirate486743186
8d0b7e6b57 adding apng extension for png 2018-12-26 21:14:27 +01:00
Hugo
a43b8bac1e
Merge pull request #3506 from radarhere/png
Read textual chunks located after IDAT chunks for PNG
2018-12-26 13:34:50 +02:00
Hugo
14b1321c42
Merge pull request #3503 from Glandos/patch-2
Don't try to hash value if enum is empty
2018-12-26 13:32:18 +02:00
Hugo
78bc4da131
Merge pull request #3350 from radarhere/custom_tags
Added custom int and float TIFF tags
2018-12-26 13:07:46 +02:00
Hugo
55e5b7de6c
Merge pull request #3393 from frenzymadness/CWE_fixes_master
Fixes for issues reported by static code analysis
2018-12-26 13:02:19 +02:00
Hugo
bbb3be9a9d
Merge pull request #3187 from radarhere/encoderinfo
Wait until mode is normalized to copy im.info into encoderinfo
2018-12-26 12:56:50 +02:00
Andrew Murray
22837c37e2 Read textual chunks located after IDAT chunks 2018-12-24 23:58:19 +11:00
Glandos
0b8b3e679a
Add code comment 2018-12-22 15:29:31 +01:00
Glandos
e37b3fb7d3
don't try to hash value if enum is empty
Very few tags have an enum, and for those who don't, computing the hash value can be very expensive, e.g. instances of `fractions.Fraction` as mentioned in [the source](https://github.com/python/cpython/blob/master/Lib/fractions.py#L543).
2018-12-20 16:07:03 +01:00
Hugo
69837baba2
Merge pull request #3490 from radarhere/open_files
Updated open files documentation
2018-12-13 21:14:22 +02:00
Hugo
3ed5dcc928
Merge pull request #3467 from hugovk/lint-can-fail
CI: Allow lint job to fail
2018-12-13 21:09:58 +02:00
Hugo
961fecb35c
Merge pull request #3261 from radarhere/fp
Resolve __fp when closing and deleting
2018-12-13 21:09:23 +02:00
Hugo
857b077f5c
Merge pull request #3461 from radarhere/exclusive_fp
Close exclusive fp before discarding
2018-12-13 21:07:32 +02:00
Andrew Murray
233915bf9d Updated strings 2018-12-13 19:19:45 +11:00
Andrew Murray
49b23157c4 Include header 2018-12-13 19:18:17 +11:00
Hugo
0635e38514
Updated list syntax
Co-Authored-By: radarhere <3112309+radarhere@users.noreply.github.com>
2018-12-13 00:28:26 +11:00
Andrew Murray
7172a44caa Added libjpegturbo to check_feature 2018-12-12 21:25:05 +11:00
Andrew Murray
91f727051b Updated open files documentation 2018-12-11 14:39:10 +11:00
Konstantin Kopachev
e91b851fdc
Add reading old-JPEG compressed TIFFs
Old-style JPEG compression in TIFFs are able to be read using Strip/Tile APIs. Although, it should be possible to read them using Scanline API, it does not work for some reason.  Anyway, reading subsampled YCbCr formats through Strip/Tile/Scanline libtiff API does not de-subsample the data, so caller should unpack data to whatever format is appropriate.  New-style JPEG compressed images were already read through libtiff as RGB images (https://github.com/python-pillow/Pillow/pull/3227). Unfortunately, there is no flag to ask libtiff to de-subsample old jpeg, but it provides a way to read any image as 32bit RGBA.  This commit adds ability to read old-style JPEG TIFFs through reading *all* YCbCr images as RGBX using Tile and Strip reading API. This supersedes previous work (PR #3227) to read new-style JPEG-TIFFs.
2018-12-10 10:07:41 -08:00
Andrew Murray
ad26f53bf6 Updated comments 2018-12-05 18:19:00 +11:00
Hugo
ffa4932ed0 noqa a pair of ambiguous variable names 2018-12-04 23:25:28 +02:00
Hugo
c353225851 Prefer 'except Exception:' to bare 'except:' 2018-12-04 23:25:28 +02:00
Hugo
c75910dbc3 noqa some Py2/3 compat lines and others 2018-12-04 23:25:27 +02:00
Hugo
f3c1f08f5b noqa the few remaining long and hard-to-split lines 2018-12-04 23:25:27 +02:00
Hugo
231604e921
Merge pull request #3471 from radarhere/background
Change color table index background to tuple when saving as WebP
2018-12-04 23:22:53 +02:00
Hugo
a4fccd3dde
Merge pull request #3479 from radarhere/gif_extension
Allow arbitrary number of comment extension subblocks
2018-12-04 23:09:59 +02:00
Hugo
0c2e4840f2
Merge pull request #3478 from radarhere/fli
Ensure previous FLI frame is loaded before seeking to the next
2018-12-04 22:51:54 +02:00
Hugo
5c16528fdf
Merge pull request #3450 from radarhere/imageshow
ImageShow improvements
2018-12-04 22:47:28 +02:00
Andrew Murray
b2b737b68b Allow arbitrary number of comment extension subblocks 2018-11-27 21:11:22 +11:00
Andrew Murray
f1b2802eb1 Resolved error for comment extension with zero subblocks 2018-11-27 21:09:28 +11:00
Andrew Murray
2f7f945c84 Ensure previous FLI frame is loaded before seeking to the next 2018-11-26 18:52:51 +11:00
Andrew Murray
6c126ca282 Change color table index background to tuple when saving 2018-11-20 19:50:14 +11:00
Andrew Murray
84df069169 Use im.info background when saving 2018-11-20 18:50:00 +11:00
Andrew Murray
47775f3d50 Resolve __fp when closing and deleting 2018-11-17 21:56:06 +11:00
Andrew Murray
61397de88b Check quality_layers type 2018-11-16 23:31:42 +11:00
Andrew Murray
b637b5f7a2 Close exclusive fp before discarding 2018-11-13 22:13:55 +11:00
Andrew Murray
fea3dafd05 Supply filename through stdin instead of inline in Mac and Unix ImageShow viewers 2018-11-12 19:33:57 +11:00
Andrew Murray
a0be7b09cc Added UnixViewer get_command 2018-11-12 19:33:57 +11:00
Andrew Murray
d8e66c1882 Moved variable declaration and execution 2018-11-12 06:14:04 +11:00
Hugo
8d6347ab72 Changed array size to be arbitrary
Co-Authored-By: radarhere <radarhere@gmail.com>
2018-11-12 06:14:04 +11:00
Hugo
207ed04d87 Removed hardcoded array size
Co-Authored-By: radarhere <radarhere@gmail.com>
2018-11-12 06:14:04 +11:00
Andrew Murray
ddf8593e7b Do not write custom tags with libtiff < 4 2018-11-12 06:14:04 +11:00
Andrew Murray
a3d45e9cef Added custom int and float TIFF tags 2018-11-12 06:14:04 +11:00
Hugo
ceebfc6fe8 flake8: E501 line too long 2018-11-11 19:01:11 +02:00
Hugo
7d625940ae flake8: E131 continuation line unaligned for hanging indent 2018-11-11 19:01:11 +02:00
Hugo
94c94eb1f7 flake8: E128 continuation line under-indented for visual indent 2018-11-11 19:01:11 +02:00
Hugo
a3079eab9e flake8: E127 continuation line over-indented for visual indent 2018-11-11 19:01:10 +02:00
Hugo
0b7910c7cd flake8: E402 module level import not at top of file 2018-11-11 19:01:10 +02:00
Hugo
91da8ff31d flake8: F401 imported but unused 2018-11-11 19:01:10 +02:00
Hugo
eb9aee7048 flake8: F841 local variable is assigned to but never used 2018-11-11 19:01:10 +02:00
Andrew Murray
e3220c0f4d Changed capitalisation 2018-11-11 16:00:48 +11:00
Hugo
5288cf63c9 Changed capitalisation
Co-Authored-By: radarhere <3112309+radarhere@users.noreply.github.com>
2018-11-11 16:00:40 +11:00
Andrew Murray
52c175d1bc Added context manager, __del__ and close methods 2018-11-11 16:00:17 +11:00
Andrew Murray
747eccbfc2 Close exclusive fp on open exception 2018-11-09 11:35:08 +11:00
Hugo
ed10276a6b
Merge pull request #3418 from radarhere/webp_fp
Only close existing fp in WebP if fp is exclusive
2018-10-31 09:16:53 +02:00
Hugo
e12aa375ec
Merge pull request #3406 from Nazime/negativeindex
Add negative index to PixelAccess
2018-10-27 23:27:15 +03:00
Hugo
4530f55c61
Merge pull request #3385 from radarhere/gif_background
Change tuple background to global color table index when saving as GIF
2018-10-24 22:34:40 +03:00
Andrew Murray
929f7397db Line too long 2018-10-21 18:26:08 +11:00
Andrew Murray
ac20a02b7a Do not use bare 'except' 2018-10-21 18:11:39 +11:00
Andrew Murray
f2d4d19cc4 Undefined name 2018-10-21 18:00:52 +11:00
Andrew Murray
ede35510c1 Continuation line over-indented for visual indent 2018-10-21 17:59:59 +11:00
Andrew Murray
d265757651 Continuation line unaligned for hanging indent 2018-10-21 17:59:51 +11:00
Andrew Murray
77f807cf73 Continuation line under-indented for visual indent 2018-10-21 17:59:27 +11:00
Andrew Murray
6099ddeef9 Expected 1 blank line before a nested definition 2018-10-21 17:59:18 +11:00
Konstantin Kopachev
28cdb993b9
Convert tabs into spaces [ci skip] 2018-10-19 11:43:22 -07:00
Andrew Murray
e84a78d828 Only close existing fp if fp is exclusive 2018-10-19 20:12:08 +11:00
Konstantin Kopachev
2bf3ceee85
Only ask for YCbCr->RGB libtiff conversion for jpeg-compressed tiffs
JPEG-related tiff pseudo-tags are registered only when tiff image has jpeg compression. Trying to set TIFFTAG_JPEGCOLORMODE on non jpeg-compressed file prints error "Unknown pseudo-tag 65538".
2018-10-18 21:27:51 -07:00
Alexander Karpinsky
2222a581ab
Merge pull request #3409 from uploadcare/resize-from-box-in-fit
Optimise ImageOps.fit by combining resize and crop
2018-10-18 11:55:06 +03:00
Alexander Karpinsky
b8e7f646f3
Merge pull request #3415 from python-pillow/fix-webp-loading-from-blob
Quick fix: revert #3341 due to regression
2018-10-18 11:38:29 +03:00
Alexander
6cabcadae4 add release notes 2018-10-18 10:58:20 +03:00
Alexander
f8d4aa5882 Quick fix: revert #3341 due to regression 2018-10-18 10:19:11 +03:00
Alexander
73eec9000d Optimise ImageOps.fit by combining resize in crop 2018-10-17 01:57:55 +03:00
Nazime
86324a842d Add setting negative pixels and unittest 2018-10-15 12:51:24 +02:00
Nazime
468c405a47 Image pixels negative index 2018-10-14 16:12:58 +02:00
Andrew Murray
7edca01921 Minor documentation improvement [ci skip] 2018-10-11 19:36:50 +11:00
Erich Seifert
9807f1ad56
Fixed documentation on bilevel conversion
The cutoff when converting an image to bilevel (mode "1") is 128. This should resolve issue #3394.
2018-10-05 01:11:24 +02:00
Lumir Balhar
78bf8ea041 Fix potential leaked storage issues (CWE-772) 2018-10-02 14:06:21 +02:00
Lumir Balhar
2e288e74ab Fix potential un-terminated buffer problem (CWE-120) 2018-10-02 14:06:08 +02:00
Andrew Murray
a7eb2ea9cc Change tuple background to global color table index when saving 2018-10-02 20:52:07 +10:00
Andrew Murray
3437d5fcb4 5.4.0.dev0 version bump 2018-10-01 18:39:58 +10:00
Andrew Murray
0ac14725ef 5.3.0 version bump 2018-10-01 15:48:10 +10:00
Hugo
2fa54408d4
Merge pull request #3203 from radarhere/size
Changed Image size property to be read-only by default
2018-09-30 14:35:35 +03:00
Andrew Murray
2c11974b86 Fixed typo 2018-09-30 21:09:42 +10:00
Hugo
a0fda60662 Use snake_case 2018-09-30 15:34:33 +10:00
Andrew Murray
82d942c3d8 Added warnings if image file identification fails due to lack of support 2018-09-30 15:34:27 +10:00
Andrew Murray
6f44ae1d27 Only deprecate setting of TIFF image sizes 2018-09-30 15:08:35 +10:00
Andrew Murray
0adeb82e98 Changed Image size property to be read-only by default 2018-09-30 13:45:18 +10:00
Hugo
98caf40507
Merge pull request #3378 from hugovk/windows-gs-popup
Hide the Ghostscript progress dialog popup on Windows
2018-09-29 23:09:16 +03:00
Hugo
799133b3a4
Merge pull request #3388 from hugovk/andreas-schwab/master
Avoid undefined behaviour due to division by zero
2018-09-29 22:49:44 +03:00
Hugo
d36365f4fb
Merge pull request #3227 from kkopachev/master
Adding support to reading tiled and YcbCr jpeg tiffs through libtiff
2018-09-29 19:45:29 +03:00
Hugo
84b4905a94
Merge pull request #3310 from radarhere/compression
Fixed None as TIFF compression argument
2018-09-29 19:44:43 +03:00
Hugo
8458641bb8
Merge pull request #3324 from radarhere/info
Changed GIF seek to remove previous info items
2018-09-29 19:41:03 +03:00
Hugo
9a0b960762 Re-use count variable 2018-09-29 19:23:49 +03:00
Andreas Schwab
8b34eb644f Avoid undefined behaviour due to division by zero 2018-09-29 19:23:49 +03:00
Hugo
e2deb07608
Merge pull request #3274 from radarhere/pdf
Improve PDF document info
2018-09-29 17:43:05 +03:00
Hugo
0c71792818
Merge pull request #3251 from radarhere/conversion
Fixed implicit conversion warnings
2018-09-29 17:38:11 +03:00
Hugo
e380481662
Merge pull request #3386 from radarhere/convert
Improved convert documentation
2018-09-29 16:48:08 +03:00
Andrew Murray
1e305380ae
Merge pull request #3094 from hugovk/add-width-to-shapes
Add line width parameter to rectangle and ellipse-based shapes
2018-09-29 23:21:03 +10:00
Andrew Murray
d6d61b35dc Only draw pieslice's inner lines once 2018-09-29 21:45:37 +10:00
Andrew Murray
29bc4b2df4 Improved convert documentation [ci skip] 2018-09-29 20:14:56 +10:00
Andrew Murray
a8261a2e89 Line too long 2018-09-27 20:35:00 +10:00
Andrew Murray
f8fbac68de Removed unused imports 2018-09-27 20:31:01 +10:00
Andrew Murray
9b0d4baa8c Continuation line under-indented for visual indent 2018-09-27 20:31:01 +10:00
Konstantin Kopachev
69f315a585
PR feedback: simplified key construct for fillorder=2; indentation fixes 2018-09-26 09:44:45 -07:00
Hugo
a3f7ce5b73
Merge pull request #3313 from dinkolubina/fix-img-crop
Fix _crop and tests
2018-09-26 16:50:54 +03:00
Hugo
f29881fd60
Merge pull request #3377 from radarhere/color_diff
Added support to floodfill for non-RGB colors
2018-09-26 16:24:59 +03:00
Hugo
9e54c14dfa
Merge pull request #2214 from jdufresne/eps-text-wrapper
Use TextIOWrapper.detach() instead of NoCloseStream
2018-09-26 15:34:24 +03:00
Hugo
5a8c48c4f3
Merge pull request #3205 from radarhere/transparency
Added transparency to matrix conversion
2018-09-26 15:29:21 +03:00
Andrew Murray
b5af283732 Added support to floodfill for non-RGB colors 2018-09-26 22:22:17 +10:00
Hugo
ae415907cb flake8 and tidy up 2018-09-26 14:38:44 +03:00
Hugo
f13c150f00 Hide the Ghostscript progress dialog on Windows 2018-09-26 14:38:33 +03:00
Hugo
78203606b7
Merge pull request #3364 from radarhere/contain
Added ImageOps pad method
2018-09-26 13:54:26 +03:00
Hugo
83d40f52b3
Merge pull request #3359 from bz2/i16_getextrema
Give correct extrema for I;16 format images
2018-09-26 13:17:31 +03:00
Hugo
1b9a1c7ed7
Merge pull request #3279 from radarhere/pyside2
Added PySide2
2018-09-26 13:16:31 +03:00
Andrew Murray
b09b43d8b2 Added ImageOps pad method 2018-09-26 20:07:46 +10:00
Konstantin Kopachev
300bdaad9e
Bring back YCbCrX in pack and unpack 2018-09-25 11:46:32 -07:00
Andrew Murray
0c37491201 Corrected tags 2018-09-23 17:22:16 +10:00
Hugo
ed4de6cb62
Fix docstring typo
If we `import numpy as np`, use `np` not `numpy`
2018-09-20 15:27:30 +03:00
Konstantin Kopachev
187782470b
Drop YCbCrX(XX) modes, as TIFF does not have to support that 2018-09-18 12:06:27 -07:00
Konstantin Kopachev
f874e6f058
Fix typo and add explanatory comment 2018-09-18 12:06:26 -07:00
Konstantin Kopachev
1e4b3177ed
Change comment wording to reflect ability to read tiled tiffs [ci skip] 2018-09-18 12:05:51 -07:00
Konstantin Kopachev
c2ac4604bc
move variable declaration 2018-09-18 12:05:50 -07:00
Konstantin Kopachev
e6c510ef38
Remove redundant decompression; adjust jpeg read mode to be RGBX (pad) 2018-09-18 12:05:50 -07:00
Konstantin Kopachev
1f63abdba8
Fix tiled raw tiff read and add tests 2018-09-18 12:05:49 -07:00
Konstantin Kopachev
f0436a4ddc
Adding support to reading tiled and YcbCr jpegs tiffs through libtiff 2018-09-18 12:05:49 -07:00
Martin Packman
0b3036454c Give correct extrema for I;16 format images
Currently gives None for a 16 bit greyscale image rather than the
true min and max values in the 0-65536 range. The internal
ImagingGetProjection function already supports I;16 but the
_getextrema needs to know to unpack the result.
2018-09-18 13:48:12 +01:00
Hugo
521ae77bb9
Merge pull request #3298 from kkopachev/webp-rgb
Read/save RGB webp as RGB (instead of RGBX)
2018-09-17 12:05:07 +03:00
Hugo
73c305d4d5
Merge pull request #3333 from jdufresne/debug-print
Clean up commented out debug print statements
2018-09-17 11:56:19 +03:00
Andrew Murray
f3842460ba Added line joints 2018-09-16 21:29:09 +10:00
Andrew Murray
7b4040f991
Merge pull request #3294 from yo1995/perfperf-improv-ImageDraw-floodfill
Performance improvement of ImageDraw.floodfill()
2018-09-16 12:46:50 +10:00
Giovanni Cavallin
e5160bd373 From KeyError to ValueError when saving image
When saving an image, if the extension is not determined it raises a ValueError (while internally it manages a KeyError) so I propose this change
2018-09-11 19:32:47 +10:00
Andrew Murray
dd2698f00e
Merge pull request #3335 from uploadcare/more-tiff-modes
Add more raw Tiff modes (RGBaX, RGBaXX, RGBAX, RGBAXX)
2018-09-10 19:42:09 +10:00
Andrew Murray
558e70d8cd Removed less than condition 2018-09-09 13:57:01 +10:00
Alexander
a95e57af46 Wrong raw mode for YCbCr with two extra channels 2018-09-08 18:21:02 +03:00
Andrew Murray
9d9da79caa Close existing fp before setting new fp 2018-09-08 23:08:17 +10:00
Hugo
79552080ab
Merge pull request #3327 from radarhere/tga
Added orientation, compression and id_section as TGA save keyword arguments
2018-09-08 13:13:13 +03:00
Andrew Murray
a9d504e91d Renamed idlen variable to id_len 2018-09-08 19:02:03 +10:00
Andrew Murray
325ca3cede Trim id_section if it is greater than 255 characters 2018-09-08 08:26:32 +10:00
Andrew Murray
9e4c54e10f Added orientation, compression and id_section as keyword arguments 2018-09-08 08:12:26 +10:00
Andrew Murray
0a44d58314 Convert int values of RATIONAL TIFF tags to floats 2018-09-07 20:35:55 +10:00
dinko
66207b47bc fix _crop and tests 2018-09-05 21:00:35 +02:00
Hugo
fa14698e66
Merge pull request #3233 from hugovk/PYTHONOPTIMIZE
Fix code for PYTHONOPTIMIZE
2018-09-05 19:57:10 +03:00
Alexander Karpinsky
f7eb11cc3d
Merge branch 'master' into more-tiff-modes 2018-09-05 17:58:31 +03:00