descriptionCrop and stitch pages from PDF to larger, single-page PDF
ownerJakob Haufe
last changeThu, 17 May 2018 18:51:29 +0000 (18:51 +0000)
readme

pdfstitch

pdfstitch does a similar job to pdfnup but focuses on the following features:

It has been created to print sewing patterns distributed as A4 or Letter PDFs on a large format printer thus saving oneself the hassle of cutting and gluing individual pages.

License

pdfstitch is free software under the GNU AGPL version 3. See LICENSE for details.

Dedication

pdfstitch is dedicated to the memory of Janka "marsi" Kuhfuß.

Dependencies

pdfstitch makes use of the following Perl modules:

On Debian, you can install them with:

# apt install libfile-libmagic-perl libpdf-api2-perl libyaml-perl

On FreeBSD, you can install them with:

# pkg install p5-File-LibMagic p5-PDF-API2 p5-YAML

Usage

  1. Run pdfstitch on your input PDF:

    ./pdfstitch [--genmeta] [--defaultcrop=0.9] foobar.pdf

    This will generate a YAML file called foobar.pdf.stitch. Edit this file according to the desired output. This is also the default action if called with a PDF. Per default 10% (factor 0.9) is applied as crop factor. You can adjust this value with the --defaultcrop parameter.

  2. Optional: Generate a preview and/or cropped PDF:

    ./pdfstitch --preview foobar.pdf.stitch

    This will generate a new PDF called foobar-preview.pdf. It contains only the pages you select in the YAML file with each page being overlayed with a transparent box showing the area the page will be cropped to.

    ./pdfstitch --crop foobar.pdf.stitch

    This will generate a new PDF called foobar-cropped.pdf. It contains only the pages you select in the YAML file with each page being cropped accordingly.

  3. Generate the final stitched PDF:

    ./pdfstitch --stitch foobar.pdf.stitch

    This will generate a single-page PDF called foobar-stitched.pdf with all selected pages being stitched together as specified in the YAML file. This is also the default action if called with just a YAML file.

Notes

shortlog
2018-05-17 Jakob HaufeImprove preview overlay usability master
2017-12-12 Jakob HaufeImprove README
2017-12-12 Jakob HaufeComplete name
2017-11-09 Jakob HaufeAdd dedication
2017-10-24 Jakob HaufeMove initialisation of $defaultcrop to fix #5 v0.6
2017-08-08 Jakob HaufeOrder page offsets numerically in YAML file v0.5
2017-08-08 Stefan HagenNew parameter --defaultcrop to define genmeta crop...
2017-07-16 Jakob HaufeCorrectly implement placement of pages with offsets v0.4
2017-07-10 Jakob HaufeAdd info on how to install dependencies on FreeBSD v0.3
2017-07-08 Stefan HagenBSD friendly shebang
2017-07-06 Jakob HaufeAdd compatibility for old File::Libmagic v0.2
2017-07-06 Jakob HaufeFix x/y typo
2017-07-05 Jakob HaufeUpdate Debian info v0.1
2017-07-05 Jakob HaufeRework into single tool
2017-07-03 Jakob HaufeAllow "blank" in pageorder to insert blank page
2017-07-03 Jakob HaufeChange mechanism for output file names
...
tags
2 years ago v0.6 Tag v0.6
3 years ago v0.5 Tag v0.5
3 years ago v0.4 Tag v0.4
3 years ago v0.3 Tag v0.3
3 years ago v0.2 tag v0.2
3 years ago v0.1 Release version 0.1
heads
2 years ago master