Commit graph

380 commits

Author SHA1 Message Date
2eabebb513
use context manager instead of manually closing BytesIO and PIL.Image 2021-04-28 15:37:44 +02:00
02c85a50ad
move closing code into its own function 2021-04-14 08:25:18 +02:00
c97ce34023
raise exception if border is larger than page size 2021-04-13 13:10:57 +02:00
81325d3998
fix page border computation (closes: #92) 2021-04-13 13:10:34 +02:00
8d2ae0f64e
fix reading from stdin 2021-04-13 08:12:33 +02:00
d29c596fe7
add support for MPO images (closes: #93) 2021-04-12 22:57:51 +02:00
cd1088a5a9
format with black 2021-04-12 14:13:34 +02:00
2a8779295f
write out pil format as debug message 2021-04-12 14:13:19 +02:00
6cd819d28f
do not use root logger for logging 2021-04-12 14:12:14 +02:00
c48e1dbb1e
use sys.exit() as exit might not be defined under windows -- see #94 2021-04-12 06:52:27 +02:00
d08d8c5be9
src/img2pdf_test.py: compare icc images as non-exact 2021-04-12 06:27:36 +02:00
0e4f0047b2
src/img2pdf_test.py: refactor comparison code to remove code duplication 2021-04-12 06:27:36 +02:00
0ce25d08c2
src/img2pdf_test.py: also draw RGB letters to identify colors 2021-04-12 06:27:36 +02:00
c5fd43e851
src/img2pdf_test.py: numpy.float got deprecated in NumPy 1.20 2021-04-12 06:16:05 +02:00
17fd73aed8
.travis.yml: set osx_image: xcode12.2 or pikepdf import fails 2021-04-07 12:23:40 +02:00
454d4e7775
src/img2pdf_test.py: distinguish between depth and baseDepth for tiff_rgb12 and tiff_rgb13 2021-04-07 12:23:01 +02:00
cb2243fd10
src/img2pdf_test.py: Pillow >= 8.2.0 only uses half the palette size 2021-04-07 12:23:01 +02:00
129bd15b43
tox.ini: run pytest with -vv to show full diff 2021-04-07 12:22:53 +02:00
b8bfa98218
src/img2pdf_test.py: cater for endianess->endianness in 1.0 output format 2021-04-07 08:06:59 +02:00
b5f0912e13
README.md: minimize scope of opened file in examples
Prompted-by: Joao Rodrigo Windisch Olenscki
2021-03-09 17:35:27 +01:00
213a6af41f
tox.ini: add py39 2020-10-31 08:47:01 +01:00
9290cb4a10
.travis.yml: bump windows python version to 3.9 2020-10-31 08:42:25 +01:00
Paul Ingemi
505344f83e
Add Windows support for paths containing wildcards "*" and "?"
Img2pdf accepts paths containing wildcards such as *.jpg to efficiently refer
to multiple input files that match the wildcard expression. Under POSIX
environments the command line shell is expected to perform this expansion,
however Windows requires the command line utility itself to expand the
wildcard expression.

Ideally this would be performed by argparse as described in this draft PEP:
https://mail.python.org/pipermail/python-ideas/2015-August/035244.html

Since argparse doesn't do it, this commit performs expansion directly.

Some implementation notes:
 - Wildcard characters "*" and "?" are not valid in Windows filenames
 - Code doesn't support bracket wildcards such as [0-3] on Windows since
   they are valid filename characters
 - Due to expansion, the images list collected by argparse may contain
   sub-lists. Code uses chain.from_iterable to create a flat list.
 - Paths that refer to non-existant files raise an error message, while
   wildcards that match no files are silently ignored.
2020-10-05 10:28:08 +02:00
Anna Levenberg
32b4ed1f43
Add check for empty list 2020-09-22 16:23:17 +02:00
b2c3b641db
fix typo: complient -> compliant 2020-08-27 02:48:26 +02:00
c4fb1d886f
remove magick.py and test.sh 2020-08-27 00:56:32 +02:00
11907242a5
src/img2pdf_test.py: we create our own channel-switching ICC profile 2020-08-09 22:03:47 +02:00
692b54ac67
release version 0.4.0 2020-08-07 08:05:27 +02:00
cc79581e2c
.travis.yml: install icc-profiles-free 2020-08-07 00:41:42 +02:00
c7db805dee
don't use /usr/share/color/icc/ghostscript/srgb.icc but /usr/share/color/icc/sRGB.icc because the former converts from sRGB to CIE LAB and PDF/A requires a profile from CIE LAB to sRGB (closes: #78) 2020-08-07 00:20:44 +02:00
f0b57985ee
first stab at embedding ICC profiles 2020-08-07 00:13:53 +02:00
1ba02bf838
src/img2pdf_test.py: use json output instead of -verbose everywhere (the former is for machines, the latter for human consumption and can change without notice) 2020-08-06 20:25:20 +02:00
042aac71eb
reformat with black 2020-08-05 08:13:52 +02:00
7da0a00ef3
src/img2pdf_test.py: replace jpg_img check by json output 2020-08-05 08:11:39 +02:00
67dca425d1
.travis.yml: remove jpeg2000 check 2020-08-05 01:15:51 +02:00
86fddab622
src/img2pdf_test.py: check for JP2 support 2020-08-05 01:12:59 +02:00
c229e20547
.travis.yml: test for jpeg2000 support 2020-08-05 00:57:30 +02:00
a53fed5d17
.travis.yml: really switch to focal 2020-08-05 00:50:45 +02:00
788102ee05
.travis.yml: use focal 2020-08-05 00:48:15 +02:00
d92790ad26
try ghostscript version shaningans 2020-08-05 00:10:00 +02:00
f0e7e8daaf
.travis.yml: try xenial 2020-08-05 00:00:00 +02:00
9bd41dba1e
src/img2pdf_test.py: check that psnr is not zero 2020-08-04 23:54:11 +02:00
6c742be642
src/img2pdf_test.py: cater for json output of imagemagick before 6.9.9.34 2020-08-04 23:29:42 +02:00
7ccd987d6d
.travis.yml: use bionic instead of xenial 2020-08-04 13:15:43 +02:00
c506cf0b8d
try to use json output instead of identify -verbose 2020-08-04 13:07:40 +02:00
fbb51d9083
tighten minimum imagemagick version for quantum:polarity=min-is-black 2020-08-04 09:30:03 +02:00
593aeb5d2d
appveyor.yml: install pyinstaller to create an exe 2020-08-04 08:03:34 +02:00
c62ed4d691
appveyor.yml: install wheel for bdist_wheel 2020-08-04 07:54:18 +02:00
2493af173c
tox.ini: also remove support for py34 (fails to compile pikepdf) 2020-08-04 07:45:39 +02:00
a39beb5c5e
tox.ini: remove jython and pypy 2020-08-03 23:27:04 +02:00