Ben Yang
8bd4bbb808
implemented language parameter for multiline ImageDraw methods, updated release notes
2019-03-11 20:21:52 -07:00
Ben Yang
d5bbf01254
moved 'language' parameter to last parameter in relevant functions
2019-03-11 18:56:22 -07:00
Ben Yang
c174c90ac1
fixed for python2
2019-03-11 18:56:22 -07:00
Ben Yang
1a075bed52
added language parameter to ImageFont.FreeTypeFont.getmask()
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
Andrew Murray
22b0110f89
Only close original fp in __del__ and __exit__ if original fp is exclusive
2019-03-12 08:54:43 +11:00
Hugo
125a001b66
Merge pull request #3698 from radarhere/context
...
Only close exclusive fp on Image __exit__
2019-03-11 21:41:44 +02:00
Hugo
77d1c609f3
Merge pull request #3635 from radarhere/eps
...
Changed EPS subprocess stdout from devnull to None
2019-03-11 21:15:18 +02: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
365d5e541a
Added EXIF support
2019-03-11 21:19:36 +11:00
Hugo
63f31ee380
Merge pull request #3699 from glasnt/topic/quantize-dither
...
Add option to set dither param on quantize
2019-03-11 12:18:32 +02:00
Hugo
5da0d5beee
Merge pull request #3673 from radarhere/dds
...
Add reading of DDS uncompressed RGB data
2019-03-11 12:04:47 +02:00
Hugo
c88ada1dcd
Merge pull request #3672 from radarhere/tiff_tag_type
...
Corrected length of Tiff BYTE tags
2019-03-11 11:59:29 +02:00
Andrew Murray
878244bf38
Fixed typo
2019-03-11 11:13:39 +11:00
Andrew Murray
5277eec027
Added support for RGBA bitfield compression
2019-03-09 11:11:32 +11:00
Katie McLaughlin
0b63579f39
Add option to set dither param on quantize
...
Default the option to `1`, as per original setting
2019-03-09 10:36:13 +11:00
Hugo
68adce2dd1
Merge pull request #3691 from radarhere/dib
...
Added DIB saving and loading through Image open
2019-03-08 14:56:29 +02:00
Andrew Murray
58e60510e6
Merge pull request #3549 from radarhere/mimetype
...
Improved get_format_mimetype logic
2019-03-08 10:06:47 +11:00
Hugo
d0172a08dd
Update src/PIL/MpoImagePlugin.py
...
Co-Authored-By: Glandos <bugs-github@antipoul.fr>
2019-03-07 13:22:20 +01:00
Hugo
85cc21b563
Update src/PIL/MpoImagePlugin.py
...
Co-Authored-By: Glandos <bugs-github@antipoul.fr>
2019-03-07 13:22:14 +01:00
Andrew Murray
b29365e8a0
Updated list of Unix utilities used to show an image [ci skip]
2019-03-07 15:24:27 +11:00
Glandos
5d8b14fc9e
Cache EXIF information
...
In case we need to call _getexif from the outside, since it's already called while parsing.
cache the result in self.info. This is compatible with other file using _getexif, like WebP.
2019-03-06 22:05:48 +01:00
Hugo
2edab165a1
Since #2527 , macOS saves to a temp PNG before showing
2019-03-06 15:57:58 +02:00
Andrew Murray
b1cc7df7ba
Only close exclusive fp on Image __exit__
2019-03-06 21:55:32 +11:00
Andrew Murray
1bdb5dc917
Added DIB saving and loading through Image open
2019-03-06 13:59:07 +11:00
Andrew Murray
636ad68f5e
Read Photoshop resolution data
2019-03-06 10:28:45 +11:00
Andrew Murray
319d6f2af9
Restored newline at end of file
2019-03-06 08:06:19 +11:00
Andrew Murray
7d3b8e8cea
Merge branch 'master' into mime-types
2019-03-06 07:08:00 +11:00
Hugo
353d2a34ed
Update src/PIL/PpmImagePlugin.py
...
Co-Authored-By: radarhere <3112309+radarhere@users.noreply.github.com>
2019-03-06 00:01:56 +11:00
pirate486743186
1d63703c54
removing dib extension
2019-03-04 15:05:14 +01:00
Andrew Murray
4be51c46eb
Added mime types
2019-03-04 18:17:12 +11:00
pirate486743186
a62c825922
adding some missing mime types and extensions
...
for reference
https://en.wikipedia.org/wiki/BMP_file_format
https://en.wikipedia.org/wiki/ICO_(file_format)
https://en.wikipedia.org/wiki/Pcx
https://en.wikipedia.org/wiki/Netpbm_format
https://en.wikipedia.org/wiki/.tga
2019-03-04 15:44:39 +11:00
Hugo
571aca6610
Merge pull request #3685 from radarhere/file
...
Renamed file variable
2019-03-03 10:15:33 +02:00
Andrew Murray
525eaf7389
Renamed file variable
2019-03-03 13:02:00 +11:00
Frédéric Chapoton
e514fbbbb1
use the already import io
...
instead of importing again from io (lgtm suggestion)
2019-03-02 21:19:57 +01:00
Jon Dufresne
9296e4f3a2
Merge multiple isinstance() calls to one
2019-03-02 08:24:08 -08:00
Andrew Murray
57807e9ce2
Merge pull request #3624 from hugovk/rm-VERSION
...
Remove deprecated VERSION
2019-03-02 11:47:59 +11:00
Hugo
df6d429789
Merge pull request #3580 from jdufresne/bytes-warning
...
Fix 'BytesWarning: Comparison between bytes and string' in PdfDict
2019-02-27 23:38:45 +02:00
Hugo
d9f5f44799
Merge pull request #3632 from radarhere/thumbnail
...
Do not resize in Image.thumbnail if already the destination size
2019-02-27 23:37:20 +02:00
Hugo
b75210d824
Merge pull request #3572 from jdufresne/seek-constants
...
Replace .seek() magic numbers with io.SEEK_* constants
2019-02-27 23:30:27 +02:00
Hugo
2e374cf1ad
Merge pull request #3568 from jdufresne/isatty-bool
...
Make ContainerIO.isatty() return a bool, not int
2019-02-27 23:28:51 +02:00
Hugo
2f5f80f47e
Merge pull request #3563 from radarhere/transpose
...
Added support for I;16 modes for more transpose operations
2019-02-27 23:22:52 +02:00
Andrew Murray
148d320b40
Added reading of uncompressed RGB data
2019-02-23 06:44:06 +11:00
Andrew Murray
dd0e4ac0a1
Corrected length of Tiff BYTE tags
2019-02-22 23:17:26 +11:00
Hugo
d167f9e0bd
Merge pull request #3669 from radarhere/typo
...
Fixed typo
2019-02-21 18:24:15 +02:00
Andrew Murray
5d9898b686
Merge pull request #3655 from hugovk/deprecate-eol-qt
...
Deprecate support for PyQt4 and PySide
2019-02-21 19:22:34 +11:00
Hugo
cf08e21141
Merge pull request #3667 from radarhere/tifftags
...
Use constants for TIFF tag types
2019-02-20 22:29:21 +02:00
Hugo
78b7038a9b
Merge pull request #3555 from cgohlke/patch-1
...
Add TIFF compression codecs: LZMA, Zstd, WebP
2019-02-20 11:51:33 +02: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
Hugo
8cd0432e65
Merge pull request #3616 from wbadart/master
...
_util.isPath returns True for pathlib.Path objects
2019-02-20 11:48:12 +02:00
Andrew Murray
dbc476255e
Fixed typo
2019-02-19 19:49:50 +11:00
Andrew Murray
9e52fb0fe4
Use constants for tag types
2019-02-19 19:45:53 +11:00
Andrew Murray
daa8b51339
Merge pull request #3630 from jdufresne/simplify-eq
...
Slightly simplify Image.__eq__
2019-02-16 14:03:48 +11:00
Adrien CLERC
4a87e067a2
convert Jpeg to Mpo instead of re-reading everything
2019-02-15 22:08:31 +01:00
Adrien CLERC
ac5dd15e16
create static method to transform a Jpeg into an Mpo
...
This is dirty "downcasting". It just works in this special case.
2019-02-15 22:08:14 +01:00
Adrien CLERC
3a7e2e259a
split _open in two parts
2019-02-15 22:07:11 +01:00
Andrew Murray
1a7a1123e6
Merge branch 'master' into tiff-old-jpeg
2019-02-15 19:56:17 +11:00
Hugo
3c088db7ba
Depreate support for EOL PyQt4 and PySide
2019-02-14 22:59:14 +02:00
Andrew Murray
1162b4cf83
Do not resize if already the destination size
2019-02-13 19:26:37 +11:00
Hugo
4ccdbf25cf
Merge pull request #3584 from radarhere/ifd_offset
...
Seek to IFD offset
2019-02-12 18:10:25 +02:00
Hugo
f7134f1c18
Merge pull request #3628 from jdufresne/dep-plugin-version
...
Deprecate PIL.*ImagePlugin.__version__ attributes
2019-02-12 15:39:43 +02:00
Andrew Murray
54f6cc7ea2
Changed subprocess stdout from devnull to None
2019-02-06 19:07:53 +11:00
Andrew Murray
d1df192e81
Renamed "file" variable to "fp"
2019-02-05 20:30:44 +11:00
Jon Dufresne
dd1e7ccc4a
Slightly simplify Image.__eq__
...
Two identical types can be compared using the `is` operator. Object
identity is slightly faster than a string comparison as well.
2019-02-03 07:13:28 -08:00
Hugo
d02e2b5392
Merge pull request #3558 from radarhere/png
...
Allow for unknown PNG chunks after image data
2019-02-03 11:57:21 +02:00
Hugo
d0fa318c01
Merge pull request #3611 from radarhere/eps
...
Changed EPS subprocess stdin from devnull to None
2019-02-03 11:50:47 +02:00
Hugo
b20cbe5299
Merge pull request #3609 from cgohlke/patch-2
...
Fix possible integer overflow
2019-02-03 11:49:35 +02:00
Hugo
4d1a459fa7
Merge pull request #3574 from jdufresne/base-exc
...
Catch BaseException for resource cleanup handlers
2019-02-03 11:35:44 +02:00
Andrew Murray
fbaf87ae03
Replaced strings with docstrings
2019-02-03 15:58:24 +11:00
Jon Dufresne
a11fed32b3
Deprecate PIL.*ImagePlugin.__version__ attributes
...
Use PIL.__version__ instead.
2019-02-02 17:39:55 -08:00
Hugo
3513c82a73
Use Pillow version instead of forked PIL version
2019-01-30 15:46:14 +02:00
Hugo
158d99b8b0
Remove deprecated VERSION
2019-01-30 15:46:14 +02:00
Hugo
6d0e4a838f
Flake8: Fix F821 undefined name; to prevent introducting Mypy depedency
2019-01-30 11:54:12 +02:00
Will Badart
07bff3e9b8
Implement @hugovk's comments
...
The `py36` flag now uses a tuple comparison to correctly handle future
major version. The unit test file also now uses `py36` as exported by
the _util module, rather than re-testing `sys.version_info`.
2019-01-28 19:45:53 -05:00
Will Badart
adae7ecc6a
_util.isPath returns True for pathlib.Path objects
...
Now, for functions which accept either a path or file object, the
predicate will pass on Paths and not attempt to call .read on them
before opening.
The pathlib module was added in 3.4 but os.path functions did not start
accepting path-like objects until 3.6, so that is the version after
which this implementation is defined.
Added a unit test to make sure isPath accepts Path objects. The unit
test is skipped if python version is not 3.6 or later.
2019-01-28 12:19:21 -05:00
Andrew Murray
4ac6bbd073
Changed version to 6.0.0
2019-01-27 14:59:51 +11:00
Hugo
1b91ae361d
Merge pull request #3599 from hugovk/rm-deprecated-imageops
...
Remove deprecated ImageOps functions
2019-01-26 19:48:17 +02:00
cgohlke
86afcfd8f9
Fix possible integer overflow
2019-01-25 15:11:22 -08:00
Andrew Murray
258ec6d129
Changed subprocess stdin from devnull to None
2019-01-25 18:49:10 +11:00
Hugo
b41ffe585b
Remove deprecated ImageOps functions
2019-01-19 20:00:55 +02:00
Hugo
dbbe463326
Remove deprecated PIL.OleFileIO in favour of olefile Python package
2019-01-19 17:59:17 +02:00
Andrew Murray
0481d0ac1e
Seek to IFD offset
2019-01-16 06:55:37 +11:00
Jon Dufresne
c41ec5b115
Fix 'BytesWarning: Comparison between bytes and string' in PdfDict
...
When bytes warnings are enabled with the '-b' argument, the PdfDict
class would emit a warning.
https://docs.python.org/3/using/cmdline.html#miscellaneous-options
> -b
>
> Issue a warning when comparing bytes or bytearray with str or bytes
> with int.
Object attributes are always type str, so can safely encode them without
a type check. Observe:
$ python3
>>> o = object()
>>> setattr(o, b'foo', b'bar')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: attribute name must be string, not 'bytes'
2019-01-13 09:38:13 -08:00
Jon Dufresne
51e95f6252
Catch BaseException for resource cleanup handlers
...
In the event of a SystemExit or KeyboardInterrupt, file resources should
still be cleaned up before re-raising the exception.
https://docs.python.org/3/library/exceptions.html#exception-hierarchy
2019-01-12 18:32:14 -08:00
Jon Dufresne
3e28ba3b7d
Python del is a statement not a function
...
https://docs.python.org/3/reference/simple_stmts.html#the-del-statement
2019-01-12 18:28:35 -08:00
Jon Dufresne
a00fc33c04
Replace .seek() magic numbers with io.SEEK_* constants
...
A bit more readable.
https://docs.python.org/3/library/io.html#io.IOBase.seek
2019-01-12 18:22:07 -08:00
Jon Dufresne
a08bfa6e9f
Make ContainerIO.isatty() return a bool, not int
...
Better follows the interface of IOBase.isatty:
https://docs.python.org/3/library/io.html#io.IOBase.isatty
2019-01-12 16:48:05 -08:00
Andrew Murray
7acaf3d6a6
Added support for I;16 modes for more transpose operations
2019-01-10 07:26:52 +11:00
Jon Dufresne
0ae7b3374e
Use bool type for ImageCms inPlace argument (instead of int)
...
The argument is used as a bool and the docs describe it as a bool, so
use an actual bool.
2019-01-07 20:22:52 -08:00
Andrew Murray
4e0a73b4fa
Allow for unknown PNG chunks after image data
2019-01-08 07:21:25 +11:00
cgohlke
c0f4382af2
Add TIFF compression codecs: LZMA, Zstd, WebP
2019-01-06 19:49:00 -08: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
0f09274690
Remove more unused hashtable functions
2019-01-05 22:26:35 +02:00
Andrew Murray
4c0e32ccf2
Improved get_format_mimetype logic
2019-01-06 07:00:00 +11:00
Hugo
f0778ba594
Remove unused hashtable destroy functions
2019-01-05 21:07:11 +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
Andrew Murray
f8df6d1687
Fixed pickling of iTXt class with protocol > 1
2019-01-03 09:31:55 +11:00