Save pictures to PDF.
Project description
Save pictures to PDF from the command line or from your Python programs.
Installation
pip install pictureshow
Usage
As a command line tool
usage: pictureshow [options] PICTURE [PICTURE ...] -o PATH
positional arguments:
PICTURE one or more input file paths
options:
-h, --help show this help message and exit
-V, --version show program's version number and exit
-q, --quiet do not print output to stdout
-v, --verbose show details of input files skipped due to error
-F, --fail MODE control the exit code: 'skipped' exits with code 2 if
at least one input file was skipped due to an error;
'no-output' (default) exits with code 2 if all files
were skipped and no PDF file was saved; 'no' exits
with code 0 even if all files were skipped
output file options:
-o, --output-file PATH
path of the output PDF file (required)
-f, --force-overwrite
save to output file path even if file exists
page properties options:
-p, --page-size SIZE specify page size; default is A4 (available sizes: A0,
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, B0, B1, B2,
B3, B4, B5, B6, B7, B8, B9, B10, C0, C1, C2, C3, C4,
C5, C6, C7, C8, C9, C10, LETTER, LEGAL,
ELEVENSEVENTEEN, JUNIOR_LEGAL, HALF_LETTER,
GOV_LETTER, GOV_LEGAL, TABLOID, LEDGER)
-L, --landscape set landscape orientation of pages
-b, --bg-color COLOR specify page background color as 6-digit hexadecimal
RGB, e.g. ff8c00
picture layout options:
-l, --layout LAYOUT specify grid layout (columns x rows) of pictures on
page, e.g. 2x3 or 2,3; default is 1x1
-m, --margin MARGIN set width of empty space around the cells containing
pictures; default is 72 (72 points = 1 inch)
-s, --stretch-small scale small pictures up to fit cells
-c, --fill-cell fill cells with pictures, ignoring the pictures'
aspect ratio
Examples
Save single picture to PDF:
$ pictureshow pics/potato.jpg -o potato.pdf
.
Saved 1 picture (1 page) to 'potato.pdf'
Save multiple pictures, four pictures per page (two columns, two rows), set page orientation to landscape:
$ pictureshow -l 2x2 -L vegetables/* -o vegetables
..................................................
Saved 50 pictures (13 pages) to 'vegetables.pdf'
(Please note that if the output filename has no extension specified, .pdf will be appended to it. This only applies for the command line tool.)
You can also save pictures from URLs:
$ pictureshow https://cdn.rebrickable.com/media/thumbs/parts/elements/6136555.jpg/250x250p.jpg https://cdn.rebrickable.com/media/thumbs/parts/elements/4119478.jpg/250x250p.jpg -o carrots
..
Saved 2 pictures (2 pages) to 'carrots.pdf'
But please note that this feature is not tested and depends solely on the underlying reportlab backend.
As a Python library
Using the pictures_to_pdf shortcut function
Example:
from pictureshow import pictures_to_pdf
pictures_to_pdf(
'pics/cucumber.jpg',
'pics/onion.jpg',
output_file='vegetables.pdf',
)
The customization parameters of the pictures_to_pdf function are keyword-only and their default values correspond to the above shown command line options:
pictures_to_pdf(
*pic_files,
output_file,
force_overwrite=False,
page_size='A4',
landscape=False,
bg_color=None,
layout=(1, 1),
margin=72,
stretch_small=False,
fill_cell=False,
)
Using the PictureShow class
Example:
from pictureshow import PictureShow
pictures = PictureShow(
'pics/cucumber.jpg',
'pics/onion.jpg',
)
pictures.save_pdf('vegetables.pdf')
The customization parameters of the save_pdf method are keyword-only and their default values correspond to the above shown command line options:
PictureShow.save_pdf(
output_file,
*,
force_overwrite=False,
page_size='A4',
landscape=False,
bg_color=None,
layout=(1, 1),
margin=72,
stretch_small=False,
fill_cell=False,
)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pictureshow-0.13.0.tar.gz
.
File metadata
- Download URL: pictureshow-0.13.0.tar.gz
- Upload date:
- Size: 9.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0825dcfdb6acf3538ac8d442fb9a2e242c95faf6fb31682421f30c7b5ffbbaea |
|
MD5 | d449c0878561928456646928b79c5c7b |
|
BLAKE2b-256 | 6c8b1a51ea7bef7e95b961e3f319df5032feffdd9dbbe98498033ab7cb5ea0dd |
File details
Details for the file pictureshow-0.13.0-py3-none-any.whl
.
File metadata
- Download URL: pictureshow-0.13.0-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c0baec73a1b576fd06260a0c75829857fd23200476e0a802d2649ab8e56df73 |
|
MD5 | 201505905742bd1f78c614c3750ec870 |
|
BLAKE2b-256 | 6dee09a05df223a8b5afb119df1bd32543c232c3dae3ea9dc0266e546334983f |