Antony Lee
4e754e9c55
Use logging instead of print.
...
cf. #1191 .
Only TiffImagePlugin and OLEFileIO still rely on (their own) DEBUG flag.
I left TiffImagePlugin as it is because I hope #1059 gets merged in
first, and OLEFileIO because it uses its own logic.
Untested, as usual.
2015-06-29 12:39:50 -07:00
Andrew Murray
46fad0fd63
Fixed typo
2015-06-28 12:03:11 +10:00
Antony Lee
51f3560dc4
Restore negative seeks for TIFF.
2015-06-08 00:40:23 +10:00
Antony Lee
1b80fe5507
Provide n_frames attribute to multi-frame formats.
...
cf #1190 , #1192 . Tests missing.
2015-06-08 00:40:23 +10:00
Andrew Murray
ed2cca1e71
Fixed Tiff handling of bad EXIF data
2015-06-07 00:09:54 +10:00
Andrew Murray
a996033079
Fixed various typos
2015-05-29 14:59:54 +10:00
Andrew Murray
9794aafc37
Removed or commented unused variables
2015-04-24 16:02:38 +10:00
Andrew Murray
ebc6996ba5
Changed list comprehension variable name to avoid redefinition
2015-04-24 16:00:08 +10:00
Andrew Murray
d1c182cadc
Various Flake8 fixes
2015-04-24 09:26:52 +10:00
Björn Pedersen
61fb1c5bd4
Tiff: allow writing floating poitn tag values
...
Use the inverse logic used for loading floating point tag
values to also write them out again.
2015-02-23 09:46:35 +01:00
Antony Lee
800480db52
Use underscores, not spaces, in TIFF tag kwargs.
...
kwargs with spaces ("x resolution", "y resolution", "resolution unit"
and "date time") are deprecated.
2014-12-09 15:17:33 -08:00
wiredfool
9a2cc7df83
hoist import, move test to libtiff
2014-11-15 20:38:52 -08:00
Martin Fergie
dd3a46520c
Fix for saving to io.BytesIO()
2014-11-14 12:29:10 +00:00
Hugo
4d74b81a15
Merge pull request #980 from wiredfool/pr_938
...
4 bit TIFF support
2014-10-29 21:41:17 +02:00
hugovk
0df43e4f93
Avoid divide by zero
2014-10-25 23:42:02 +03:00
wiredfool
4f9b2dbe69
Fix pypy 2.4 regression, #952
2014-10-13 11:12:14 -07:00
Hugo
8cb5688047
flake8
2014-10-02 10:45:41 +03:00
Hugo
552a9a28a0
Support and test for 4-bit greyscale TIFF
2014-10-02 10:43:22 +03:00
wiredfool
17ac15543d
fp.tell resyncs the python3 with the file pointer
2014-09-02 15:20:25 -07:00
wiredfool
d8b2829f4b
Partial fix for test failures, works on py2.x
2014-09-02 15:20:25 -07:00
Kenny Ostrom
d5b4f136c5
added ifd offset to the tiff decoder args, call TIFFSetSubDirectory
2014-09-02 15:20:25 -07:00
wiredfool
99f7dd2aff
Allocate a new core image object for each frame, fixes problems with reusing palettes and image sizes
2014-09-02 15:20:25 -07:00
wiredfool
9f04c2d0a5
Don't close fd for multipage files
2014-09-02 15:20:24 -07:00
hugovk
56404f6888
Change wrapping to include some context on first line; plus typo fix
2014-07-29 23:00:38 +03:00
hugovk
70528dd539
flake8
2014-07-28 19:00:06 +03:00
wiredfool
618a79c1c6
Merge from master, pre-unittest conversion
2014-06-03 14:42:22 -07:00
hugovk
c9a4272af6
Replace python-imaging with python-pillow (but yet not Coveralls)
2014-06-03 13:02:44 +03:00
wiredfool
edd75ceb91
Use libtiff for writing any compressed tiff files, Fixes #659 , #431
2014-05-20 10:15:01 -07:00
wiredfool
54173d2c67
Cherry-pick of portions of patch a500ca1393
, many shortcut ops added, no functional changes
2014-05-09 21:36:15 -07:00
Hijackal
029a4a5079
Add specific 32-bit float tiff format
...
We regularly use this format to store 32bit floats and I would like to see it handled by clean Pillow installations without having to add it on every system I use.
2014-04-10 15:52:53 +02:00
wiredfool
937ae7790f
Renamed variables from reused single letter confusing names to something halfway descriptive
2014-03-27 22:19:39 -07:00
wiredfool
9552d9bc66
close the fd, if possible. Fixes #526
2014-03-27 22:18:40 -07:00
François Boulogne
923018dfeb
MAINT: s/while 1:/while True:/
2014-01-07 21:21:24 -05:00
wiredfool
aa1c0fdfb6
merge from master
2013-12-19 20:48:49 -08:00
wiredfool
543f96de61
Merge from master
2013-11-30 09:57:00 -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
e4fe6ae7a3
Read only implementation of 12bit tiffs
2013-11-20 16:56:23 -08: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
cgohlke
42b8ec37d7
Support RGBA TIFF with missing ExtraSamples tag
2013-10-26 18:02:17 -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
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
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
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
wiredfool
c4f9fa7a40
Py3 -- can't join a string
2013-10-02 22:23:27 -07:00
wiredfool
dbf47837ce
Add arbitrary tags to tiff images using an ImageFileDirectory
2013-10-02 22:06:17 -07:00
wiredfool
bb9672095b
initial working version of saving arbitrary tags from the img.tags directory
2013-09-28 21:31:32 -07:00
wiredfool
465ebd3af3
added tagnames for ImageJ tiff tags
2013-09-27 10:41:27 -07:00
wiredfool
a40950c3b9
Properly set the mode for files with rawmode of F;32BF
2013-09-27 10:41:03 -07:00
Eric Buehl
26fb0eadad
issue warning instead of debug/print
2013-08-20 16:53:55 +00:00
Eric Buehl
7430dc261f
be more tolerant of tag read failures
...
this can occur if the MakerNote has a pointer to outside the EXIF block
2013-08-19 22:51:50 +00:00
wiredfool
db49dbf9de
Ignore fillorder=2 when reading using libtiff
2013-07-10 22:36:55 -07:00
Alexey Buzanov
a130c45990
add several TIFF decoders and encoders
2013-07-01 18:45:42 +04:00
Matti Picus
af94b45cbc
allow integer image resolution as well as rational
2013-05-07 23:33:21 +03:00
Matti Picus
5ca04bb728
a test that fails for images with integer resolution
2013-05-07 23:23:51 +03:00
wiredfool
1540d46ca9
support for the differences between StringIO and BytesIO
2013-03-14 10:36:15 -07:00
Christoph Gohlke
dbfaff5673
Support uint32 TIFF
2013-03-13 21:08:24 -07:00
Christoph Gohlke
a26d7b6261
Decode bytestr instead of str
2013-03-13 19:18:40 -07:00
wiredfool
a3b4697965
typo
2013-03-11 22:04:34 -07:00
wiredfool
4f2a1f9715
() for print, since we're using print_statement
2013-03-08 21:15:22 -08:00
wiredfool
5ba6564e26
initial merge of wiredfool/Python-Imaging-Library-G4-Tiff-Support
2013-03-08 19:51:59 -08:00
Alex Clark
3020c16eaa
Fix imports
2013-03-07 11:20:28 -05:00
Alex Clark
f29950bc6d
Fix typo
2013-03-07 08:52:44 -05:00
Phil Elson
603f2a226f
Added the `named
` method to a Tiffs tag getter.
2013-03-07 12:00:19 +00:00
Mikhail Korobov
a71183dab5
better fix for #15 (with a test case now)
2013-02-26 17:12:11 +06:00
Brian Crowell
a7e3b2e47b
py3k: The big push
...
There are two main issues fixed with this commit:
* bytes vs. str: All file, image, and palette data are now handled as
bytes. A new _binary module consolidates the hacks needed to do this
across Python versions. tostring/fromstring methods have been renamed to
tobytes/frombytes, but the Python 2.6/2.7 versions alias them to the old
names for compatibility. Users should move to tobytes/frombytes.
One other potentially-breaking change is that text data in image files
(such as tags, comments) are now explicitly handled with a specific
character encoding in mind. This works well with the Unicode str in
Python 3, but may trip up old code expecting a straight byte-for-byte
translation to a Python string. This also required a change to Gohlke's
tags tests (in Tests/test_file_png.py) to expect Unicode strings from
the code.
* True div vs. floor div: Many division operations used the "/" operator
to do floor division, which is now the "//" operator in Python 3. These
were fixed.
As of this commit, on the first pass, I have one failing test (improper
handling of a slice object in a C module, test_imagepath.py) in Python 3,
and three that that I haven't tried running yet (test_imagegl,
test_imagegrab, and test_imageqt). I also haven't tested anything on
Windows. All but the three skipped tests run flawlessly against Pythons
2.6 and 2.7.
2013-01-10 08:46:56 -06:00
Brian Crowell
31c454b925
py3k: 2to3's "idiom" filter
...
This is, I guess, a few things the Python devs were just fed up with.
* "while 1" is now "while True"
* Types are compared with isinstance instead of ==
* Sort a list in one go with sorted()
My own twist is to also replace type('') with str, type(()) with tuple,
type([]) with list, type(1) with int, and type(5000.0) with float.
2013-01-10 08:46:53 -06:00
Brian Crowell
83ff0b3b31
py3k: Use relative imports
...
In py3k, imports are absolute unless using the "from . import" syntax.
This commit also solves a recursive import between Image, ImageColor, and
ImagePalette by delay-importing ImagePalette in Image.
I'm not too keen on this commit because the syntax is ugly. I might go back
and prefer the prettier "from PIL import".
2013-01-10 08:46:48 -06:00
Brian Crowell
5076c35cc5
py3k: print is a function
...
Seriously, if you didn't know that, you've been in a freaking cave, man.
2013-01-10 08:46:46 -06:00
Brian Crowell
fc035814bd
py3k: map and filter to list comprehensions
...
What's really going on is that map() and filter() return iterators in py3k.
I've just gone ahead and turned them all into list comprehensions, because
I find them much easier to read.
2013-01-10 08:46:43 -06:00
Brian Crowell
e514912378
py3k: Rewrite dictionary support for Tiff ImageFileDictionary
...
This commit brings in the collections.MutableMapping mixin to provide full
dictionary support for ImageFileDictionary.
2013-01-10 08:46:43 -06:00
Brian Crowell
09f1081c95
py3k: Fix up uses of dictionary views, ranges, and has_key()
...
y.has_key(x) is gone (use x in y), and keys(), values(), items(), and
range() all return views.
Some iterables needed to be packed into lists, either because the code
expected a list (such as "range(256) * 3") or because the original
collection was being modified (automatic global declarations).
The Tiff ImageFileDictionary is a special case and will be dealt with in
another commit.
2013-01-10 08:46:42 -06:00
Brian Crowell
78575798d7
py3k: Update exception usage to modern syntax
2013-01-10 08:46:33 -06:00
Brian Crowell
37f22ebfcd
py3k: Use string methods instead of string module
...
First, we go for the obvious stuff. The string module methods are gone in
3.0, so we translate them to the appropriate methods on the string class.
2013-01-10 08:42:49 -06:00
Alex Clark
9a640e3157
Forking PIL
2010-07-30 22:52:47 -04:00