Commit graph

412 commits

Author SHA1 Message Date
b25429a4c1
src/img2pdf_test.py: add tests for timestamps 2023-06-11 08:01:36 +02:00
c703e9df06
fix date(1) based timestamp parser 2023-06-11 07:48:23 +02:00
79e9985f35
src/img2pdf_test.py: black 2023-06-11 07:47:22 +02:00
cb2644c34f
do not include thumbnails in the output by default unless --include-thumbnails is used
This is relevant for the MPO format which otherwise would result in PDF
files containing the same image in different sizes multiple times. With
this change, the default is to only have a single page containing the
full MPO. This means that extracting that MPO also gets the thumbnails
back.

With the --include-thumbnails option, each frame gets stored on its own
page as it is done for multi-frame GIF, for example.

Closes: #135
2023-06-11 07:31:07 +02:00
81502f21af Convert creation/modification dates to UTC (fixes #155)
Ensure that timezones are correctly interpreted in the input by calling
`.astimezone()` as appropriate on datetime objects, and store the
resulting date fields as UTC.

One could argue that datetimes in the local timezone be stored in the
PDF, but then the date string handling becomes more complicated; the PDF
and XMP date specs both use the `Z` suffix to indicate UTC time, but
other +/- offsets require different syntax between the two specs.
2023-06-10 17:53:03 -07:00
0cbcb8fa12
avoid converting palette PNG with alpha to RGB (closes: #158) 2023-06-08 08:54:37 +02:00
e9e04b6dd9
extend comments around dropping ICC profile stored by GIMP for bilevel input 2023-06-08 08:53:22 +02:00
fc059ee471
use quotes around caret in examples for windows users
Closes: #167
2023-06-08 07:14:17 +02:00
25466113e9
another small fixup for the last commit 2023-05-30 08:06:36 +02:00
7405635b72
only check whether icc profile can be dropped if there is any 2023-05-30 07:10:32 +02:00
aea472101b
strip off RGB color profile from bilevel TIFF images produced by gimp (closes: #164) 2023-05-30 06:25:26 +02:00
7fa67bb337
demote print() to logger.debug() 2023-05-29 09:25:21 +02:00
7d40569aa1
Inform the user what is happening when running without any arguments and suggest using --help to get the help text (closes: #156) 2023-05-28 15:25:28 +02:00
83f9c32328
appveyor.yml: try out --console --nowindowed 2023-05-28 15:25:28 +02:00
be8369373f
pass deterministic_id=True to writer.save() for pikepdf >= 6.2.0
Closes: #150
2022-10-16 14:13:35 +02:00
10c6901fa3
src/img2pdf_test.py: do not test the depth attribute and rely on baseDepth
closes: #119
2022-09-23 23:10:53 +02:00
57d7e07e6b
Support imagemagick 7.1.0-48
- the output of -metric PSNR changed
 - CMYK output can now be exactly compared

closes: #148
2022-09-15 04:36:16 +02:00
272fe0433f allow pathlib.Path objects by allowing objects implementing read_bytes function 2022-07-02 21:19:34 +02:00
ef7b9e739d add miff tests for cmyk8 and rgb8 2022-07-02 20:39:18 +02:00
af6fe27d53 avoid match/case for now until python 3.10 is available on more platforms 2022-06-28 14:22:14 +01:00
bad6fcae39 support for MIFF which allows 16 bit CMYK images
closes: #144
2022-06-27 13:22:07 +01:00
d9b90499f3
README.md: compare to econvert (closes: #143) 2022-05-18 13:08:05 +02:00
edb0d29a14
README.md: fix link 2022-05-13 21:27:12 +02:00
bb3e8b0098
README.md: document that img2pdf.exe can now be downloaded via release 2022-05-13 21:25:37 +02:00
f454ebc6a6
release version 0.4.4 2022-04-07 22:40:36 +02:00
c3db273e23
Remove outdated readme entry concerning JP2 colorspace
If I understood the code in `jp2.py` correctly, this should now work.
Moreover, Pillow should usually be able to open JP2 files, so `jp2.py` is only a fallback.
2022-04-07 22:08:41 +02:00
87afabd3cf
add .mailmap 2022-04-07 22:08:18 +02:00
homocomputeris
5045282cc2
Add B and JB paper sizes 2022-04-07 22:02:16 +02:00
fb4b96452a
reformat with black 2022-04-07 21:58:34 +02:00
c553e169a4
use TiffImagePlugin.STRIP_SIZE for Pillow >= 8.4.0 2022-04-07 21:58:23 +02:00
d9345ac767
set GifImagePlugin.LOADING_STRATEGY to RGB_AFTER_DIFFERENT_PALETTE_ONLY in Pillow >= 9.1.0 (closes: #130) 2022-04-07 21:57:37 +02:00
1d52530229
support new pikepdf.Page object when making indirect objects (closes: #132) 2022-04-07 21:55:45 +02:00
3b117e674b
clarify that input with an alpha channel requires additional computation (closes: #142) 2022-04-07 17:13:16 +02:00
e8ca53738f
--viewer-page-layout support for twopageright and twopageleft 2022-03-25 14:01:18 +01:00
7c48bfb868
find_scale(): better document why we use powers of 10 2022-03-24 12:43:49 +01:00
244f034a2e
src/img2pdf_test.py: format with black 2022-03-22 17:57:12 +01:00
3da370d3bd
add more information about how to ignore invalid rotation values in input images 2022-02-06 20:33:30 +01:00
6cff2931e4
ensure that gif test input uses the same palette for all frames 2022-02-06 20:25:25 +01:00
6a55258804
appveyor.yml: rename pil to Pillow 2022-01-16 23:38:22 +01:00
3cdeab08ab
appveyor.yml: also install pil so that maybe pyinstaller picks it up 2022-01-16 23:36:37 +01:00
cea7c9120b
tox.ini: python 3.5 and 3.6 are not supported anymore 2022-01-16 22:18:22 +01:00
9eacfdaa76
appveyor.yml: don't run tests because we don't have imagemagick 2021-12-11 11:22:59 +01:00
95a313f437
tox.ini: add python 3.10 to envlist 2021-12-11 11:22:31 +01:00
30d705f020
src/img2pdf.py: the /OpenAction array must contain the page as an indirect object 2021-11-28 16:55:42 +01:00
dc926b2cf2
release version 0.4.3 2021-10-24 16:51:02 +02:00
a8fdbd0038
fix --viewer-initial-page (broken in last release) 2021-10-24 16:15:46 +02:00
6ff175d637
update my name 2021-10-13 09:17:44 +02:00
0732dff0be
src/img2pdf_test.py: make img2pdf path configurable 2021-10-13 09:17:17 +02:00
50b7145f64
release version 0.4.2 2021-10-11 17:16:03 +02:00
e522ec14d9
remove pdfrw from tests (closes: #108) 2021-10-09 15:29:44 +02:00