Commit Graph

548 Commits

Author SHA1 Message Date
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
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
64a9e0c660
Merge branch 'master' into apng 2020-02-29 17:40:17 +02:00
Andrew Murray
9ba25f8135 Trim end of name, keeping ext 2020-02-26 20:15:23 +11:00
Andrew Murray
17c10b0ca0 Fixed stroke on FreeType < 2.9 2020-02-24 22:49:33 +11:00
Peter Rowlands
7c0df1034f Add APNG test cases
Includes tests for reading and writing APNG files.

The tests for reading files are based on the APNG browser compatibility
tests from https://philip.html5.org/tests/apng/tests.html
(which is linked in the Tests section of https://wiki.mozilla.org/APNG_Specification)
2020-02-23 15:14:06 +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
c57e4b3a85
Merge pull request #4333 from radarhere/polygon
Only draw each polygon pixel once
2020-02-15 11:57:14 +02:00
Alexander
73171f5046 add test image 2020-01-20 17:25:40 +03:00
Andrew Murray
56f30ef792 Allow explicit zero width to hide outline 2020-01-08 21:55:15 +11:00
Andrew Murray
8e8f63d4a5 Only draw each polygon pixel once 2020-01-05 17:43:51 +11:00
Andrew Murray
b9c68540dc Overflow checks for realloc for tiff decoding 2020-01-02 15:24:46 +11:00
Andrew Murray
be44f0d992 Catch SGI buffer overruns 2020-01-02 15:24:36 +11:00
Andrew Murray
8f0c8f7311 Catch PCX P mode buffer overrun 2020-01-02 15:24:16 +11:00
Andrew Murray
c40bc25847 Catch FLI buffer overrun 2020-01-02 15:23:36 +11:00
Andrew Murray
138bd714f5 Raise an error for an invalid number of bands in FPX image 2020-01-02 15:20:24 +11:00
Alexander
fa1deca144 Fix wrong tests 2019-12-31 04:12:50 +03:00
Andrew Murray
61d0784933 Allow loading of WMF images at a given DPI 2019-12-28 11:25:39 +11:00
Alexander
dda5558129 Merge branch 'master' into reduce 2019-12-25 15:42:47 +03:00
Andrew Murray
ee30fe1b39
Merge pull request #4147 from beipang2/issue_4146
Use default DPI when exif provides invalid x_resolution
2019-12-25 20:26:27 +11:00
Alexander
d41f2713b6 Merge branch 'master' into reduce 2019-12-20 20:22:36 +03:00
Alexander
4da9858709 change default resampling filter for ImageOps.pad(), ImageOps.scale() and ImageOps.fit() 2019-12-17 18:15:02 +03:00
Alexander
5283141417 Merge branch 'master' into reduce 2019-12-05 14:23:28 +03:00
Alexander
a241f1ed8e complete tests for supported modes 2019-12-01 19:13:34 +03:00
Andrew Murray
2d7cfc4bbc
Merge pull request #4239 from radarhere/photoshop
Handle broken Photoshop data
2019-12-01 07:33:26 +11:00
Andrew Murray
47b2ae9a63 Raise a specific exception if no data is found for an MPO frame 2019-11-30 11:05:36 +11:00
Andrew Murray
e51be50549 Handle broken Photoshop data 2019-11-30 10:08:32 +11:00
Andrew Murray
d716278d20 Corrected DdsImagePlugin setting info gamma 2019-10-30 22:13:06 +11:00
Bei Pang
bcc766e02d Use default DPI when exif provides invalid x_resolution 2019-10-27 07:50:30 +11:00
Andrew Murray
cc16025e23
Merge pull request #4104 from radarhere/overrun
Catch buffer overruns
2019-09-30 23:33:28 +10:00
Andrew Murray
fb8470187a
Merge pull request #4034 from cgohlke/patch-1
Initialize rows_per_strip when RowsPerStrip tag is missing
2019-09-30 22:32:34 +10:00
Andrew Murray
b9693a51c9
Merge pull request #4103 from radarhere/dimension
Raise error if TIFF dimension is a string
2019-09-30 21:26:53 +10:00
Andrew Murray
f228d0ccbf
Merge pull request #4102 from radarhere/decompression
Added decompression bomb checks
2019-09-30 20:31:05 +10:00
Andrew Murray
9a977b975c Raise error if dimension is a string 2019-09-30 18:48:10 +10:00
Andrew Murray
ab52630d06 Catch buffer overruns 2019-09-30 18:45:43 +10:00
Andrew Murray
eed2bfc5b4 Added decompression bomb checks 2019-09-30 18:45:13 +10:00
Andrew Murray
87c43b66a5 Corrected negative seeks 2019-09-30 18:31:18 +10:00
Hugo van Kemenade
f5aed1a254
Merge branch 'master' into patch-1 2019-09-20 22:59:29 +03:00
Andrew Murray
19ab3c36e6 Added test 2019-09-18 22:07:17 +10:00
Andrew Murray
1b70a4c6b5 Use TIFF orientation 2019-09-13 22:36:26 +10:00
Andrew Murray
da39d40342
Merge pull request #3978 from radarhere/stroke
Added text stroking
2019-09-06 19:14:49 +10:00
Hugo van Kemenade
cb1ebc024b
Merge pull request #4017 from radarhere/floodfill
Do not allow floodfill to extend into negative coordinates
2019-09-05 23:00:33 +03:00
Andrew Murray
23872c0645 Do not allow floodfill to extend into negative coordinates 2019-08-12 06:51:16 +10:00
Andrew Murray
8fff9a2444 Fixed arc drawing bug for a non-whole number of degrees 2019-08-12 06:50:58 +10:00
Andrew Murray
f93a5d0972 Added text stroking 2019-07-29 06:40:03 +10:00
Hugo
8d4bb339a6
Merge pull request #3780 from nulano/update_py_unicode
Update Py_UNICODE to Py_UCS4
2019-06-30 13:21:46 +03:00
nulano
5f65f10191 add test for #3777 2019-06-25 22:16:00 +10:00
Andrew Murray
e0cbfb2708 Consider I;16 pixel size when drawing 2019-06-23 07:33:55 +10:00
Andrew Murray
ea0f1c6b06 Do not presume that the last glyph has the max x value 2019-06-19 22:32:01 +10:00
Andrew Murray
fb38296230 Change direction of y offset in calculating size 2019-06-19 22:30:50 +10:00
Andrew Murray
da16b7ec45 Added variation font support 2019-06-19 20:27:49 +10:00
Hugo
ac6185ca15
Merge pull request #3897 from radarhere/load
Improved ICO and ICNS loading
2019-06-19 09:09:34 +03:00
Hugo
b2714854a3
Merge pull request #3856 from radarhere/ttb
Corrected ttb text positioning
2019-06-19 09:01:51 +03:00
Andrew Murray
02a2e93703 Do not load ICO if already loaded 2019-06-12 02:18:54 +10:00
Andrew Murray
231fe4d62a Revert "Merge pull request #3838 from radarhere/i_conversion"
This reverts commit 41f3e7c8bd, reversing
changes made to 2f84482871.
2019-06-11 19:28:31 +10:00
Andrew Murray
1c1447f563 Corrected ttb text positioning 2019-06-07 05:51:40 +10:00
Hugo
41f3e7c8bd
Merge pull request #3838 from radarhere/i_conversion
Improved I mode conversion
2019-06-05 22:23:35 +03:00
Hugo
feb413e0f3
Merge pull request #3836 from radarhere/ico_size
Handle unexpected ICO image sizes
2019-05-12 19:53:48 +03:00
Andrew Murray
d830cca5ca Handle unexpected ICO image sizes 2019-05-12 20:44:29 +10:00
Konstantin Kopachev
5e5ff10f09 Fix bits value for RGB;16N unpackers 2019-05-10 08:07:01 +10:00
Andrew Murray
2787b9b991 Added tests 2019-05-08 21:59:16 +10:00
Hugo
fdcacb6978
Merge pull request #3817 from radarhere/cmyk_16l
Added reading of CMYK;16L TIFF images
2019-05-04 18:53:13 +03:00
Hugo
c3ed8cc67e
Fixed ImageDraw arc gaps (#3824)
Fixed ImageDraw arc gaps
2019-05-04 18:50:07 +03:00
Hugo
5090bba463
Merge pull request #3822 from radarhere/tile
Expand GIF to include frames with extents outside the image size
2019-05-04 18:46:49 +03:00
Hugo
0ccd887431
Merge pull request #3771 from radarhere/app13
Fixed reading APP13 marker without Photoshop data
2019-05-04 16:10:02 +03:00
Andrew Murray
21c7fd251c Fixed arc gaps 2019-05-03 23:37:37 +10:00
Andrew Murray
27134340f5 Expand GIF to include frames with extents outside the image size 2019-05-02 19:46:17 +10:00
Andrew Murray
ca0d28eae5 Added reading of CMYK;16L TIFF images 2019-05-01 00:42:30 +10:00
Andrew Murray
b742d1511e Fixed raqm layout bug 2019-04-11 15:36:33 +10:00
Andrew Murray
2274c2afc7 Fixed reading APP13 marker without Photoshop data 2019-04-05 20:02:45 +11:00
Hugo
c8257b30dd
Merge pull request #3687 from radarhere/exif_transpose
Add ImageOps exif_transpose method
2019-04-01 10:23:33 +03:00
Hugo
7d378a8e4c
Merge pull request #3625 from radarhere/exif
Add EXIF class
2019-04-01 10:20:05 +03:00
Andrew Murray
c96cdb5e77 Consistent DPI rounding 2019-03-30 15:03:57 +11:00
Andrew Murray
64910d1921 Parse Nintendo and Fujifilm MakerNote tags 2019-03-28 21:13:12 +11:00
Andrew Murray
a5b62857b0 Change size of MPO image to match frame 2019-03-28 08:33:17 +11:00
Andrew Murray
4a5666f1f4 Added transparency for all PNG greyscale modes 2019-03-27 07:41:33 +11:00
Andrew Murray
0ad09f7386
Merge branch 'master' into mime-types 2019-03-15 07:06:59 +11:00
Hugo
b3587f0fb7
Merge pull request #3705 from radarhere/bmp
Add support for BMP RGBA bitfield compression
2019-03-12 11:36:04 +02:00
Ben Yang
386492ff54 wrong test_language.png committed, whoops! fixed 2019-03-11 18:56:22 -07:00
Ben Yang
8624efd283 added ability to set language for text rendering 2019-03-11 18:55:46 -07:00
Konstantin Kopachev
28c6f555a2
Merge remote-tracking branch 'remotes/upstream/master' into tiff-old-jpeg 2019-03-11 10:38:02 -07:00
Andrew Murray
8ddcc1de52 Load EXIF from PNG where eXIf chunk is after first IDAT chunk 2019-03-11 21:20:18 +11:00
Andrew Murray
5277eec027 Added support for RGBA bitfield compression 2019-03-09 11:11:32 +11:00
Andrew Murray
873603701f Added .pnm test 2019-03-04 15:51:07 +11:00
Andrew Murray
1ba774ae7f Added ImageOps exif_transpose method 2019-03-04 11:49:39 +11:00
Andrew Murray
bbfbda3d4f Added tests for unimplemented formats 2019-02-23 08:53:45 +11:00
Andrew Murray
148d320b40 Added reading of uncompressed RGB data 2019-02-23 06:44:06 +11:00
Hugo
65c55402b9
Merge pull request #3537 from radarhere/pickle
Fixed pickling of iTXt class with protocol > 1
2019-02-20 11:50:30 +02:00
Andrew Murray
1a7a1123e6
Merge branch 'master' into tiff-old-jpeg 2019-02-15 19:56:17 +11:00
Andrew Murray
0481d0ac1e Seek to IFD offset 2019-01-16 06:55:37 +11:00
Hugo van Kemenade
4d1be57256
Merge pull request #3540 from radarhere/fp
Only close __fp if not fp
2019-01-06 12:53:04 +02:00
Hugo van Kemenade
22b0f53eb9
Merge pull request #3532 from radarhere/png_load_end_idat
PNG: Handle IDAT chunks after image end
2019-01-05 12:08:58 +02:00
Andrew Murray
71b64dcf73 Only close __fp if not fp 2019-01-04 12:29:23 +11:00
Andrew Murray
ea2a0e4654 Handle IDAT chunks after image end 2019-01-03 19:13:19 +11:00
hugovk
1b338998dc Test a png file with iTXt chunks 2019-01-03 09:31:55 +11:00
Andrew Murray
bd7422f934 Detect whether mimetype is image/jp2 or image/jpx 2019-01-02 15:39:39 +11:00
pirate486743186
8d0b7e6b57 adding apng extension for png 2018-12-26 21:14:27 +01: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
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
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
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
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
b5af283732 Added support to floodfill for non-RGB colors 2018-09-26 22:22:17 +10:00
Hugo
78203606b7
Merge pull request #3364 from radarhere/contain
Added ImageOps pad method
2018-09-26 13:54:26 +03:00
Andrew Murray
b09b43d8b2 Added ImageOps pad method 2018-09-26 20:07:46 +10:00
Konstantin Kopachev
b0e5e5fb11
Update test files to be closer match of originals 2018-09-18 12:05:51 -07:00
Konstantin Kopachev
98d88fd1c6
Add tests for uncompressed tiff with interleaved bands 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
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
Andrew Murray
f3842460ba Added line joints 2018-09-16 21:29:09 +10:00
Hugo
fbe5bdb6b6 Also apply width to pieslice's inner lines 2018-09-01 14:40:36 +03:00
Konstantin Kopachev
84b32a0388
Read/Save RGB webp as RGB (instead of RGBX) 2018-08-09 11:40:10 -07:00
Hugo
f70f952f85
Merge branch 'master' into add-width-to-shapes 2018-07-14 14:58:48 +03:00
tsennott
4a6ec5ca72 updated colorize to allow optional black/white positions; enhanced tests 2018-07-07 18:19:26 -07:00
tsennott
837d868333 updated test to assert equality with reference images 2018-07-07 02:40:25 -07:00
Hugo
5d751572cc
Merge pull request #2922 from radarhere/fill_ink
Skip outline if the draw operation fills with the same colour
2018-07-02 22:19:35 +03:00
Hugo
d6e3ef85c2 Add width parameter to arc, chord, ellipse, pieslice 2018-07-02 11:26:42 +03:00
Hugo
9dedbff713 Add width parameter to rectangle 2018-07-02 11:21:30 +03:00
Hugo
af552801c2
Merge pull request #3186 from danpla/tga-write-rle
TGA: Add support for writing RLE data
2018-07-01 22:00:03 +03:00
Hugo
80d399a485
Merge pull request #3178 from danpla/tga-la
TGA: Read and write LA data
2018-07-01 21:57:10 +03:00
Hugo
597f067796
Merge pull request #2989 from hugovk/test-wal
Test WalImageFile
2018-07-01 09:34:15 +03:00
Hugo
5dda23d547
Merge pull request #3135 from hugovk/test-imagedraw2
Test ImageDraw2
2018-07-01 07:48:54 +03:00
Alex Clark
eafbb395a9
Merge pull request #1817 from radarhere/gd
Added GD tests
2018-06-30 18:01:36 -04:00
Daniel Plakhotich
1d20056234 TGA: Add support for writing RLE data 2018-06-15 23:01:06 +03:00
Daniel Plakhotich
39fae6e077 TGA: Read and write LA data 2018-06-14 12:18:08 +03:00
Hugo
031c4d937f Test ImageDraw2 2018-05-31 15:11:50 +03:00
storesource
79689977cf Remove unnecessary files 2018-03-27 21:05:19 +05:30
storesource
e1229db810
Rename File 2018-03-27 20:07:06 +05:30
storesource
eb3efb2587
Added Files for Rotate Fill tests 2018-03-27 19:52:24 +05:30
storesource
8af7c679ab
Added basic green file for rotate
Making changes according to review
2018-03-27 19:43:04 +05:30
storesource
65c78266ad
RotateImage with fill: Added file for assertion
Fail First: add image for assertion
2018-03-27 18:55:34 +05:30
wiredfool
d173e81798
Merge pull request #3023 from kkopachev/issue-3022
Certain corrupted jpegs can result in no data read
2018-03-21 07:55:17 +00:00
Jerome Leclanche
ef546cd303 blp: Remove images with unclear licenses 2018-03-12 09:48:13 +02:00
Konstantin Kopachev
5269bbc268
Add truncated jpeg tests 2018-03-07 21:31:51 -08:00
Jerome Leclanche
4d685ac0cd blp: Add more test images 2018-03-06 18:16:26 +02:00
Jerome Leclanche
73d7fff16e blp: Separate BLP1 and BLP2 decoding more cleanly 2018-03-06 18:16:26 +02:00
Jerome Leclanche
adaa703576 Add support for BLP file format 2018-03-06 18:16:26 +02:00
Hugo
8674f71907 File exported from hopper.png using Wally 2018-01-29 15:33:26 +02:00
Andrew Murray
4d3339b703 Added tests 2018-01-05 11:26:24 +11:00
Andrew Murray
6c61de97ad Added GD tests 2017-12-30 19:31:33 +11:00
wiredfool
49bd3232e5
Merge pull request #2899 from wiredfool/pr_2882
Run all compressed tiffs through libtiff
2017-12-27 20:39:51 +00:00
Andrew Murray
e107ed6fcf Allow for an empty line in EPS header data 2017-12-24 21:12:48 +11:00
Eric Soroos
d698d522ef Added end to end tests in test_file_libtiff 2017-12-20 12:09:26 +00:00
Eric Soroos
bec8f415be end to end test helper, more end to end tests for tiffs 2017-12-20 11:55:40 +00:00
wiredfool
9ed4ea9e47
Merge pull request #2883 from uploadcare/tiff-wrong-bitspersample
Fix count of BITSPERSAMPLE items in broken TIFF files
2017-12-09 14:32:47 +00:00
Alexander
ce151bcd72 add test for this case 2017-12-08 17:32:39 +03:00
wiredfool
a3a9faf3a2
Merge pull request #2761 from monolithlabs/animated_webp
Add support for animated WebP files
2017-11-05 15:34:50 +00:00