Martin Panter
caa609c438
Do away with @functools.total_ordering to restore Python 2.6 support
...
* Manually implement __ne__() and __lt__()
* __gt__() and __ge__() not needed due to operator reflection
2014-01-31 01:32:46 +00:00
Martin Panter
704ed76229
Update documentation for Python 3
2014-01-30 23:47:12 +00:00
Martin Panter
a6fd013a77
Implement rich comparison using @total_ordering (2.7+, 3.2+)
2014-01-30 23:38:04 +00:00
Martin Panter
5143df8561
Use range() rather than xrange(), for Python 3 compatibility
2014-01-30 23:38:04 +00:00
Martin Panter
6977b592e3
Port more stuff to Python 3, dropping some pre-2.6 support
2014-01-30 23:38:04 +00:00
Martin Panter
cd61720845
Merge Pillow changes with Philippe Lagadec’s OleFileIO_PL fork
...
Conflicts:
PIL/OleFileIO.py
I kept Philippe’s version of Unicode decoding that uses UTF-16LE. Pillow
started using Python’s “utf_16” codec in the meantime, but I understand it
uses native byte ordering by default.
2014-01-30 23:37:44 +00:00
Martin Panter
ac5cb028be
Convert OleFileIO.py to LF newlines before merging
2014-01-30 23:30:58 +00:00
decalage
0b79c83709
updated readme
2014-01-30 23:29:57 +00:00
decalage
a468016b63
v0.26: added methods to parse stream/storage timestamps, improved listdir to include storages, fixed parsing of direntry timestamps
2014-01-30 23:29:57 +00:00
decalage
e1fe77b48b
fix #12
...
updated readme
2014-01-30 23:29:57 +00:00
decalage
7d37cf071f
- getproperties: improved exception handling
...
- _raise_defect: added option to set exception type
- all non-fatal issues are now recorded, and displayed when run as a script
2014-01-30 23:29:57 +00:00
decalage
8e826441b2
2013-05-24 v0.25 PL: - getproperties: option to not convert some timestamps
...
- OleMetaData: total_edit_time is now a number of seconds,
not a timestamp
- getproperties: added support for VT_BOOL, VT_INT, V_UINT
- getproperties: filter out null chars from strings
- getproperties: raise non-fatal defects instead of
exceptions when properties cannot be parsed properly
2014-01-30 23:29:57 +00:00
decalage
90f0b6796e
updated readme
2014-01-30 23:29:57 +00:00
decalage
5b616ca1be
v0.24: slight improvements in OleMetadata, updated readme.
2014-01-30 23:29:57 +00:00
decalage
c5cd0ccefc
updated readme
2014-01-30 23:29:57 +00:00
decalage
d5166fd97e
- new class OleMetadata to parse standard properties
...
- added get_metadata method to OleFileIO
2014-01-30 23:29:57 +00:00
decalage
25158fe8b1
- getproperties: added conversion from filetime to python datetime
...
- main: displays properties with date format
2014-01-30 23:29:54 +00:00
decalage
4bdd2b2bef
version 0.23 - updated readme and setup.py
2014-01-30 23:29:40 +00:00
decalage
f88809e5f3
Updated readme in markdown and rst formats
2014-01-30 23:29:08 +00:00
decalage
ab541b1b4d
Added comments for patch submitted by mete0r_kr, changed version
2014-01-30 23:21:25 +00:00
mete0r sarangbang
bbee2b5b8a
support file-like object
...
fix #8
2014-01-30 23:21:25 +00:00
decalage
eaeb12f695
Fixed issue 2 - added close method to OleFileIO class
2014-01-30 23:21:25 +00:00
decalage
bd833a6972
Fixed issue 7 in OleFileIO.getproperties reported by chuckleberryfinn
2014-01-30 23:21:23 +00:00
decalage
491f3e9f99
updated readme
2014-01-30 23:20:31 +00:00
decalage
87a7ec955e
version 0.21 2010-01-22
2014-01-30 23:20:28 +00:00
decalage
4248acb7a7
version 0.20 2009-12-11
2014-01-30 23:17:51 +00:00
decalage
61a3ceb812
version 0.19 2009-12-10
2014-01-30 23:17:51 +00:00
decalage
70a99619bc
version 0.18 2007-12-05
2014-01-30 23:17:51 +00:00
decalage
18333d8edf
version 0.17 2007-12-04
2014-01-30 23:15:35 +00:00
decalage
e614631025
version 0.15 2007-11-25
2014-01-30 23:15:17 +00:00
decalage
d6d3f50205
version 0.14 2007-11-19
2014-01-30 23:15:17 +00:00
decalage
fad61ba20c
version 0.13 2007-09-04
2014-01-30 23:12:46 +00:00
decalage
f05f8001c5
Original version of OleFileIO.py from PIL, dated 2005-03-25, still current in PIL 1.1.7 on the 2011-10-20
2014-01-30 23:12:19 +00:00
Joaquín Cuenca Abela
bab068a337
Improve heuristic used when saving progressive and optimized JPEGs with high quality values.
2014-01-27 20:27:03 +01:00
wiredfool
6de70524f7
108 and 124 bit header fields are a superset of the 64 bit header
2014-01-26 20:43:21 -08:00
wiredfool
046a226f34
Don't use gigs of memory with invalid palette sizes
2014-01-23 20:11:05 -08:00
wiredfool
a549e77bd8
Fix hang by using temp file and command line args instead of stdin
2014-01-21 23:18:24 -08:00
wiredfool
8ce2faa8c9
enable eps test in test_imagefile, test passes
2014-01-21 23:17:47 -08:00
cgohlke
4446f05ac0
Fix saving EPS to open file objects on Python 2.x
...
Fix issue #470 and #479
2014-01-21 21:14:32 -08:00
wiredfool
2cc2a8cd62
Merge pull request #499 from wiredfool/webp_exif
...
* Don't send None as exif to JpegImagePlugin._getexif -- homm
* Test for fix -- wiredfool
2014-01-20 11:03:02 -08:00
wiredfool
c8895fa7a4
Merge branch 'fix-typeerror' of https://github.com/homm/Pillow into webp_exif
2014-01-20 10:46:33 -08:00
homm
4ce2939b02
JpegImagePlugin._getexif expects no exif key in info dict, not None
2014-01-20 19:03:03 +04:00
Bruno Renié
e1e64904c7
Cleanup handling of ICC profile, more extensive testing
2014-01-19 19:09:40 +01:00
Bruno Renié
0348fcac51
Fix crash on save when icc_profile is None
2014-01-19 16:40:39 +01:00
homm
0a256f9e56
fix UnboundLocalError: local variable 't' referenced before assignment
2014-01-15 16:55:10 +04:00
David Schmidt
af11b908cf
Update Image.py
...
docs update/fixes
2014-01-10 18:27:43 +01:00
Eric Soroos
9e069bfa54
I mode is native endian
2014-01-08 21:52:15 -08:00
wiredfool
79a7fdc100
I32 modes, not that I can actually use the I;32L/B ones
2014-01-08 21:18:38 -08:00
wiredfool
bfdc599c28
F mode support
2014-01-08 20:23:20 -08:00
François Boulogne
ead121d951
MAINT replace is False by not
2014-01-08 22:07:35 -05:00
François Boulogne
980517587d
MAINT: use is instead of == for True, False, None
2014-01-07 21:24:21 -05:00
François Boulogne
923018dfeb
MAINT: s/while 1:/while True:/
2014-01-07 21:21:24 -05:00
wiredfool
84e2cf6eda
I;16 modes
2014-01-06 23:15:00 -08:00
wiredfool
5dfadf623b
LA, PA image modes
2014-01-06 22:51:31 -08:00
wiredfool
8a69f6caa0
use cffi by default in pypy, not in c-python
2014-01-06 22:08:14 -08:00
wiredfool
c3812f46b2
clamping channels to 255
2014-01-06 21:20:19 -08:00
wiredfool
53ba63fcd5
Raising proper ValueErrors
2014-01-06 21:19:58 -08:00
wiredfool
594276c45e
existing behaviour is to clamp to max, not bitmask
2014-01-05 22:20:07 -08:00
wiredfool
32f4097d1e
Fixes putalpha tests
...
Make sure we clear the pyaccess object each time we reset the self.im
object
2014-01-05 22:18:42 -08:00
wiredfool
d8a88a5390
Passes tests on python 3.2
...
Reorganized to remove ImagingMemoryInstance struct, only saving the
three pointers that we need (image, image8, image32) and the x/ysize
ints.
2014-01-05 22:00:09 -08:00
wiredfool
663f881b21
all original tests pass
2014-01-05 21:07:56 -08:00
wiredfool
5efe737f6f
Cffi pixel access object, #248
2014-01-05 10:41:25 -08:00
cgohlke
db092e7d82
Correctly quote file names for WindowsViewer command
2014-01-01 19:04:30 -08:00
Alex Clark ☺
ae7edfa58d
Merge pull request #441 from wiredfool/lut
...
Image.point fixes for numpy.array and docs
2013-12-28 06:08:08 -08:00
Alex Clark ☺
ad47ea5a52
Merge pull request #424 from wiredfool/trns-write-bydefault2
...
Save the transparency header by default for PNGs
2013-12-28 05:57:45 -08:00
Alex Clark ☺
d48f301d57
Merge pull request #423 from wiredfool/trns-png
...
Support for PNG tRNS header when converting from RGB->RGBA
2013-12-28 05:56:03 -08:00
Alex Clark ☺
e4ae62ae59
Merge pull request #418 from wiredfool/AurelienBallier-master
...
PyQT5 Support
2013-12-28 05:50:49 -08:00
wiredfool
aa1c0fdfb6
merge from master
2013-12-19 20:48:49 -08:00
wiredfool
4791d156f1
Comments/Docs, fixes #440
2013-12-10 16:05:05 -08:00
wiredfool
d05b5d9060
Restore numpy.array as valid lookup tables
2013-12-10 15:47:26 -08:00
Alex Clark
404b245d89
Fix travis
2013-12-05 05:32:33 -05:00
wiredfool
543f96de61
Merge from master
2013-11-30 09:57:00 -08:00
Alex Clark ☺
666b2ce9e0
Merge pull request #398 from tmccombs/escape
...
Quote filenames and title before using on command line
2013-11-29 16:07:12 -08:00
Alex Clark ☺
e269fc6755
Merge pull request #399 from tmccombs/double
...
Closes #397 . Fixed Viewer.show to return properly.
2013-11-29 16:02:23 -08:00
Alex Clark ☺
eebb8c2a97
Merge pull request #408 from wiredfool/convert_doc
...
Image.convert mode 1 documentation update.
2013-11-29 15:15:23 -08:00
wiredfool
d65a2c8018
Save the transparency header by default for PNGs
2013-11-26 15:06:26 -08:00
wiredfool
0356741a29
Now using the rgbT2rgba conversion for L+transparency to RGBA, dropping the palette hack
2013-11-26 13:04:10 -08:00
wiredfool
c546c5a4c0
Added conversion for RGB+Transparency to RGBA that adds an alpha mask corresponding to the transparency value, fixes #421
2013-11-26 12:24:19 -08:00
wiredfool
94e3c75179
Merge from 12-bit-tiff
2013-11-21 21:41:54 -08:00
wiredfool
44e4d6b49d
Comments
2013-11-21 20:57:48 -08:00
wiredfool
16c95fc295
Flags to force libtiff read/write
2013-11-21 20:37:52 -08:00
wiredfool
65e3bfaf33
added generic libtiff en/decoder instead of each compression version
2013-11-21 20:37:52 -08:00
wiredfool
9d06fa74be
12 bit tiffs come out as 12 bits from libtiff
2013-11-21 20:37:30 -08:00
wiredfool
886b075526
Merge from master
2013-11-20 22:52:47 -08:00
wiredfool
dbecc1cb70
Fix for failing ImageQt with mode 'L' image
2013-11-20 22:20:13 -08:00
Aurélien Ballier
938323bd2b
Add Qt5 support.
2013-11-20 21:34:33 -08:00
wiredfool
e4fe6ae7a3
Read only implementation of 12bit tiffs
2013-11-20 16:56:23 -08:00
Esteban Santana Santana
8d27167fc7
More python3 fixes.
...
Changed the way the translate command that is passed to ghostscript is generated. This should now work on both python2.6+ and python3.
2013-11-20 02:54:31 -06:00
Esteban Santana Santana
3d1cd63afd
We need to write bytes not strings.
...
Python3 compatibility issue, we need to write bytes to buffers and pipes, not strings. This should still work in python2.6+.
2013-11-20 02:41:35 -06:00
Esteban Santana Santana
9cd654917d
Changed the Ghostscript() function inside of EpsImagePlugin to use subprocess.Popen() instead of the deprecated os.popen().
2013-11-20 01:32:06 -06:00
Esteban Santana Santana
7989378bfd
Added a way to specify the render size for EPS files.
...
There is now a scale parameter that you can pass in to the EpsImageFile.load() function. This parameter is used to specify at what scale Ghostscript renders the EPS internally. Scale needs to be an integer, and all of the internal structures (image size and bounding box) are scaled based on that parameter.
2013-11-17 01:26:44 -06:00
wiredfool
18ced74c06
Image.convert mode 1 documentation update. Fixes #407
2013-11-12 22:42:06 -08:00
David Schmidt
06301c9eba
don't create a new palette on Image._new if one already exists (i.e. after im.copy())
2013-11-12 14:41:35 +01:00
wiredfool
49191c78fb
CHECK: support for int arrays as ifd entries
2013-11-07 16:23:20 -08:00
wiredfool
d2f1fa0e5f
two additional tags for saving color images with libtiff
2013-11-05 20:49:09 -08:00
Thayne McCombs
840c7b9acb
Closes #397 . Fixed Viewer.show to return properly.
...
Viewer.show did not return a value, however ImageShow.show expected
Viewer.show to return a non-falsey value if successful. Therefor ImageShow.show
would continue to call multiple viewers.
2013-10-30 19:40:21 -06:00
Thayne McCombs
4da7c475ec
Quote filenames and title before using on command line
...
This commit quotes title and filename paramaters that are passed to the
command line when showing an image.
2013-10-30 19:29:15 -06:00
cgohlke
42b8ec37d7
Support RGBA TIFF with missing ExtraSamples tag
2013-10-26 18:02:17 -07:00
Alex Clark ☺
e3d85700b4
Merge pull request #390 from wiredfool/webp-lossless
...
Lossless WEBP Support
2013-10-24 03:08:24 -07:00
Alex Clark ☺
b57d68e993
Merge pull request #389 from wiredfool/libtiff-save
...
Take compression as an option in the save call for tiffs
2013-10-24 03:03:27 -07:00
Alex Clark ☺
06ba0ea757
Merge pull request #386 from liftoff/master
...
Add support for saving lossless WebP. Just pass 'lossless=True' to save()
2013-10-24 03:00:51 -07:00
wiredfool
63995459bc
merge from master
2013-10-22 16:18:06 -07:00
wiredfool
f8abb98ffd
Merge from master
2013-10-22 16:05:18 -07:00
wiredfool
2c1e800836
added new VP8 mode for lossless reading of RGBA, fixes failing tests
2013-10-22 12:44:09 -07:00
wiredfool
6a0516d2c9
final pass through atts: handling single rational tuple, using isStringType, flattening from single element tuple to string or int
2013-10-22 10:10:37 -07:00
wiredfool
8655209b4a
rm debugging print
2013-10-22 09:24:51 -07:00
wiredfool
32e2f97b21
Tag issues with libtiff -- Need to parse the tuples for the ifd and the im.ifd. getattr + default for the im.ifd instead of silent try/except
2013-10-22 09:18:41 -07:00
Eric Soroos
3128a76495
MM and II 16 bit integer tiffs pack/write properly using libtiff on bigendian platform
2013-10-21 22:37:20 +00:00
Eric Soroos
6f8d968cbb
MM and II 16 bit integer tiffs unpack properly using libtiff on bigendian platform
2013-10-21 22:17:33 +00:00
wiredfool
7ece94edc7
compression in encoder info
2013-10-21 09:30:06 -07:00
Dan McDougall
0a91541df8
Add support for saving lossless WebP. Just pass 'lossless=True' to save().
2013-10-20 15:44:22 -04:00
Eric Soroos
175c572432
I;16 images are little endian, not native endian
2013-10-19 03:28:31 +00:00
hugovk
92507e5d0a
Fix issue #382 : TypeError with TransposedFont's getsize()
...
When getting the size of text with a TransposedFont it was failing:
File "/usr/local/lib/python2.7/site-packages/PIL/ImageDraw.py", line 281, in textsize
return font.getsize(text)
File "/usr/local/lib/python2.7/site-packages/PIL/ImageFont.py", line 189, in getsize
w, h = self.font.getsize(text)[0]
TypeError: 'int' object is not iterable
This is because self.font.getsize(text) returns a (w, h) tuple. To fix, remove the [0].
Test cases have been created in test_imagefont.py:
test_rotated_transposed_font()
test_unrotated_transposed_font()
Both fail before the fix, both pass with the fix. Furthermore, the code I'm using this from ( https://github.com/mattdeboard/word_cloud ) now works as expected and creates a word cloud similar to the ones that PIL created.
2013-10-17 19:00:42 +03:00
Alex Clark ☺
55a0792815
Merge pull request #380 from wiredfool/lcms2
...
LCMS1 replaced with LCMS2
2013-10-16 09:09:15 -07:00
Stephen Johnson
c3de637362
Fully document PIL.PSDraw
2013-10-13 22:30:00 -07:00
Stephen Johnson
7030e50b36
Fully document PIL.ImageWin
2013-10-13 22:19:12 -07:00
Stephen Johnson
4b4f090258
Fully document PIL.ImageTk
2013-10-13 22:09:02 -07:00
Stephen Johnson
81ea5c35cb
Fully document PIL.ImageStat
2013-10-13 21:57:07 -07:00
Stephen Johnson
f284c194ca
Fully document PIL.ImageSequence
2013-10-13 21:49:35 -07:00
Stephen Johnson
6566a73bcf
Fully document PIL.ImagePath
2013-10-13 21:41:21 -07:00
Stephen Johnson
7881c86bba
Document PIL.ImagePalette as best I can
2013-10-13 21:27:07 -07:00
Stephen Johnson
0f3f6dd1a3
Move ImageGrab docs back to ImageGrab.rst instead of autodoc
2013-10-13 09:56:58 -07:00
Stephen Johnson
20b9d9774a
Fully document PIL.ImageOps; fix some :py:mod: markup
2013-10-12 22:17:45 -07:00
Stephen Johnson
e2d88b5a51
Fully document ImageMath
2013-10-12 17:40:14 -07:00
Stephen Johnson
cf7b72f9b9
Fully document PIL.ImageGrab
2013-10-12 17:22:02 -07:00
Stephen Johnson
bc0f53aceb
Fully document PIL.ImageFont
2013-10-12 17:14:12 -07:00
Stephen Johnson
a2c67dc3af
Fully document PIL.ImageFilter
2013-10-12 16:49:32 -07:00
Stephen Johnson
348daf9490
Document ImageFile.Parser
2013-10-12 13:57:27 -07:00
Stephen Johnson
f2be739fdf
Fully document PIL.ImageEnhance
2013-10-12 13:48:34 -07:00
wiredfool
ace78d0734
Lab is Uint, Int, Int. Tests failing
2013-10-11 23:31:47 -07:00
Stephen Johnson
88c700f3b2
Fully document PIL.ImageColor
2013-10-11 22:54:24 -07:00
Stephen Johnson
1e726ea36a
Remove old ImageChops comments; redundant with docstrings
2013-10-11 22:46:57 -07:00
Stephen Johnson
546c20491f
Improve ImageChops docstrings
2013-10-11 22:45:23 -07:00
Stephen Johnson
b533aa665e
Fix many formatting mistakes in PIL.Image's docstrings
2013-10-11 22:18:40 -07:00
wiredfool
1c3932e89f
Added LAB mode, core dumped
2013-10-10 23:27:34 -07:00
wiredfool
b506e2ad44
Fixed ability to create LAB profiles with color temperatures
2013-10-10 22:42:27 -07:00
wiredfool
ce041fd199
moving string functions into python, py27 and py32 now really work the same
2013-10-10 22:12:45 -07:00
wiredfool
21697f676b
Merge branch 'master' into tifftags
2013-10-08 21:34:02 -07:00
wiredfool
08347569b5
Another python 2.6 detail
2013-10-08 11:32:51 -07:00
wiredfool
e9b0b09b72
Python 2.6 compatibility
2013-10-08 10:43:55 -07:00
wiredfool
a91283061e
Python3 fixes
2013-10-07 23:30:55 -07:00
wiredfool
e35ed87be6
Writing multiple rational items
2013-10-07 23:09:41 -07:00
wiredfool
0204733fd6
Proper handling of both IFDs for libtiff usage
2013-10-07 23:03:50 -07:00
wiredfool
2188cf2baf
typo
2013-10-07 23:03:13 -07:00
wiredfool
e6c8e5abec
better handling of unicode, rational tuples
2013-10-07 23:02:59 -07:00
wiredfool
a3d267b96c
Changes in the internal representation of ImageFileDirectory
2013-10-07 17:05:27 -07:00
wiredfool
951a5d4ce8
Using the public interface rather than the raw, undecoded interface
2013-10-07 17:05:27 -07:00
wiredfool
ce0e8b6abf
streamlining internal representation of types in ImageFileDirectory
2013-10-07 17:05:27 -07:00
Alex Clark ☺
056690792e
Merge pull request #364 from wiredfool/premultiply
...
Alpha Premultiplication support for transform and resize
2013-10-07 06:38:11 -07:00
wiredfool
10214bc6c4
Premultiply RGBA images prior to transform and resize and undo after
2013-10-04 13:25:32 -07:00