Commit Graph

340 Commits (55d589a548cd881c3fe5a94a1c7e2db6a88ae8ea)
 

Author SHA1 Message Date
Johannes 'josch' Schauer a628ed22f9
Add more debugging output 6 years ago
Johannes 'josch' Schauer fbcaca5e6b
big endian encoded TIFF files may have FillOrder set to lsb-to-msb and must have the bits of each byte reversed 6 years ago
Johannes 'josch' Schauer a9f4c9b665
release version 0.3.1 6 years ago
Johannes 'josch' Schauer 002c9c4466
CHANGES.rst: add release dates 6 years ago
Johannes 'josch' Schauer 198c98a5f9
make pep8 compliant 6 years ago
Johannes 'josch' Schauer 9395b6fbbe
README.md: comparison to other software 6 years ago
Johannes 'josch' Schauer f5d8d86dff
Also do not re-encode CCITT Group 4 encoded TIFF images
Add additional property of input images: inverted

closes: #47
6 years ago
Johannes 'josch' Schauer 36c5034db5
Distribute LICENSE file in release tarball 6 years ago
Jakub Wilk 7131b3d6ee
Use printf(1) instead of non-portable "/bin/echo -ne" 6 years ago
Johannes 'josch' Schauer b3fb2de5f6
src/img2pdf.py: fix spelling in --help output 6 years ago
Johannes 'josch' Schauer 4c5faf408f
README.md: restructure 6 years ago
Johannes 'josch' Schauer 2ad0c036b2
src/tests/input/mono.tif: set dpi to 72 6 years ago
Johannes 'josch' Schauer 1aa71e3746
release version 0.3.0 6 years ago
Johannes 'josch' Schauer 75c43de09d
Create a new PIL image before saving as TIFF to prevent libtiff errors
closes: #46
6 years ago
Johannes 'josch' Schauer eec1a25a92
add test case for ccittfaxdecode 6 years ago
Johannes 'josch' Schauer 7de174f4b5
CCITTFaxDecode filter must be in an array 6 years ago
Johannes 'josch' Schauer 48d5b4d7af
CCITTGroup4 must return empty palette 6 years ago
Johannes 'josch' Schauer ce68cb21d7
Add LICENSE file
closes: #43
6 years ago
Johannes 'josch' Schauer d931f02709
src/tests/__init__.py: handle PNG input images properly 6 years ago
Johannes 'josch' Schauer b99fae1380
src/tests/__init__.py: don't test for color space now that we support palette PNGs 6 years ago
Johannes 'josch' Schauer ac9ba1d0f6
handle monochrome png properly 6 years ago
Johannes 'josch' Schauer eaf9de23c9
Filter must not be array for PNG output, so never make it an array 6 years ago
Johannes 'josch' Schauer 2a33ff275d
adapt test output to new handling of png input 6 years ago
Johannes 'josch' Schauer ebd8d911bb
add test grayscale input png src/tests/input/gray.png 6 years ago
Johannes 'josch' Schauer e7755f0a87
src/tests/input/normal.png: remove alpha channel 6 years ago
Johannes 'josch' Schauer 47a1e0c81e
src/img2pdf.py: do not use PNG encoding for CMYK input 6 years ago
Johannes 'josch' Schauer 3142824bab
src/tests/__init__.py: do not test animation.gif with pdfrw because it doesn't support hexadecimal palette data 6 years ago
Johannes 'josch' Schauer 84ce9bbd9c
src/img2pdf.py: do not allow transparency 6 years ago
Johannes 'josch' Schauer 90293204b2
src/img2pdf.py: use logging.warning because warn() is deprecated 6 years ago
Johannes 'josch' Schauer d09aa76c9e
README.md: remove ambiguous section about lossless compression 6 years ago
Johannes 'josch' Schauer ade5768d72
src/img2pdf.py: expand error message about alpha channel 6 years ago
Johannes 'josch' Schauer 920506b867
Reflect the fact that we now use PNG compression in the --help output 6 years ago
Johannes 'josch' Schauer e78dd80451
Add option --pillow-limit-break to force Pillow to accept large input images 6 years ago
Johannes 'josch' Schauer d9a6c9db03
Interlaced PNGs cannot be directly embedded but have to be re-encoded 6 years ago
Johannes 'josch' Schauer 7244d2c6ed
Disallow input images with alpha channel as it cannot be preserved in the PDF and would thus make img2pdf not lossless 6 years ago
Johannes 'josch' Schauer 1d9a25dfd2
Proof of concept of using PDF DecodeParms for storing pixel data with PNG compression 6 years ago
Johannes 'josch' Schauer 9836b976d3 src/img2pdf.py: handle Pillow returning a DPI of zero (closes: #36) 7 years ago
James R. Barlow a8269391e9 Implement /UserUnit scaling to support oversized PDFs
The original PDF specification supported a maximum of 200x200" pages or
14400 PDF units. In PDF 1.6 rather than remove this limitation, Adobe
added the /UserUnit field for pages, which allows one to specify the
scaling that should be applied for user-facing numbers, while keeping
the internal limit of 14400 units.

Many real-world designs are larger than 200" in one direction. One
example is tractor feed or rolled paper which may be easier to scan in
one continuous run rather than segment into pages.

/UserUnit is independent of the pixel size and resolution of the image.

/UserUnit can also indicate very small page sizes but this is not
implemented here.
7 years ago
James R. Barlow b54617de19 Fix rawdata[:12] bytes/str comparison 7 years ago
Adam Groszer 0e76a5bd97 fixing a slew of python 2 issues 7 years ago
Johannes 'josch' Schauer 725462462b release version 0.2.4 7 years ago
Stephan Richter f626d7860f Produce port that is fully API compatible. 7 years ago
Stephan Richter 06560cd0d4 It is easy enough to create a separate class for the Py2 version. 7 years ago
Stephan Richter 719928f5f5 Declare file encoding, since it contains some non-ascii chars. 7 years ago
Stephan Richter b25098c3f0 Python 2 does not automatically convert integers to floats, so we have to be a bit more explicit. 7 years ago
Stephan Richter 18d637ea34 Make sure we are using the correct IO class in Python 2. 7 years ago
Stephan Richter 162721b88e Properly setup additional Python 2.7 and PyPy support. Note that Py2 does not have enum, but thankfully somone ported it already. 7 years ago
Stephan Richter 2455ba6e62 Test all Python versions using tox. 7 years ago
Johannes 'josch' Schauer 45cea44fac README.md: use pip3 instead of pip 7 years ago
Johannes 'josch' Schauer fe86469c6c README.md: Improve wording 7 years ago