Skip to main content

PDF and PostScript Utilities

Web site: https://github.com/rrthomas/psutils
Maintainer: Reuben Thomas rrt@sc3d.org

PSUtils is a suite of utilities for manipulating PDF and PostScript documents. You can select and rearrange pages, including arrangement into signatures for booklet printing, combine multple pages into a single page for n-up printing, and resize, flip and rotate pages.

PSUtils is distributed under the GNU General Public License version 3, or, at your option, any later version; see the file COPYING. (Some of the input files in the tests directory are not under this license; see the file COPYRIGHT in that directory.)

If you simply want to use PSUtils, you will find it in most GNU/Linux distributions; it is available in brew for macOS and Cygwin for Windows.

PostScript files should conform to the PostScript Document Structuring Conventions (DSC); however, PSUtils intentionally does not check this, as some programs produce non-conforming output that can be successfully processed anyway. If PSUtils does not work for you, check whether your software needs to be configured to produce DSC-conformant PostScript.

Installation

The easiest way to install PSUtils is from PyPI, the Python Package Index:

pipx install psutils

(You may first need to install pipx.)

PSUtils requires libpaper, which allows named paper sizes to be used and configured:

libpaper: https://github.com/rrthomas/libpaper

Unfortunately, pipx cannot install libpaper for you, but you might be able to install it with brew or from other package managers. Otherwise, you can install libpaper from source (see the link above).

Installation from source or git

PSUtils requires Python 3.12 or later, a handful of Python libraries (listed in pyproject.toml, and automatically installed by the build procedure).

In the source directory: make build (requires the build Python package to be installed).

Note that to use the scripts before installing them, you need to run them as Python modules; for example:

PYTHONPATH=. python -m psutils.command.psnup -2 foo.ps

Bugs

Please send bug reports, patches and suggestions to the bug tracker or maintainer (see the top of this file).

Acknowledgements

PSUtils is written and maintained by Reuben Thomas. Version 1 was written by Angus Duggan.

psselect in modeled on Chris Torek's dviselect, as is psbook, via Angus Duggan's dvibook; pstops is modeled on Tom Rokicki's dvidvi. psjoin was originally written by Tom Sato.

Download files

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

Source Distribution

psutils-3.3.16.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

psutils-3.3.16-py3-none-any.whl (55.3 kB view details)

Uploaded Python 3

File details

Details for the file psutils-3.3.16.tar.gz.

File metadata

  • Download URL: psutils-3.3.16.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for psutils-3.3.16.tar.gz
Algorithm Hash digest
SHA256 d259da9bc95395fe9761b289333e83866ecbf2d43ee844e74a14a3f74ff2808b
MD5 c4d06ff0d356f59fa5f3fa88d4389cae
BLAKE2b-256 d3d9033d800f92c3d89aa93b5ebf35991599d91005fc2e9ed69b22b149d52432

See more details on using hashes here.

File details

Details for the file psutils-3.3.16-py3-none-any.whl.

File metadata

  • Download URL: psutils-3.3.16-py3-none-any.whl
  • Upload date:
  • Size: 55.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for psutils-3.3.16-py3-none-any.whl
Algorithm Hash digest
SHA256 36697827b5b8bf5bb6dc5851f6cd00397c9be83c239c52fa7258d4d30f159098
MD5 5c4f3714c224d77dffd985cbd17b5717
BLAKE2b-256 5f4e81112e7477f0470ab2805e0b55ca0744313170886ef48186fd19fa1dfb5c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page