hugovk
e4d6223c94
Remove deprecated code due for removal in Pillow 4.2 (per PR #2010 )
2017-05-27 23:20:03 +03:00
hugovk
e002207c5b
Remove function deprecated and warning since 3.0 (1 Oct 2015)
2017-05-27 21:55:42 +03:00
hugovk
d85dffd150
Remove functions deprecated and warning since 2.0 (15 Mar 2013) and raising exceptions since 3.0 (1 Oct 2015)
2017-05-27 21:52:43 +03:00
wiredfool
b076b55623
Merge pull request #2530 from hugovk/compress-level
...
Fix Image.show compress_level typo
2017-05-27 14:38:32 +01:00
Alexander
a26a584812
Do not raise SyntaxError for wrong chunks (just ignore them)
2017-05-23 18:00:15 +03:00
Hugo
08c72a1720
flake8
2017-05-16 10:33:38 +03:00
Hugo
bb7596d8b6
Fix option typo
2017-05-14 12:14:29 +03:00
Joshua Blum
e763c2281f
Update ImageFile.py
2017-05-13 12:07:16 -04:00
wiredfool
86bde427c3
refactor out options
2017-05-13 14:22:18 +01:00
wiredfool
dd5bfec11c
save_ppm doesn't take kwargs
2017-05-13 14:22:18 +01:00
Hin-Tak Leung
9f8aeb5d8e
put compress_level=1 inside Image._dump()
...
Better alternative to setting compress_level=1 than the secret handshake
in the last attempt.
The last in a series of changes to fix
https://github.com/python-pillow/Pillow/issues/2508
2017-05-13 14:22:18 +01:00
Hin-Tak Leung
74da5878c5
Do not down-convert if image is RGBA when showing.
...
The down-convert code would convert all RGB-based modes
(P RGB RGBX RGBA CMYK YCbCr LAB HSV) to RGB; but png can handle it!
2017-05-13 14:22:18 +01:00
Hin-Tak Leung
a2cb304f62
use PNG as intermediate format for viewing
2017-05-13 14:22:18 +01:00
Andrew Murray
80806d349f
Added append_images to PDF saving
2017-05-13 14:26:52 +10:00
wiredfool
cdd2236dd2
Restore PIL version
2017-05-10 04:43:08 -07:00
wiredfool
4f1bab5c1b
current version
2017-05-10 03:48:47 -07:00
wiredfool
8999ccb570
single version for build
2017-05-10 03:47:02 -07:00
Andrew Murray
37b293f593
Flake8 fixes
2017-04-20 21:14:23 +10:00
wiredfool
17f799ed16
Merge pull request #2484 from hugovk/exif-resolution-as-int
...
Fix for file with DPI in EXIF but not metadata, and XResolution is an int rather than tuple
2017-04-19 12:10:44 +01:00
wiredfool
df616d2b16
Merge pull request #2471 from radarhere/crop
...
Return copy on Image crop if crop dimensions match the image
2017-04-19 11:46:07 +01:00
wiredfool
2ac4f79e8c
4.2.0.pre0 version bump
2017-04-19 03:02:45 -07:00
Hugo
8b06fa9a21
Fix for file with DPI in EXIF but not metadata, and XResolution is an int rather than tuple
2017-04-11 14:07:31 +03:00
wiredfool
38eff74004
4.1.0 version bump
2017-04-04 11:10:22 -07:00
wiredfool
0834e9491e
Merge pull request #2330 from wiredfool/pr_2032
...
Close files after loading when possible.
2017-04-03 23:32:06 +01:00
Hugo
53df62647a
DPI is a tuple ( #2472 )
...
* DPI is a tuple
* Some EXIF only contains an X resolution for DPI
* Refactor
* Test with no DPI in EXIF
* Handle EXIF with no DPI
* Created with: exiftool "-*resolution*"= photoshop-200dpi.jpg
* Test when not in EXIF, DPI==72,72
* Use X resolution for Y, default to 72,72 dpi
* Created with: exiftool -exif:ResolutionUnit=cm photoshop-200dpi.jpg
* Test for EXIF with dpcm instead of dpi
* Convert dpcm to dpi, and default to inches if unit unknown
2017-04-03 23:28:33 +01:00
wiredfool
06b61f4e5b
close the mmap when closing the image #2194
2017-04-03 08:06:59 -07:00
wiredfool
86c1704646
add _close_exclusive_fp_after_load flag
2017-04-03 08:06:58 -07:00
Andrew Murray
4dd7b94338
Return copy on Image crop if crop dimensions match Image dimensions
2017-03-31 13:02:56 +11:00
wiredfool
977f319234
Merge pull request #2449 from hugovk/dpi-from-exif
...
If DPI isn't in JPEG header, fetch from EXIF
2017-03-29 21:24:46 +01:00
wiredfool
9e2653c155
Merge pull request #2455 from cgohlke/patch-1
...
Remove superfluous import of FixTk
2017-03-22 21:18:27 +00:00
Christoph Gohlke
c6dc1f2878
Fix import of tkinter/Tkinter
...
Do not try to import the `tkinter` module on Python 2.x. `tkinter` is part of the `tkinter3000` package (Widget Construction Kit for Tkinter).
2017-03-22 10:32:42 -07:00
Christoph Gohlke
140c4b54c0
Remove superfluous import of FixTk
...
The `_imaging` module does not link against libtcl/libtk.
`FixTk` is imported by `import Tkinter` if necessary.
The `FixTk` module is for Python 2.x on Windows only.
2017-03-22 10:15:29 -07:00
wiredfool
b69b70198f
Closing only single frame TIFF images
2017-03-14 23:17:22 +00:00
Hugo
07a9620959
If DPI isn't in JPEG header, fetch from EXIF
2017-03-14 11:49:10 +02:00
Hugo
b7d14b04b6
Test MicImagePlugin for correctness
2017-03-13 08:18:13 +02:00
homm
58484db509
close files after loading for some file types
2017-03-12 20:05:20 +00:00
homm
091d0c400c
close fp if it was opened in ImageFile constructor
2017-03-12 20:05:20 +00:00
homm
88ec0bb52f
close file in case of failures
2017-03-12 20:05:20 +00:00
wiredfool
c9f54c98a5
Merge pull request #1938 from wiredfool/python-decoder
...
Pure Python Decoders - fix for MSP decoding
2017-03-12 17:20:19 +00:00
wiredfool
31c1a651a3
fixed wording
2017-03-11 16:30:04 +00:00
wiredfool
40a94d4a42
Propagage ValueError out, rather than swallowing
2017-03-11 15:34:43 +00:00
wiredfool
38f43c1e5f
review lint
2017-03-11 13:50:19 +00:00
wiredfool
c2cd5fe3d1
handles_eof was removed in 4.0
2017-03-11 13:50:19 +00:00
wiredfool
b668db33cd
Updated versionadded to reflect 6-9 month slip [ci skip]
2017-03-11 13:50:19 +00:00
wiredfool
f13b335a60
Py2.7 compatibility
2017-03-11 13:50:19 +00:00
wiredfool
949932f45f
Pure Python MSP Decoder
2017-03-11 13:50:19 +00:00
hugovk
e44773c76c
Test with bad checksum
2017-03-11 13:50:19 +00:00
wiredfool
1c0d1c547e
PyDecoder documentation
2017-03-11 13:50:19 +00:00
wiredfool
25bc5c76ab
Pure python decoder registry
2017-03-11 13:50:19 +00:00
wiredfool
1428e4140a
Test for identical handling of getheader/getdata
2017-03-08 01:35:15 -08:00
wiredfool
676d0c3b3b
Can't use objects in default args
2017-03-08 01:35:15 -08:00
wiredfool
51b46e00c2
Refactor out passed in palette handling, add ImagePalette as an option, document palette format
2017-03-08 01:35:15 -08:00
wiredfool
f6b22bf0ab
moved normalise_ functions together
2017-03-08 01:35:15 -08:00
wiredfool
abb7b7342e
Added function docstring
2017-03-08 01:35:15 -08:00
wiredfool
770c423181
Regroup methods, add docstring comments
2017-03-08 01:35:15 -08:00
wiredfool
46287eb62a
Renamed _get_local_header to _write_local_header
2017-03-08 01:35:15 -08:00
Andrew Murray
ab7e07c54d
Added comment that getdata is legacy
2017-03-08 01:35:15 -08:00
wiredfool
aea2a4ca8d
legacy getheader mutates the image
2017-03-08 01:35:14 -08:00
wiredfool
872bce552f
Docstring Comments on methods
2017-03-08 01:35:14 -08:00
wiredfool
f5e836b442
removed extra param from _get_global_header
2017-03-08 01:35:14 -08:00
wiredfool
321c6165c9
removed extra params from _get_palette_bytes
2017-03-08 01:35:14 -08:00
wiredfool
b315b6ecf3
Don't requantize 'P' images
2017-03-08 01:35:14 -08:00
wiredfool
26e145c8a3
Refactor _convert_mode -> _normalize_mode
2017-03-08 01:34:31 -08:00
wiredfool
b9618b3ce7
Encoderinfo fix
2017-03-08 19:41:18 +11:00
wiredfool
cee397ab00
Refactor get_palette to do one thing, and not mutate the image in place
2017-03-08 19:41:18 +11:00
wiredfool
1e9afb3ecb
Refactor out the palette remapping to Image.Image
2017-03-08 19:41:18 +11:00
wiredfool
24285fdc28
Remove support for PIL plus external encoder
2017-03-08 19:41:18 +11:00
Andrew Murray
87a14ce6de
Created _write_single_frame and _write_multiple_frames from _save
2017-03-08 19:41:18 +11:00
Andrew Murray
d45f1d835b
Removed second return value from _get_palette_bytes
2017-03-08 19:41:18 +11:00
Andrew Murray
26cfa8cc62
Extracted core of getheader into _get_global_header
2017-03-08 19:41:18 +11:00
Andrew Murray
a43295c3dd
Extracted core of getdata into _write_frame_data
2017-03-08 19:41:18 +11:00
Andrew Murray
af57ff8d45
Simplified code
2017-03-08 19:41:18 +11:00
Andrew Murray
b06669f670
Resolved GifImagePlugin FIXME
2017-03-08 19:41:18 +11:00
Andrew Murray
f28084ae3e
Removed unnecessary copy operation
2017-03-08 19:41:18 +11:00
Andrew Murray
ce87310026
Merged _get_used_palette_colors into _get_optimize
2017-03-08 19:41:18 +11:00
Andrew Murray
4df1305073
Only call _get_used_palette_colors when necessary
2017-03-08 19:41:18 +11:00
Andrew Murray
bf0b4cf279
Minor code cleanup in GifImagePlugin
2017-03-08 19:41:18 +11:00
Andrew Murray
562458cdd3
Added _save_netpbm comment
2017-03-08 19:41:18 +11:00
wiredfool
9f88a55fa3
Merge pull request #2442 from hugovk/test-xvthumb
...
Test XVThumbImagePlugin for correctness
2017-03-06 18:53:58 +00:00
wiredfool
1a8f88986d
Merge pull request #2441 from hugovk/test-bufrstub
...
Test BufrStubImagePlugin for correctness
2017-03-06 18:53:13 +00:00
hugovk
94c07f68fb
Python 3 fix
2017-03-04 23:28:08 +02:00
hugovk
5cf56e796f
Refactor to reuse _accept
2017-03-04 20:03:34 +02:00
hugovk
a0f50d7305
Get integers, not single-item lists of integers
2017-03-04 19:58:49 +02:00
hugovk
277d8123a4
Only need to read 4 bytes
2017-03-04 16:39:03 +02:00
hugovk
4ece1ae78a
Python 3 fix
2017-03-04 13:52:14 +02:00
wiredfool
5071ea2a0e
Merge pull request #2425 from radarhere/tests
...
Added tests
2017-03-03 15:44:33 +00:00
Andrew Murray
7467d1e010
Changed comment to be 80 characters or less
2017-03-03 21:57:30 +11:00
Andrew Murray
798fde57ca
Removed unused imports
2017-03-03 21:38:19 +11:00
Andrew Murray
0b93853fd8
Removed duplicate imports
2017-03-03 21:38:19 +11:00
Andrew Murray
bef530cb09
Changed None comparison to is
2017-03-03 21:38:19 +11:00
Andrew Murray
257bc8bd4f
Added tests
2017-03-03 19:45:55 +11:00
Andrew Murray
d92b1678fe
Corrected ImageDraw floodfill exception type
2017-03-03 19:45:55 +11:00
Hugo
49815f8d4a
Test pixar for similarity
2017-02-28 08:27:53 +02:00
Hugo
cb34b686a5
Merge pull request #1822 from radarhere/unused
...
Remove unused imports
2017-02-26 10:05:19 +02:00
Andrew Murray
f9a99652e4
Replaced KeyError catch with dictionary get method
2017-02-25 13:49:05 +11:00
wiredfool
0ee223aa7a
Merge pull request #1390 from radarhere/deprecated_27
...
Removed use of spaces in TIFF kwargs, deprecated in 2.7
2017-02-22 10:13:45 +00:00
wiredfool
a4ef743b0f
Merge pull request #2220 from jdufresne/image-draw-dep
...
Remove long deprecated ImageDraw methods
2017-02-22 10:12:05 +00:00
wiredfool
8421a076ac
Merge pull request #2253 from jdufresne/devnull
...
Send unwanted subprocess output to /dev/null
2017-02-22 10:10:03 +00:00
hugovk
0764b2b5e9
Update error message
2017-02-22 08:20:45 +02:00
Andrew Murray
16c8b01026
Replaced broken URL with web.archive.org URL
2017-02-18 15:53:01 +11:00
Andrew Murray
c2cfd8e7e4
Changed http URL to https
2017-02-18 15:44:22 +11:00
wiredfool
f0cebebf32
Clarify that draft is only implemented for JPEG and PCD
2017-02-17 06:22:40 -08:00
ces42
8fb44a2bee
More explicit error message when saving to a file with invalid extension ( #2399 )
...
* more explicit error message when saving to a file with invalid extension + test
2017-02-17 13:39:16 +00:00
Leonid Bloch
28b818974e
Allow to save tiff stacks from separate images
...
This is a quick solution that will allow to save tiff stacks from
separate images, e.g. from Numpy arrays.
Previously, tiff stacks could be saved only from multiframe images.
This behavior is similar to what is possible now with GIFs.
Note however, that for correct results, all the appended images should
have the same encoder{info,config} properties.
Example:
import numpy as np
from PIL import Image
a = np.ones((100,100,100), dtype=np.uint8)
imlist = []
for m in a:
imlist.append(Image.fromarray(m))
imlist[0].save("test.tif", compression="tiff_deflate", save_all=True,
append_images=imlist[1:])
(Should result in a 100-frame, 100x100 tiff stack.)
Signed-off-by: Leonid Bloch <leonid.bloch@esrf.fr>
2017-02-17 00:57:00 +02:00
Hugo
53e5702557
Update http to https
2017-02-14 11:27:02 +02:00
hugovk
07af06bf8c
Expose and test radial_gradient
2017-01-29 18:44:24 +02:00
hugovk
3ead178d18
flake8
2017-01-29 18:38:06 +02:00
hugovk
47b1c66961
Expose and test linear_gradient
2017-01-29 18:17:31 +02:00
Jon Dufresne
cecdb2af61
Send unwanted subprocess output to /dev/null
...
Avoids unnecessary creation of temporary files as well as unnecessarily
storing process output in memory. The temporary files would sometimes
remain and not be cleaned up.
2017-01-26 17:31:29 -08:00
wiredfool
2df28a6601
Merge pull request #2347 from radarhere/icc_profile
...
Moved iCCP chunk before PLTE chunk when saving as PNG
2017-01-26 14:26:25 +00:00
wiredfool
a62f2c5b44
Merge pull request #2365 from SemanticsOS/lambdafu/dpiresolution
...
Default to inch-interpretation for missing ResolutionUnit in TiffImagePlugin
2017-01-26 14:22:32 +00:00
wiredfool
a71ba1a1c6
comments
2017-01-26 05:55:18 -08:00
wiredfool
a69c37738a
Look in a different location for the tk intepreter on pypy fixes #2376
2017-01-26 05:32:40 -08:00
Andrew Murray
f0480de118
Restricted PNG encoderinfo chunks to valid values when saving
2017-01-21 16:57:03 +11:00
Andrew Murray
361f579579
Moved iCCP chunk before PLTE chunk when saving as PNG
2017-01-21 13:32:22 +11:00
Marcus Brinkmann
8a9bd2cdcd
Default to inch-interpretation for missing ResolutionUnit in TiffImagePlugin.
2017-01-19 17:24:28 +01:00
Alexandru Chirila
b001e5d4ab
Ensure that the err_code
variable is initialized before using.
2017-01-18 14:22:14 +02:00
Andrew Murray
c168f01111
Removed imports used only by comments
2017-01-18 20:06:47 +11:00
Andrew Murray
97a2d42dac
Removed unused print_function imports
2017-01-18 20:06:21 +11:00
Andrew Murray
58b5c9187d
Replaced absolute PIL imports with relative imports ( #2349 )
2017-01-17 13:22:18 +00:00
wiredfool
c1b510c72c
Merge pull request #2307 from radarhere/contextmanagers
...
Added context managers
2017-01-17 13:20:41 +00:00
wiredfool
f6dd290560
Merge pull request #2343 from radarhere/registered_extensions
...
Expose registered file extensions in Image
2017-01-16 11:40:02 +00:00
Jarkko Pöyry
3bdd15e55e
Make mode descriptor cache initialization thread-safe.
...
Initializing mode descriptor cache in-place is racy and may cause a thread to
observe a partially constructed cache if another thread is pre-empted while
it's still constructing the cache. In this change, the mode descriptor cache is
constructed into a local variable instead and then set globally in a single
atomic operation, preventing any possibility of observing an incomplete cache.
2017-01-10 23:49:29 +02:00
Luis G
67c1258cfc
Expose registered file extensions
...
This adds a new method in Image (registered_extensions) that exposes the
internal EXTENSION dictionary to consumers of the library
2017-01-07 11:32:16 +11:00
Andrew Murray
1fb00976f5
Removed TODO resolved in #1121
2017-01-07 10:14:49 +11:00
Jerome Leclanche
3ac9ab6fa2
Remove an unnecessary import
2017-01-07 08:12:33 +11:00
wiredfool
296fb5fe1d
4.1.0.dev0 version bump
2017-01-02 04:06:48 -08:00
wiredfool
a021d4978d
4.0.0 version bump
2017-01-01 20:20:06 +00:00
wiredfool
ccccd725af
Merge pull request #2329 from wiredfool/pcd_hack_refactor
...
Refactor out postprocessing hack to load_end in PcdImageFile
2017-01-01 19:07:23 +00:00
wiredfool
599ec6bcd6
Removed #hack
2017-01-01 12:59:48 +00:00
wiredfool
8dd19e6c33
refactor out postprocessing hack to load_end in PcdImageFile
2017-01-01 12:04:59 +00:00
wiredfool
fed4b52171
Disable fastpath when using center or translate
2017-01-01 11:13:25 +00:00
wiredfool
f286d8bb34
Documentation param order to match actual order
2017-01-01 11:10:39 +00:00
Marcus Brinkmann
90077b3975
Add center and translate option to Image.rotate.
2016-12-31 19:01:09 +00:00
wiredfool
c7df6287fa
Merge pull request #2262 from wiredfool/zero_size
...
Allow 0 size images, Fixes #2259
2016-12-31 16:35:14 +00:00
wiredfool
69bea50810
Allow 0 size images, Fixes #2259
2016-12-31 13:19:29 +00:00
wiredfool
31c204eae4
Loop cleanup, python 3 compatibility
2016-12-31 12:29:10 +00:00
Mickael B
597ab45d4d
[SGI] Save uncompressed SGI/BW/RGB/RGBA files
...
Save feature added to SgiImagePlugin.py, uncompressed method only
2016-12-31 12:29:10 +00:00
Andrew Murray
a06dd59df7
Added context managers
2016-12-28 09:54:10 +11:00
wiredfool
944a470a79
Merge pull request #2312 from wiredfool/pr_2298
...
List of individual frame durations for saving animated gifs. #2298
2016-12-27 12:00:40 +00:00
wiredfool
f36a04570f
Merge pull request #2313 from wiredfool/pr_2196
...
Unified different GIF optimize conditions #2196 , Test for #2196
2016-12-27 11:53:50 +00:00
wiredfool
e530f2a228
Added tuple option for durations
2016-12-27 03:04:37 -08:00
wiredfool
87092ad4f8
can pass list of integer to set different duration for each frame when saving GIF
2016-12-27 02:44:05 -08:00
Andrew Murray
8c2a857c2e
Removed shebang line from OleFileIO
2016-12-25 20:18:50 +01:00
Jakub Wilk
8524c18329
Remove executable bit from OleFileIO.py
2016-12-25 12:05:38 +01:00
Alessio Sergi
7e8a6c61f8
Use pathlib2 for Path objects on Python < 3.4
...
The pathlib backport module is no longer maintained. The development
has moved to the pathlib2 module instead.
Quoting from the pathlib's README:
"Attention: this backport module isn't maintained anymore. If you want
to report issues or contribute patches, please consider the pathlib2
project instead."
Other projects have already switched to pathlib2, most notably IPython
and its dependencies.
2016-12-17 18:50:50 +01:00
wiredfool
80b78be21a
Merge pull request #2199 from jdufresne/dep-olefile
...
Remove vendored version of olefile Python package in favor of upstream
2016-12-13 20:12:29 +00:00
wiredfool
55f7a736a4
Merge pull request #2234 from radarhere/print
...
Updated comments to use print as a function
2016-12-13 20:00:25 +00:00
wiredfool
ba5f9b88da
Merge pull request #2223 from wiredfool/handles_eof
...
Removed the handles_eof flag in the decoder, as there are no users of it
2016-12-13 19:48:55 +00:00
Andrew Murray
41e492b026
Removed use of spaces in TIFF kwargs, deprecated in 2.7
2016-12-09 20:44:42 +11:00
Hugo
837d583b15
Merge pull request #2275 from wiredfool/issue_2272
...
Update Maxblock heuristic (fixes #2272 )
2016-12-04 21:38:22 +02:00
wiredfool
7e2bd28a7c
Fix for issue 2272, CMYK images miss the heuristic for the maxblock buffer scaling
2016-12-03 14:45:45 +00:00
wiredfool
86606022c5
Merge pull request #2193 from SemanticsOS/lambdafu/libtiff-icc
...
Update info.icc_profile when using libtiff reader.
2016-12-03 13:44:26 +00:00
homm
77210e410d
test for common modes and filters
...
pass box for RGBA → RGBa conversion
2016-12-02 16:33:48 +03:00
homm
295382aadc
vertical and horizontal pass with boxes
2016-12-02 15:40:32 +03:00
homm
3d72e9828f
add param info
2016-12-02 03:11:02 +03:00
homm
6def4bfc73
roi → box
2016-11-30 20:01:28 +03:00
hugovk
adfda1a5a4
Python 3 compatibility
2016-11-30 16:50:44 +02:00
hugovk
880464f46c
Only save relevant sizes
2016-11-30 16:41:43 +02:00
hugovk
b341898c7f
Allow 256x256 sizes
2016-11-30 16:00:14 +02:00
hugovk
43fc9c9b59
flake8
2016-11-30 14:51:30 +02:00
hugovk
cc89d95f02
Fix saving 256x256 icons
2016-11-30 14:50:53 +02:00
wiredfool
e0b957240b
Merge pull request #2087 from cskau/patch-1
...
Fixes TIFFImagePlugin ICC color profile saving.
2016-11-29 19:33:52 +00:00
wiredfool
0271887115
Merge pull request #2256 from radarhere/imageops
...
Doc: Improved description of ImageOps.deform resample parameter
2016-11-27 16:28:03 +00:00
glexey
0116c9240e
EMF: support negative bounding box coordinates ( #2249 )
...
* EMF: support negative bounding box coordinates
Similar to placeable WMF, bounding box coordinates
should be interpreted as signed integer, otherwise
opening EMF file with negative (x0,y0) fails.
* Basic load tests for WMF and EMF formats
* WMF/WMF tests: just test open(), not load()
Not sure why load() fails on Debian build. Well, at least we can test
open().
* WMF/EMF: Unpack signed integers using unpack()
* WMF/EMF: Compare to reference PNG rendering
* EMF/WMF comparison: use assert_image_similar()
* Use similarity epsilon 0.5 for WMF, as vector rendering looks different across Windows platforms
* Trigger rebuild
2016-11-27 16:03:51 +00:00
Andrew Murray
14cfec0b49
Added decompression bomb check to WalImageFile
2016-11-26 11:50:56 +11:00
Andrew Murray
87de178e0b
Added context manager when opening files in WalImageFile
2016-11-26 11:29:20 +11:00
Andrew Murray
67be3a9eda
Added future print_function imports
2016-11-26 11:05:56 +11:00
Andrew Murray
4ed31e8ef7
Updated comments to use print as a function
2016-11-26 11:02:44 +11:00
Andrew Murray
378dbb2f9f
Improved description of method parameter
2016-11-26 10:57:51 +11:00
Hugo
fb54b1da2e
Merge pull request #2248 from uploadcare/use-_new
...
Use Image._new() instead of _makeself()
2016-11-24 08:32:13 +02:00
homm
f828416752
add roi argument to Image.resize() method
...
constraints check
2016-11-24 04:40:54 +03:00
homm
d4784bffb2
return copy of the image if size matches
2016-11-24 03:30:36 +03:00
homm
14734b1d97
remove _makeself deprecated method
2016-11-24 03:03:31 +03:00
Hugo
6fa7f3fc67
Merge pull request #2241 from wiredfool/sunrle
...
SunImagePlugin fixes
2016-11-23 16:10:17 +02:00
wiredfool
212508b3f2
Review comments
2016-11-23 05:33:02 -08:00
homm
5773fd8396
_makeself → _new
2016-11-23 14:41:43 +03:00
Jon Dufresne
52b1f46b12
Deprecate vendored version of olefile Python package in favor of upstream
...
Pillow now requires the olefile Python package through setup.py.
This removes Pillow's maintenance of this library by instead relying on
and reusing the upstream version. No longer need to regularly update the
vendored package and docs. olefile bug fixes and features can go
directly upstream.
During travis tests, now installs Pillow package before tests; this will
also install all dependencies (currently, only olefile).
2016-11-22 18:17:31 -08:00
wiredfool
620d082457
Merge pull request #2240 from uploadcare/draft-min-scale
...
Use minimal scale for jpeg drafts
2016-11-22 15:22:59 +00:00
wiredfool
d3cdaabf7c
Merge pull request #2186 from timgraham/escape-sequences-bytes
...
Fix "invalid escape sequence" bytestring warnings in Python 3.6
2016-11-22 12:34:50 +00:00
Jon Dufresne
dbe9f85c7d
Drop support for Python 2.6
...
* Drop unittest2 requirement
* Use set literals
* Use dict/set comprehension
* Use str.format() automatic numbering
2016-11-22 04:23:55 -08:00
wiredfool
8b4cd7eb7a
Merge pull request #2226 from jdufresne/font-file-close
...
Use a context manager in FontFile.save() to ensure file is always closed
2016-11-22 12:04:28 +00:00
wiredfool
87b8d2894a
Merge pull request #2227 from radarhere/fpname
...
Fixed bug in saving to fp-objects in Python >= 3.4
2016-11-22 12:03:25 +00:00
wiredfool
806e5343d8
Merge pull request #2232 from jdufresne/font-close-file
...
Close file after finished reading in ImageFont._load_pilfont()
2016-11-22 11:59:36 +00:00
wiredfool
816c74ac81
Fix SunImagePlugin.
...
SunImagePlugin now loads all the images here:
https://samples.libav.org/image-samples/sunrast/
without LOAD_TRUNCATED_IMAGES set, verified visually.
Prior to this commit:
Could not open 32bpp.ras
Could not open 4bpp.ras
Could not open gray.ras
Could not open lena-1bit-rle.sun
Could not open lena-24bit-rle.sun
Could not open lena-8bit-raw.sun
Could not open lena-8bit-rle.sun
Could not open MARBLES.SUN
2016-11-22 02:52:18 -08:00
wiredfool
372b1abe69
expand tile element names, don't attempt to mmap if args has < 3 elements
2016-11-22 02:46:54 -08:00
homm
55fca4857c
protect .draft() from second call
2016-11-22 04:28:04 +03:00
homm
8f6b7b258b
use minimal scale for jpeg downscaling
2016-11-22 04:00:49 +03:00
wiredfool
318ff7d332
fixed support for hopper.ras, and other RGB sun raster files
2016-11-19 19:43:43 -08:00
Andrew Murray
5d37103d01
Corrected unfinished sentence
2016-11-19 10:55:08 +11:00
Andrew Murray
8758866f47
Fixed typo
2016-11-19 10:45:33 +11:00
Jon Dufresne
85ec6eb251
Close file after finished reading in ImageFont._load_pilfont()
...
Fixes some "ResourceWarning: unclosed file ..." when running tests with
warnings enabled.
2016-11-17 07:46:54 -08:00
Andrew Murray
38fd77ca7d
Fixed bug in saving to fp-objects in Python >= 3.4
2016-11-15 20:13:25 +11:00
Jon Dufresne
25ac9a20e4
Use a context manager in FontFile.save() to ensure file is always closed
2016-11-14 21:18:57 -08:00
Jon Dufresne
ffa5bc2726
Use generator expressions instead of list comprehension
...
Avoids unnecessary temporary lists in memory.
2016-11-14 18:11:15 -08:00
wiredfool
2a74940817
Merge pull request #2215 from jdufresne/img-palette-close
...
Close file after reading in ImagePalette.load()
2016-11-14 22:12:08 +00:00
Andrew Murray
c3fe5d4313
Changed behaviour of default box argument for paste method to match docs
2016-11-15 06:37:40 +11:00
wiredfool
90760a5f30
Removed the handles_eof flag in the decoder, as there are no users of it
2016-11-14 07:47:02 -08:00
Jake Merdich
05b5382a60
Add support for another type of BMP bitfield
...
There's an example file [here](https://dl.dropboxusercontent.com/u/11688373/Gompei%20(1).bmp ), though I don't have the rights to commit it here.
2016-11-14 00:31:23 -05:00
Jon Dufresne
a5d6519d74
Remove long deprecated ImageDraw methods
...
Deprecated in 89ccf66ff7
since Sep 29,
2015, version 3.0.0.
2016-11-13 10:08:47 -08:00
Jon Dufresne
6bc8fdd342
Close file after reading in ImagePalette.load()
...
Fixes some "ResourceWarning: unclosed file ..." when running tests with
warnings enabled.
2016-11-11 16:59:32 -08:00
wiredfool
650062bc75
Merge pull request #2197 from radarhere/rangelen
...
Replaced range(len())
2016-11-11 17:03:38 +00:00
wiredfool
9ee19f2aa9
Merge pull request #2182 from wiredfool/pyside_segfault
...
Fix for ImageQt Segfault
2016-11-11 17:00:27 +00:00
Andrew Murray
8fc90fe4fa
Replaced range(len())
2016-11-06 12:38:59 +11:00
Andrew Murray
2ba2763f0b
Replaced range(len()) with enumerate
2016-11-05 19:09:14 +11:00
Clement Skau
caf53b05ec
Fixes TIFFImagePlugin ICC color profile saving.
...
In the TIFF code saving icc_profile is conditional on tag_v2 being set which doesn't make sense to me. I believe this is merely an indentation typo.
I've been trying to save TIFFs with im.info['icc_profile'] set and compression=raw, but unfortunately this results in TIFFs without ICC color profiles.
With the attached patch TIFFs with said conditions will be saved with the profile set in im.info['icc_profile'].
Note: There are a number of different conditions that need to be met for code to succeed in saving with the profile since it branches between using libtiff and ImageFile._save(..), and the libtiff code does not currently save the ICC color profile.
For instance setting compression=tiff_lzw will result in using libtiff and no profile will be saved.
2016-11-05 15:01:39 +09:00
Andrew Murray
a51dc7dcaf
Unified different GIF optimize conditions
2016-11-05 13:32:02 +11:00
Marcus Brinkmann
66de02685f
Update info.icc_profile when using libtiff reader.
2016-11-04 16:37:49 +01:00
Hugo
48b72eac34
Merge pull request #2184 from jdufresne/isinstance
...
Replace type() equality checks with isinstance
2016-11-01 19:07:06 +02:00
Tim Graham
792df283d9
Fix "invalid escape sequence" bytestring warnings in Python 3.6
2016-10-31 11:48:59 -04:00
Tim Graham
02b5ce0479
Remove redundant space in PIL.Image ImportError message
2016-10-31 11:09:40 -04:00
Jon Dufresne
e44bb42ae9
Replace type() equality checks with isinstance
2016-10-31 06:41:43 -07:00
wiredfool
8582144e0e
Fix for issue #1370 , Segfault using QImages due to not retaining the data
2016-10-27 14:11:06 -07:00
wiredfool
37d97968e4
Merge pull request #2172 from jdufresne/bytes-warning
...
Fix BytesWarnings discovered while running tests
2016-10-25 10:07:53 +01:00
Jon Dufresne
7992d2a65a
Fix BytesWarning discovered while running tests
...
Discovered using the command:
python -b -m nose -vx Tests/test_*.py
2016-10-22 12:35:44 -07:00
Matt R. Wilson
74f751037f
Divide floats to eliminate deprecation warning.
...
When running python 2.7 with the `-3` flag the following warning occurs
> .../PIL/Image.py:48: DeprecationWarning: classic int division
MAX_IMAGE_PIXELS = int(1024 * 1024 * 1024 / 4 / 3)
Simply changing the 4 and 3 to be floats instead eliminates the warning
and, because the result is cast, the resulting `int` stays the same for
python 2 and 3.
2016-10-22 11:58:13 -04:00
Andrew Murray
f59b708f3a
Fixed typo
2016-10-07 20:43:54 +11:00
wiredfool
35e1237b7e
3.5.0.dev0 Dev Version bump
2016-10-04 00:18:33 -07:00
homm
c5e111e6b8
allow lists as arguments for Image.new
2016-10-04 03:06:35 +03:00
wiredfool
ac5a212cee
3.4.0 Release Version bump
2016-10-03 08:00:29 -07:00
wiredfool
22ff3f4358
Vulnerable map function is not called on windows
2016-10-03 07:42:48 -07:00
wiredfool
445451c0b9
Added common check for size tuple errors
2016-10-03 07:27:02 -07:00
wiredfool
1a43da7a8b
Removed 'Debugging' open_ppm call that didn't check file provided parameters for sanity
2016-10-03 07:27:02 -07:00
wiredfool
d9fc1848a2
Merge pull request #2140 from SemanticsOS/lambdafu/tiff-multipage
...
Add TIFF save_all writer.
2016-10-03 06:31:39 -07:00
wiredfool
2db3f00e92
Merge pull request #2141 from wiredfool/tiff_fd
...
Move libtiff fd duplication to _load_libtiff
2016-10-03 06:03:50 -07:00
wiredfool
f8e6953e6e
Merge pull request #2133 from wiredfool/gif-optimize-perf
...
Speed up GIF save optimization step
2016-10-03 06:03:12 -07:00
wiredfool
9440764863
Merge pull request #2131 from wiredfool/imagecms-segfault
...
Fix for ImageCms Segfault
2016-10-03 06:02:39 -07:00
wiredfool
ab29e2fa24
Merge pull request #2138 from wiredfool/issue_1077
...
Make Image.crop an immediate operation, not lazy.
2016-10-03 06:01:34 -07:00
wiredfool
41cbd4f4d3
Only duplicate the file descriptor when acually passing it to
...
libtiff. From: Sebastian Krause <sebastian@realpath.org>
2016-09-29 22:14:51 +01:00
Eric Soroos
95b50bf611
Make Image.crop an immediate operation, not lazy. Fixes #1077
2016-09-29 13:28:24 -07:00
wiredfool
4a90e8f75b
Merge pull request #2024 from uploadcare/fix-empty-exif-tags
...
Skip empty values in ImageFileDirectory
2016-09-29 08:24:44 -07:00
wiredfool
0902120f09
Merge pull request #2139 from SemanticsOS/lambdafu/multipage-tiff-palette
...
Force reloading palette when using mmap in ImageFile.
2016-09-29 08:20:25 -07:00
Marcus Brinkmann
92c7337df0
Add TIFF save_all writer.
2016-09-29 17:05:33 +02:00
Marcus Brinkmann
c74e45e87c
Force reloading palette when using mmap in ImageFile.
2016-09-29 14:54:25 +02:00
Tim Graham
0c66b80a95
Fix "invalid escape sequence" warning in Python 3.6
...
http://bugs.python.org/issue27364
2016-09-27 19:26:57 -04:00
wiredfool
1d068b6e0a
Check type of items passed into to ImageCms.ImageCmsProfile, fixes #2037
2016-09-26 14:56:00 -07:00
wiredfool
a51d3bcdba
Speed up Gif save optimization step: don't do it as often and do it in C. Fixes #2093
2016-09-26 14:51:28 -07:00
Andrew Murray
d3d29ab2e3
Use truth value when checking for optimize option on save
2016-09-25 21:20:54 +10:00
wiredfool
324a91a25c
Merge pull request #2021 from radarhere/doc-warnings
...
Converted documentation parameter format, comments to docstrings.
2016-09-25 09:34:12 +01:00
wiredfool
21d1fd6be0
Merge pull request #2125 from radarhere/macos
...
Renamed references to OS X to macOS
2016-09-25 09:31:01 +01:00
Andrew Murray
ea3be60c03
Converted documentation
2016-09-24 19:10:46 +10:00
wiredfool
54520b10ac
Merge pull request #2127 from radarhere/imagefile
...
Removed outdated comment
2016-09-23 15:42:15 +01:00
Andrew Murray
ba0e26ae84
Removed outdated comment
2016-09-24 00:18:31 +10:00
Andrew Murray
b58f76dc4f
Renamed references to OS X to macOS
2016-09-23 21:12:03 +10:00
Andrew Murray
de6158f5f1
Read value when checking for JPEG progressive key
2016-09-23 20:32:21 +10:00
Andrew Murray
051a410859
Convert DPI to ints when saving as JPEG
2016-09-22 19:41:32 +10:00
wiredfool
25797b2baa
Merge pull request #2103 from radarhere/append_images
...
Added append_images parameter to GIF saving
2016-09-22 10:21:31 +01:00
wiredfool
9c4c16df75
Merge pull request #2068 from Mischanix/dxtc
...
Move DDS decoders to C, add DXT3, BC7 Decoders
2016-09-22 10:04:23 +01:00
wiredfool
8ed63793bf
Merge pull request #2111 from anntzer/save-tiff-resolution-when-originally-missing-entry
...
Fix saving originally missing TIFF tags.
2016-09-22 09:20:56 +01:00
Hugo
bc354d10c2
Merge pull request #2110 from patricksnape/allow_pathlib_py2
...
Allow pathlib.Path in Image.open on Python 2.7
2016-09-20 17:54:11 +03:00