Utilities for manipulating PostScript documents
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
old-scripts
tests psnup: only supply -S argument when needed Aug 29, 2017
.gitignore Make build system non-recursive, and remote some duplication Aug 25, 2017
COPYING Put package under the GPLv3+ Aug 11, 2017
ChangeLog Add stub ChangeLog to please make distcheck (thanks, Peter Breitenloh… Dec 29, 2013
Makefile.am Make build system non-recursive, and remote some duplication Aug 25, 2017
PSUtils.pm Use POSIX round to round to nearest Aug 30, 2017
README README: add bash and a2ps to list of build dependencies Aug 24, 2017
bootstrap Autoconfiscate. Dec 14, 2012
bootstrap.conf Merge remaining C into pstops.c Jul 16, 2016
configure.ac Make build system non-recursive, and remote some duplication Aug 25, 2017
dummy.c Autoconfiscate. Dec 14, 2012
epsffit.1 epsffit: use US spelling of options, but allow UK spelling Aug 27, 2017
epsffit.in epsffit: small whitespace fix Aug 30, 2017
extractres extractres: reword license to refer to just this program Aug 11, 2017
extractres.1 The .ce request can't be lifted to good HTML or XML. Jun 2, 2018
includeres.1 The .ce request in includers.1 can't be lifted to good HTML or XML. Jun 2, 2018
psbook.1 psbook.1: specify that the default value of -s is 0 Aug 8, 2016
psbook.in Generate version numbers in script headers from VERSION Aug 25, 2017
psjoin.1 psjoin: tweak option names to be more logical Aug 11, 2017
psjoin.in Fix a couple of FIXMEs using new script generation mechanism Aug 25, 2017
psnup.1 psnup, psnup.1: minor language improvements Aug 19, 2017
psnup.in
psresize.1 man pages: add paper(1) to SEE ALSO section where relevant May 8, 2016
psresize.in Generate version numbers in script headers from VERSION Aug 25, 2017
psselect.1 psselect.1: overhaul for clarity May 8, 2016
psselect.in Generate version numbers in script headers from VERSION Aug 25, 2017
pstops.1 Move documentation of pstops’s -S option to correct man page Aug 11, 2017
pstops.c Sort out resizing Jul 17, 2016
psutils.1 Document units in psutils.1 and refer other pages thence Apr 9, 2016

README

PostScript Utilities

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

PSUtils is a suite of utilities for manipulating PostScript documents
produced according to the Document Structuring Conventions. You can select
and rearrange pages, including arrangement into signatures for booklet
printing, and page merging for n-up printing.

PSUtils is distributed under the GNU General Public License version 3, or,
at your option, any later version; see the file COPYING.

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.

PSUtils should work in any POSIX environment (support on
non-POSIX systems may be provided by gnulib).

It is also recommended to install paper, which allows a sensible default
paper size to be discovered, and configured by the user:

paper: https://github.com/rrthomas/paper

PSUtils intentionally does not check its input is DSC-conformant, 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. The old-scripts
directory contains some scripts that fix the output of certain obsolete
programs.


PROGRAMS

psbook          rearrange pages into signatures
psselect        select pages and page ranges
pstops          perform general page rearrangement and selection
psnup           put multiple pages on to one page
psresize        alter document paper size
epsffit         fit an EPSF file to a given bounding box
extractres      filter to extract resources from PostScript files
includeres      filter to include resources into PostScript files
psjoin          concatenate multiple PostScript files

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: http://t-sato.in.coocan.jp


INSTALLATION

To build, you need the following programs installed, as well as a
standard POSIX environment and C compiler:

  automake, autoconf, git, Perl, bash, a2ps

Then run:

./bootstrap && ./configure && make check && [sudo] make install

For build options, see ./configure --help


BUGS

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


ACKNOWLEDGEMENTS

PSUtils was written by Angus Duggan, who maintained it up to release 1
patchlevel 17, and Reuben Thomas.

Bug fixes and suggestions for improvements to PSUtils have come from many
people, including:

        Brian Colfer            brianc@labmed.ucsf.edu
        Charles A. Finnell      finnell@org.mitre.lear
        Conrad Kimball          cek@com.boeing.sdc
        J. W. Hawtin
        Jochen Schwarze         schwarze@de.isa
        Ken Carpenter           khc@edu.ksu.eece
        Kristian Jorg           etxkrjg@se.ericsson.solsta
        Larry Weissman          larryw@nsr.bioeng.washington.edu 
        Michael L. Brown        brown@wi.extrel.com
        Hunter Goatley	        goathunter@wkuvx1.bitnet
        John Interrante         interran@uluru.Stanford.edu
        Maurizio Cremonesi      MAUCREM@imiclvx.earn
        Matthew Stier           Matthew.Stier@East.Sun.com
        Gerry Pratt             cca13@seq1.kl.ac.uk
        Robert Joop             rj@rainbow.in-berlin.de
	Johan Vromans		jv@mh.nl
	Bryan Faubion		bryanf@tc.fluke.com
	Chris Ritson		C.R.Ritson@ncl.ac.uk
	Michele Marziani	MARZIANI@VAXFE.INFN.IT
	Michael I. Schwartz	mschwart@diana.cair.du.edu
	Chris Ritson		C.R.Ritson@newcastle.ac.uk
	Joerg Eisenreich
	Andreas Borchert	borchert@mathematik.uni-ulm.de
	Mike Coleman
	Dale Scheetz		dwarf@polaris.net
	Yves Arrouye		arrouye@marin.fdn.fr
	Stanislav Brabec	utx@penguin.cz

(Apologies to anyone left out; it was not intentional.)