Skip to main content

The open source PDF stitching software for sewists, by sewists.

Project description

PDFStitcher

PDFSticher is a utility for stitching together many PDF pages from one document into a single page. This is also called "N-Up" or page imposition. This program was created in order to convert sewing patterns into a convenient format for projecting, though it could be used to stitch together any PDF.

Since version 0.4, it is also possible to select layers for inclusion/exclusion in the final output. Additionally, line properties can be modified for each layer if the input PDF is compatible.

For up-to-date information, also check out https://www.pdfstitcher.org.

Download the latest release

  • Windows (7 or 10, 64-bit)
  • macOS - Intel Processor
  • macOS - M1/M2 Processor
  • Download on Flathub
  • Using pip: pip install pdfstitcher[gui] Requires Python between 3.8 and 3.12.
    • Running pip installl pdfstitcher without the [gui] option will install the command line version only. The pdfstitcher command is installed as a command line script, while the GUI is installed as a separate script called pdfstitcher-gui.
    • To run as a Python module, use python -m pdfstitcher.cli or python -m pdfstitcher.gui
    • As of June 2024, there is a known issue with building the wxPython wheel on systems with GCC 14 (e.g. Fedora 40). If the installation fails, try using Python 3.11 and installing a wheel manually from https://wxpython.org/pages/downloads/index.html.

Previous versions can be found by clicking on the "releases" link to the right.

Translations:

Translation status

PDFStitcher will detect system language settings and change localisation if supported. The default language can be changed in the settings menu ("Preferences" in the menu bar on macOS).

Want to contribute a translation? PDFStitcher is now on weblate!.

Features

  • Stitch together pages in any order with specified number of rows/columns
  • Rotate pages for stitching
  • Add a margin around the final output
  • Trim or overlap the edges of each page by a specified amount
  • Add blank pages by including zeros in the page list (e.g. 1-5,0,6-10)
  • Layers are automatically preserved if present in the source document
  • Exclude layers (either deactivate or remove)
  • Modify line properties (colour, thickness, style (solid, dashed, dotted))

Development Installation

Most people probably want to just use the executable links above. However, to edit the code, clone this repo and install in editable mode using the command:

$ pip install -e ".[dev,gui]"

Help!

Found a bug, or have an idea for a great new feature? Check out the Issues tab to see if it's an open issue, or submit a new one if it's not on the list.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pdfstitcher-1.0.2.tar.gz (268.4 kB view details)

Uploaded Source

Built Distribution

pdfstitcher-1.0.2-py3-none-any.whl (333.4 kB view details)

Uploaded Python 3

File details

Details for the file pdfstitcher-1.0.2.tar.gz.

File metadata

  • Download URL: pdfstitcher-1.0.2.tar.gz
  • Upload date:
  • Size: 268.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.9

File hashes

Hashes for pdfstitcher-1.0.2.tar.gz
Algorithm Hash digest
SHA256 85a03cd953b66a644d72f7249d72793659c3d4307f32c19d2883e6ca5e0ca48a
MD5 cbc30b139982a9d94386b95e470fccc9
BLAKE2b-256 fdfa11e6134c2402856c6d5330bef6cc92e233ea7b8db1b58d786a33208ca00b

See more details on using hashes here.

File details

Details for the file pdfstitcher-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: pdfstitcher-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 333.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.9

File hashes

Hashes for pdfstitcher-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bff13ba774e6f22a67b5a9d07102e3d381f54f3621ad4038e2b8376fee071fc7
MD5 fde10f75528f54c145934c83e26fb62d
BLAKE2b-256 8e803152acd655f81c7b03d2e9bd85c063da221789746387d1b3c28bb19922c2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page