Commit graph

143 commits

Author SHA1 Message Date
8d7996709a
release version 0.3.3 2019-01-07 10:44:24 +01:00
462e1c23d5
src/img2pdf.py: reformat code with black (https://github.com/ambv/black) 2018-12-25 12:30:10 +01:00
Alexander Schlarb
a282692ac1
Respect EXIF rotation tag of image (closes: !2)
Read the EXIF information from every input image and use it to correctly set
the page rotation of the resulting PDF document page.
2018-12-25 01:46:09 +01:00
Georg Sauthoff
2faeb2005d
Decompress stream to account for different possible encodings (closes: #51)
Recompressing the image stream makes the comparison robust against output
preserving changes in the zlib compress output bitstream
(e.g. between different zlib implementations/versions/releases).
Without this, some img2pdf 0.3.2 tests fail on Fedora 29/aarch64.
See also:
josch/img2pdf#51
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/R7GD4L5Z6HELCDAL2RDESWR2F3ZXHWVX/
2018-12-24 18:13:49 +01:00
0639dbd47c
src/tests/__init__.py: fix CommandLineTests on python3 2018-12-24 18:04:40 +01:00
78183c642b
allow wrapping img2pdf main() in contextlib.redirect_stdout() 2018-12-24 18:03:52 +01:00
b39e755424
add legal and tabloid paper formats (closes: #52) 2018-12-24 18:02:41 +01:00
josch
4cebd9f15d Merge branch 'agroszer-py2' into 'master'
fixing a slew of python 2 issues

See merge request !4
2018-12-11 17:16:50 +00:00
68ca35f39e
release version 0.3.2 2018-11-20 16:37:23 +01:00
42f8ac54a8
Allow CCITT Group4 input without rows-per-strip (closes: #48) 2018-11-20 16:30:14 +01:00
50a3109c43
src/img2pdf.py: do not overwrite imgformat variable in loop as this will then affect later loop iterations and we need to retain its original value 2018-08-20 10:27:27 +02:00
03bdc33053
src/img2pdf.py: be more explicit when embedding group4 from TIFF 2018-08-20 10:26:39 +02:00
b758b54ce8
src/img2pdf.py: Disallow TIFF input with more than 8 bits per sample because PIL will silently convert it to 8 bits per sample 2018-08-20 10:25:39 +02:00
a2b969640a
src/img2pdf.py: assign the default dpi to tiff images where PIL returned its default of (1,1) 2018-08-20 10:24:31 +02:00
8961c78dbf
src/img2pdf.py: add commented-out debugging option for PIL's TiffImagePlugin 2018-08-20 10:23:23 +02:00
6c44d8cea6
src/img2pdf.py: add more rationale behind palette encoding 2018-08-20 10:21:18 +02:00
c0ed810036
src/img2pdf.py: work around PIL not reporting a colorspace for 16bit grayscale PNGs 2018-08-17 12:57:46 +02:00
ccca845606
src/img2pdf.py: Read bits per sample from PNG to support PNG images with 1, 2, 4 or 16 bits per sample 2018-08-17 12:55:55 +02:00
53685934f9
src/img2pdf.py: also reject palette images with transparency 2018-08-17 07:27:15 +02:00
ba5a9a1dfc
Allow multipage CCITT group 4 TIFF images 2018-08-16 00:23:18 +02:00
a628ed22f9
Add more debugging output 2018-08-16 00:11:07 +02:00
fbcaca5e6b
big endian encoded TIFF files may have FillOrder set to lsb-to-msb and must have the bits of each byte reversed 2018-08-16 00:10:46 +02:00
a9f4c9b665
release version 0.3.1 2018-08-04 15:44:45 +02:00
198c98a5f9
make pep8 compliant 2018-08-01 22:28:44 +02:00
f5d8d86dff
Also do not re-encode CCITT Group 4 encoded TIFF images
Add additional property of input images: inverted

closes: #47
2018-08-01 22:12:40 +02:00
b3fb2de5f6
src/img2pdf.py: fix spelling in --help output 2018-07-19 12:05:27 +02:00
2ad0c036b2
src/tests/input/mono.tif: set dpi to 72 2018-07-18 14:08:04 +02:00
1aa71e3746
release version 0.3.0 2018-07-18 11:30:43 +02:00
75c43de09d
Create a new PIL image before saving as TIFF to prevent libtiff errors
closes: #46
2018-07-18 01:58:03 +02:00
eec1a25a92
add test case for ccittfaxdecode 2018-07-18 01:55:48 +02:00
7de174f4b5
CCITTFaxDecode filter must be in an array 2018-07-18 01:55:48 +02:00
48d5b4d7af
CCITTGroup4 must return empty palette 2018-07-18 00:57:43 +02:00
d931f02709
src/tests/__init__.py: handle PNG input images properly 2018-07-18 00:05:15 +02:00
b99fae1380
src/tests/__init__.py: don't test for color space now that we support palette PNGs 2018-07-18 00:04:30 +02:00
ac9ba1d0f6
handle monochrome png properly 2018-07-18 00:03:31 +02:00
eaf9de23c9
Filter must not be array for PNG output, so never make it an array 2018-07-17 23:59:55 +02:00
2a33ff275d
adapt test output to new handling of png input 2018-07-17 23:56:01 +02:00
ebd8d911bb
add test grayscale input png src/tests/input/gray.png 2018-07-17 16:57:44 +02:00
e7755f0a87
src/tests/input/normal.png: remove alpha channel 2018-07-17 16:57:44 +02:00
47a1e0c81e
src/img2pdf.py: do not use PNG encoding for CMYK input 2018-07-17 16:57:44 +02:00
3142824bab
src/tests/__init__.py: do not test animation.gif with pdfrw because it doesn't support hexadecimal palette data 2018-07-17 16:57:44 +02:00
84ce9bbd9c
src/img2pdf.py: do not allow transparency 2018-07-17 16:57:44 +02:00
90293204b2
src/img2pdf.py: use logging.warning because warn() is deprecated 2018-07-17 16:07:01 +02:00
ade5768d72
src/img2pdf.py: expand error message about alpha channel 2018-03-27 10:39:24 +02:00
920506b867
Reflect the fact that we now use PNG compression in the --help output 2018-03-24 19:53:41 +01:00
e78dd80451
Add option --pillow-limit-break to force Pillow to accept large input images 2018-03-24 19:47:03 +01:00
d9a6c9db03
Interlaced PNGs cannot be directly embedded but have to be re-encoded 2018-03-24 18:59:02 +01:00
7244d2c6ed
Disallow input images with alpha channel as it cannot be preserved in the PDF and would thus make img2pdf not lossless 2018-03-24 18:55:14 +01:00
1d9a25dfd2
Proof of concept of using PDF DecodeParms for storing pixel data with PNG compression 2018-03-15 11:31:36 +01:00
9836b976d3 src/img2pdf.py: handle Pillow returning a DPI of zero (closes: #36) 2017-10-18 10:34:59 +02:00