Commit graph

68 commits

Author SHA1 Message Date
James R. Barlow
95f84f97bc Implement automatic monochrome CCITT Group4 encoding via Pillow/libtiff 2016-07-22 07:09:07 +02:00
Jakub Wilk
0fe30a62d9 fix typos 2016-06-10 17:02:38 +01:00
e05d2992e0 src/tests/__init__.py: adapt testcases for last commit 2016-05-26 18:11:42 +02:00
d78b2cbdbc Fix bug where horizontal and vertical borders where switched when page size was also given. Thanks Erik./a.out| sox -c 1 -e unsigned-integer -r 8000 -t u8 - -d --buffer 32 Closes #30 2016-05-26 08:19:34 +02:00
Andrey Gursky
c704e657cc update version according to release 2016-05-11 21:39:21 +02:00
c158585618 only use jp2 to parse jpeg2000 if PIL doesn't support jpeg2000 2016-02-17 20:31:46 +01:00
e5b0ffee6c read horizontal and vertical dpi from jpeg2000 files 2016-02-17 20:30:58 +01:00
ef9eac7326 instead of storing a limited list of supported colorspaces and imageformats, store the items requiring special treatment but do not abort if a value other than the listed ones is supported by PIL 2016-02-17 18:47:02 +01:00
00c73a6691 make the separating x optional when specifying the width without the height 2016-02-17 18:16:17 +01:00
86552a78dc fix --fit=exact if one value is missing 2016-02-17 18:11:11 +01:00
ad528d4feb restore feature that it is allowed to only specify width or height 2016-02-17 17:51:57 +01:00
3e8894c7da change MonochromeJpegError to JpegColorspaceError and add check for jpegs with alpha channel 2016-02-17 00:37:51 +01:00
d9b2550ceb support for palette images for better GIF support 2016-02-17 00:37:51 +01:00
edba669000 support from multi-frame images like multipage TIFF and animated GIF 2016-02-17 00:37:46 +01:00
dbed55655a fix JPEG2000 handling after move to Python3 2016-02-17 00:28:19 +01:00
27015c1a6e fix testsuite after exception renaming 2016-02-17 00:26:45 +01:00
c6d69b231b when verbose logging is enabled, print a traceback of possibly raised exceptions 2016-02-14 18:55:27 +01:00
b6e969d267 input images can now be file like objects, binary strings with the image content or filenames 2016-02-14 18:54:59 +01:00
cc59fbc3e4 raise exceptions instead of doing an exit() 2016-02-13 09:31:33 +01:00
James R. Barlow
900346d430 src/img2pdf.py: add get_fixed_dpi_layout_fun 2016-02-13 09:01:08 +01:00
James R. Barlow
a7dba2894f Put version string in /Producer too 2016-02-13 09:01:03 +01:00
James R. Barlow
11affb6264 allow writing the pdf to a file-like object instead of storing everything in memory 2016-02-13 09:00:53 +01:00
31a2ce231f cap the maximum page size at 200 dpi which is the maximum supported by PDF 2016-02-10 09:44:12 +01:00
7160f1628d fix parsing of dpi and % units 2016-02-10 09:32:38 +01:00
917c173bfd set img2pdf as default /producer value 2016-02-10 07:25:55 +01:00
josch
251238b410 release version 0.2.0 - big rewrite and lots of new features
- now Python3 only
 - pep8 compliant code
 - update my email to josch@mister-muffin.de
 - move from github to gitlab.mister-muffin.de/josch/img2pdf
 - use logging module
 - add extensive test suite
 - ability to read from standard input
 - pdf writer:
      - make more compatible with the interface of pdfrw module
      - print floats which equal to their integer conversion as integer
      - do not print trailing zeroes for floating point numbers
      - print more linebreaks
      - add binary string at beginning of PDF to indicate that the PDF
        contains binary data
      - handle datetime and unicode strings by using utf-16-be encoding
 - new options (see --help for more details):
      - --without-pdfrw
      - --imgsize
      - --border
      - --fit
      - --auto-orient
      - --viewer-panes
      - --viewer-initial-page
      - --viewer-magnification
      - --viewer-page-layout
      - --viewer-fit-window
      - --viewer-center-window
      - --viewer-fullscreen
 - remove short command line options for metadata arguments
