Commit Graph

154 Commits

Author SHA1 Message Date
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
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
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
Marcus Brinkmann
92c7337df0 Add TIFF save_all writer. 2016-09-29 17:05:33 +02:00
Antony Lee
7e9c944caf Fix saving originally missing TIFF tags.
Don't incorrectly set the tag type to None if it was originally missing.
2016-09-19 00:31:17 -07:00
homm
c2b4ff5fa4 skip empty values in ImageFileDirectory 2016-07-12 18:09:02 +03:00
wiredfool
c50503a14d API change/revert: Bytes should be returned as a single byte string, not a tuple of integers 2016-06-26 12:06:56 +01:00
Andrew Murray
b1a528bf10 Changed variable names to avoid redefining builtins 2016-05-10 22:31:36 +10:00
wiredfool
14f3b45f46 Merge pull request #1789 from zwhfly/tiff
Add Support for 2/4 bpp Tiff Grayscale Images
2016-04-03 12:07:48 -07:00
Andrew Murray
26bf1937c7 Added warning for deprecated as_dict method 2016-04-03 23:41:28 +10:00
Andrew Murray
677b958a7f Health fixes 2016-04-01 21:49:30 +11:00
zwhfly
aa0636d811 Add Tiff Encodings for 2/4 Bit Grayscale Images
Added decoding support for 2/4 bit grayscale tiff images, including inverted and/or bit-order-reversed formats.
2016-03-29 20:19:22 +08:00
zwhfly
46134f78d2 Rearrange Tiff Encodings List
Refined the order of items in the dict 'OPEN_INFO'.
2016-03-29 20:19:21 +08:00
Andrew Murray
886a7cf206 Different TIFF frames may have different compression 2016-03-27 22:18:39 +11:00
wiredfool
9fa6634f4d Partial fix for #1597
Haven't excercized all of the metadata that we're allowing yet,
and there's clearly still something up with Arrays, as one
of them is still crashing and making it impossible to save a
palette with a libtiff image.
2015-12-30 07:54:14 -08:00
wiredfool
80ab12bdc0 Lookup tag info in both _v2(info) and original(name only) dicts, delegate to lookup 2015-12-29 22:02:11 +00:00
wiredfool
3ac9396e8c Write round trip for rationals, including nan value 2015-12-29 22:00:36 +00:00
wiredfool
bd05d66c7e Python 3.4 support for the IFDRational 2015-12-29 21:33:10 +00:00
wiredfool
79608bd762 Make numerator/denominator read only 2015-12-27 10:21:32 +00:00
wiredfool
722ee8240b Inherit from Rational instead of Fraction, some basic tests. Fixes Py2.6 2015-12-27 10:21:32 +00:00
wiredfool
f9fe4da8b2 Make IFDRational hashable 2015-12-27 10:21:32 +00:00
wiredfool
3bbb9e676f value based equivalence 2015-12-27 10:21:32 +00:00
wiredfool
deecbcd3a3 Added a rational class for TiffIFD that allows for 0/0 2015-12-27 10:21:31 +00:00
wiredfool
fe35a18db0 Possible fix for issue #1561, let rows per strip through, but block the other two 2015-12-14 20:25:00 +00:00
wiredfool
7206be535e Flatten sampleformat to initial value, fixes #1466 2015-10-03 22:57:44 +01:00
wiredfool
4a8a983e6a Merge pull request #1398 from mrTable/master
Check flush method existence for file-like object
2015-10-01 07:54:26 -07:00
wiredfool
ca929bdfc0 Merge pull request #1435 from radarhere/tiff
Minor Tiff formatting changes
2015-09-29 15:43:40 +01:00
Andrew Murray
1306f7d6af Updated URLs for redirects 2015-09-28 21:53:25 +10:00
Andrew Murray
d097d44fa1 Updated documentation and removed deprecated comment 2015-09-23 22:14:06 +10:00
Andrew Murray
a5bac62bc3 Flake8 fixes 2015-09-23 20:46:01 +10:00
wiredfool
e4f9b697c6 Doc syntax error 2015-09-14 07:33:07 -07:00
wiredfool
1614f2fdb5 Documentation for IFD Changes 2015-09-14 07:01:57 -07:00
wiredfool
4adbc9735c Reorder load_* parameters to pass master tests 2015-09-14 04:35:09 -07:00
wiredfool
05348d4f8f Reenabling failing/crashing tests, with fixes 2015-09-14 03:03:24 -07:00
wiredfool
b56d5ca403 Added indicator for multipage tiffs 2015-09-13 16:19:40 +01:00
wiredfool
4596df45c1 Versioned interface for TiffTags 2015-09-13 15:15:13 +01:00
wiredfool
ca24a44100 Rewrap intelligently 2015-09-13 14:16:12 +01:00
wiredfool
e1236d702d v1/v2 tag storage in IFD, legacy_api as a parameter to _saveitem, save both _tags_v* when saving as legacy api 2015-09-13 14:01:01 +01:00
wiredfool
a9396ab412 convert load_* functions to pure functions with no state 2015-09-13 11:07:43 +01:00
wiredfool
156972874d missed a set of _v2 versioning 2015-09-13 10:53:47 +01:00
wiredfool
b1fdff4034 In a twisty maze of bytes, text and arbitrary metadata, py2 and py3. New IFD is putting textdata in type7 metadata and returning bytes, old one put it in type 2 string and returned a string. This may be an issue 2015-09-11 23:44:23 +01:00
wiredfool
5f9fff0215 Restoring bad exif handling 2015-09-11 22:39:37 +01:00
wiredfool
47a963c2a4 Legacy/versioned interface 2015-09-11 22:39:37 +01:00
wiredfool
9bb4c51629 module level default api level 2015-09-11 22:39:37 +01:00
wiredfool
0c942911d9 fixed the rebase 2015-09-11 22:39:37 +01:00
Antony Lee
1b9b3749ca Reorder OPEN_INFO to cover both endiannesses.
By interleaving little and big-endian entries we make sure entries
exist for both cases.  Some additional entries created when the
big-endian was missing.  I am not sure of what entry to create for the
big-endian, 4-bit case (what is the order of the two entries within the
byte?).
2015-09-11 22:39:37 +01:00
Antony Lee
6309bfe921 Support too long ExtraSamples.
Some programs generate SamplesPerPixel entries in ExtraSamples instead
of SamplesPerPixel-3, cf. #1227.  This is a stopgap measure to support
them.  One could also decide to add generic code to always support
having SamplesPerPixel entries (by dropping the first 3).
2015-09-11 22:39:37 +01:00
Antony Lee
93abbd0caa Restore legacy TIFF API.
To have the old API that always returns tuples, and fractions as pairs,
set the `legacy_api` attribute of the IFD to True.

This should alleviate concerns about backwards compatibility.
2015-09-11 22:39:37 +01:00
Antony Lee
d5b46dce96 Fix MPO support, and Python2.6 support. 2015-09-11 22:34:50 +01:00