2016-02-02 19:51:27 +01:00
josch
33ee44e50d restore python3 compatibility 2015-04-12 20:37:57 +02:00
josch
18a41fc8df avoid catch-all except 2015-03-21 10:01:56 +01:00
josch
4968d58621 fix typo 2015-03-21 10:01:56 +01:00
josch
f3674907d6 store times in UTC and understand YYYY-MM-DD, YYYY-MM-DDTHH:MM, YYYY-MM-DDTHH:MM:SS and everything understood by dateutil module and date --date 2015-03-21 10:01:56 +01:00
josch
81647dd06f use common variable for datetime format string 2015-03-21 10:01:56 +01:00
josch
5a1f0701a3 to allow non-ascii characters, encode strings as utf-16-be (big endian) and escape backslashes and parenthesis 2015-03-21 10:01:56 +01:00
josch
317a0ee7f2 do not encode as utf8 as pdf is ascii, add safer handling across py2/py3 2015-03-21 10:01:56 +01:00
xiota
592cdc1cdb Changes to pdf page size handling
Changes to `valid_size()`
* accept common page sizes, such as letter and a4.
* parse dimensions of format: AuxBv#, where A is width, u is units, B is height, v is units, # are options.
* accept units: in, cm, mm, pt

Changes to `convert()`:
* resize pages based on dpi calculations
* default resize images into page size (like default resize in imagemagick)
* implement exact resizing (ignore dpi; equiv to ! in imagemagick)

Created `get_ndpi()`:
* provides dpi for page resizing
* implement fill resizing (equiv to ^ in imagemagick)

Other changes:
* default dpi in global variable
2015-03-20 06:54:11 -07:00
josch
36fb9173fe add --version option and __version__ module variable and use ~git version suffix 2015-03-07 03:20:14 +01:00
josch
d5fc324b7b cater for python-pil versions without close() attribute (the 3rd fix) 2015-03-07 03:02:00 +01:00
josch
b90e385efe cater for python-pil versions without close() attribute (the 2nd fix) 2015-03-07 03:01:02 +01:00
josch
486361e716 cater for python-pil versions without close() attribute 2015-03-07 02:59:12 +01:00
josch
9389d81a14 fix testsuite after commit 2cb8e55f broke it - thanks Jakub Wilk! 2015-03-06 23:55:32 +01:00
Jakub Wilk
5d7975164d remove unused imports 2015-03-06 22:51:58 +01:00
josch
53968c31e0 remove -x and -y and replace by -s/--pagesize. Change short option for --subject to -S. 2015-03-06 19:29:24 +01:00
josch
ad8567d352 add more details to code comment 2015-03-06 19:19:21 +01:00
josch
2cb8e55f1d output pdf image size with four significant digits 2015-03-06 19:16:36 +01:00
josch
aabd104114 update tests handling 2015-02-16 19:23:21 +01:00
josch
4d005c8443 write to sys.stdout.buffer and fall back to sys.stdout 2015-02-16 19:20:06 +01:00
josch
e810f3baf4 close cStringIO and PIL.Image 2015-02-16 19:19:49 +01:00
josch
90e954dc0a make sure dpi are read as integers and divided using float division 2015-02-16 19:18:46 +01:00
josch
8887fe21f4 print floats with four decimal places 2015-02-16 19:09:34 +01:00
josch
9ff6ebec04 pass on --nodate option 2015-02-16 14:49:53 +01:00
josch
3fdd824201 support file objects as input 2015-02-16 14:49:29 +01:00