diff options
Diffstat (limited to 'support/pdfjam/README.md')
-rw-r--r-- | support/pdfjam/README.md | 690 |
1 files changed, 690 insertions, 0 deletions
diff --git a/support/pdfjam/README.md b/support/pdfjam/README.md new file mode 100644 index 0000000000..62f99b2ec5 --- /dev/null +++ b/support/pdfjam/README.md @@ -0,0 +1,690 @@ +[![](https://travis-ci.com/DavidFirth/pdfjam.svg?branch=master)](https://travis-ci.com/DavidFirth/pdfjam) +# pdfjam + +_David Firth_ <https://warwick.ac.uk/dfirth> + +A snapshot of this page is included as _README.md_ +in the distributed package. The most up-to-date version is maintained online at +<https://github.com/DavidFirth/pdfjam>. + +1. [Overview](#overview) + - [What is pdfjam?](#whatis) + - [Wrapper scripts no longer included here](#wrappers) +2. [Pre-requisites](#prereq) +3. [Documentation](#documentation) +4. [Installation](#install) +5. [Configuration](#config) +6. [Using pdfjam](#using) +7. [FAQ](#faq) +8. [Reporting bugs](#bugs) +9. [Version history](#history) + + +# <a name="overview"> Overview + +## <a name="whatis"> What is pdfjam? + +The **pdfjam** package makes available the `pdfjam` shell script that provides a +simple interface to much of the functionality of the excellent +[pdfpages](http://www.ctan.org/tex-archive/macros/latex/contrib/pdfpages) +package (by Andreas Matthias) for _LaTeX_. The `pdfjam` script takes one +or more PDF files (and/or JPG/PNG graphics files) as input, and produces +one or more PDF files as output. It is useful for joining files together, +selecting pages, reducing several source pages onto one output page, etc., etc. + +A potential drawback of `pdfjam` and other scripts based upon it is that any +hyperlinks in the source PDF are lost. On the positive side, there is no +appreciable degradation of image quality in processing PDF files with `pdfjam`, +unlike some other indirect methods such as `pdf2ps|psnup|ps2pdf` +(in the author's experience). + +`pdfjam` is designed for Unix-like systems, including Linux and Mac OS X. +It seems that it will work also on Windows computers with a suitable +installation of [Cygwin](http://www.cygwin.com) (with TeX Live +installed), but this has not been thoroughly tested. + +An alternative set of PDF manipulation tools, which are java-based, is +provided by the [Multivalent](http://multivalent.sourceforge.net) project. +Yet another alternative set of tools is [PDFsam](https://pdfsam.org). +Those alternatives do much the same things as `pdfjam`, and maybe +quite a bit more too. + +The **pdfjam** software is made available free, under GPL version 2 (see the +file named `COPYING` that is included with the package). +It comes with **ABSOLUTELY NO WARRANTY** of fitness for any purpose whatever. + +## <a name="wrappers"> Wrapper scripts no longer included here + +Previous versions of **pdfjam** (before 3.02) included some _other_ scripts too, +in addition to the `pdfjam` script iteslf. +Those other scripts are simple wrappers for calls to `pdfjam`, designed to perform +some common tasks such as joining or n-upping PDF files or to illustrate +other features; they are not very elaborate, and nor are they extensively tested. +They are probably best viewed as simple templates that can be used for +constructing more elaborate wrapper scripts as required. + +Those 'wrapper' scripts are **no longer maintained**. I continue to make +them available in a separate repository +<https://github.com/DavidFirth/pdfjam-extras>, +in case anyone wants to see them, to use them, or to improve and maintain +them independently as a separate project. + +The specific wrapper scripts that were removed from the **pdfjam** package +at version 3.02 are: + +- `pdfnup`, `pdfpun` +- `pdfjoin` +- `pdf90`, `pdf180`, `pdf270` +- `pdfflip` +- `pdfbook` +- `pdfjam-pocketmod` +- `pdfjam-slides3up`, `pdfjam-slides6up` + +For those scripts and for more information on them, please now see +<https://github.com/DavidFirth/pdfjam-extras>. + + +# <a name="prereq"> Pre-requisites + +- A Unix-like operating system (Linux, Mac OS X, FreeBSD, etc.; possibly Cygwin) +- A working, up-to-date installation of LaTeX (including at least one of + `pdflatex`, `lualatex` or `xelatex`) +- A working installation of the LaTeX package + [**pdfpages**](http://www.ctan.org/tex-archive/macros/latex/contrib/pdfpages) + (version 0.4f or later) +- Some of the options offered by `pdfjam` also require the LaTeX packages + [**geometry**](http://www.ctan.org/tex-archive/macros/latex/contrib/geometry) + and + [**hyperref**](http://www.ctan.org/tex-archive/macros/latex/contrib/hyperref). + +For some years now, **pdfjam** has been included in the _TeX Live_ distribution, +which includes all the necessary programs and packages to make `pdfjam` run smoothly. +If you have the necessary bandwidth and disk space for it, I do recommend installing +[_TeX Live_](https://tug.org/texlive/). + +# <a name="documentation"></a> Documentation + +The primary documentation for `pdfjam` is obtained (after installation of `pdfjam`) +via the command + +``` +pdfjam --help +``` + +This gives information on the arguments to `pdfjam`, and the default settings +that apply at your installation. In addition to the arguments that are explicitly +documented there, `pdfjam` provides access to all of the options of the +**pdfpages** package: that's a large number of options, and it's a set of options +that might change, so users are referred to the current +[pdfpages manual (PDF)](http://www.ctan.org/tex-archive/macros/latex/contrib/pdfpages/pdfpages.pdf) to see what's available. + +In case you want to look at the `pdfjam --help` text template online, for example +before you decide whether to install **pdfjam**, the source is available at +<https://github.com/DavidFirth/pdfjam/blob/master/pdfjam-help.txt>. + +There is also a (very basic) `man` page, accessed in the usual way +(after installation) by + +``` +man pdfjam +``` + +# <a name="install"></a> Installation + +There are two main ways: + +1. Install the [current _TeX Live_ distribution](https://tug.org/texlive/) +(how you do this will depend on details of your operating system). +_TeX Live_ will already contain a recent release of **pdfjam**. +Many thanks to Karl Berry +for setting up and maintaining **pdfjam** as a _CTAN_ package that is part of +_TeX Live_. + +2. Install it yourself (e.g., if you don't want _TeX Live_, or if you want a later +release of **pdfjam** than the one that's currently in _TeX Live_). +Download the latest packaged release of **pdfjam** from +<https://github.com/DavidFirth/pdfjam/releases>. +If for some reason you don't want the latest released version, or even a recently released version, you can still get older versions too: see <https://davidfirth.github.io/pdfjam>. + +**The first way, via _TeX Live_, is recommended** as the easiest way for most users. + +If you go the second way, then you will have a bit more to do: + +- The `pdfjam` shell script in the _bin_ sub-directory of the released package + should be placed on the `PATH` of anyone who needs to use it. +- The `man` file in the _man1_ sub-directory should be installed on the `MANPATH` + of all who might need to read it. + +# <a name="config"></a> Configuration + +On many unix-like systems `pdfjam` should run without any further configuration, +provided that the pre-requisite TeX installation (such as _TeX Live_) is present. +If you want to check (e.g., prior to installation) that `pdfjam` will work on +your system, then + +- unzip the `tests.zip` archive (inside the package) +- `cd` to your newly made `tests` sub-directory and follow the instructions that appear there in `README_tests.md`. + +If configuration _is_ needed, this can be done through a site-wide or +user-specific configuration file. This might be necessary if, for example, your +site has a non-standard TeX installation, or a non-standard location for +temporary files, or a specific paper size for output PDFs --- +or some other reason. + +The file +[pdfjam.conf](https://github.com/DavidFirth/pdfjam/raw/master/pdfjam.conf) +is a sample configuration file which can be edited as needed. After editing, +either install the file for site-wide use (at `/etc/pdfjam.conf`, +`/usr/share/etc/pdfjam.conf`, `/usr/local/share/pdfjam.conf`, or +`/usr/local/etc/pdfjam.conf`) or as a user-defaults file at `~/.pdfjam.conf`. +User settings made at `~/.pdfjam.conf` override corresponding settings made +in a site-wide configuration file. + +For example, if you prefer to use `/usr/bin/xelatex` as your default LaTeX engine +(in place of the standard `pdflatex`), and you want your output page size to be +"US letter" size paper by default, you would simply include the lines + +``` +latex=/usr/bin/xelatex +paper=letterpaper +``` + +in a plain text file named '`.pdfjam.conf`' in your home directory. +The path `usr/bin/xelatex` specifies exactly _which_ LaTeX program will be +used: it could be a path to any one of the `pdflatex`, `lualatex` or +`xelatex` executables. (You can get the full path to an executable +by, for example, the command `which xelatex`.) +The code word `letterpaper` is how LaTeX refers to that particular page size. +For other available paper sizes, and all the many +other options that could be set as defaults if you want, please see the output of + +``` +pdfjam --help +``` + +On some systems it might even be necessary to change the list of places +(i.e., `/etc/pdfjam.conf` and others as listed above) that is searched for +site-wide configuration files. This can only be done by editing the +`pdfjam` script itself. To see which directories on _your_ system are +searched for a file named `pdfjam.conf`, look at the output of + +``` +pdfjam --configpath +``` + +# <a name="using"></a> Using pdfjam + +For a full overview of what `pdfjam` can do, the importance of the +[pdfpages manual (PDF)](http://www.ctan.org/tex-archive/macros/latex/contrib/pdfpages/pdfpages.pdf) +cannot be stressed enough! +The following examples merely serve as a brief introduction. + +### Example 1: Batch 2-upping of documents + +Consider converting each of two documents to a side-by-side "2-up" format. +Since we want the two documents to be processed separately, we'll use the +`--batch` option: + +``` +pdfjam --batch --nup 2x1 --suffix 2up --landscape file1.pdf file2.pdf +``` + +This will produce new files `file1-2up.pdf` and `file2-2up.pdf` in the current +working directory. + +### Example 2: Merging pages from 2 documents + +Suppose we want a single new document which puts together selected pages from two different files: + +``` +pdfjam file1.pdf '{},2-' file2.pdf '10,3-6' --outfile ../myNewFile.pdf +``` + +The new file `myNewFile.pdf`, in the parent directory of the current one, +contains an empty page, followed by all pages of `file1.pdf` except the first, +followed by pages 10, 3, 4, 5 and 6 from `file2.pdf`. + +The resulting PDF page size will be whatever is the default paper size for +you at your site. If instead you want to preserve the page size of +(the first included page from) `file1.pdf`, use the option `--fitpaper true`. + +**All pages in an output file from `pdfjam` will have the same size and +orientation.** For joining together PDF files while preserving _different_ page +sizes and orientations, `pdfjam` is not the tool to use. + +### Example 3: A 4-up document with frames + +To make a portrait-oriented 4-up file from the pages of three input files, +with a thin-line frame around the input pages: + +``` +pdfjam file1.pdf file2.pdf file3.pdf --no-landscape --frame true --nup 2x2 --suffix 4up --outfile ~/Documents +``` + +Here a _directory_ was specified at `--outfile`: the resultant file in this +case will be `~/Documents/file3-4up.pdf`. +(Note that **if there's a writeable file with that name already, it will be +overwritten**: no check is made, and no warning given.) + +### Example 4: Convert a 'US letter' document to A4 + +Suppose we have a document made up of 'US letter' size pages, +and we want to convert it to A4: + +``` +pdfjam 'my US letter file.pdf' --a4paper --outfile 'my A4 file.pdf' +``` + +### Example 5: Handouts from presentation slides + +A useful application of `pdfjam` is for producing a handout from a file of +presentation slides. For slides made with the standard 4:3 aspect ratio a +nice 6-up handout on A4 paper can be made by + +``` +pdfjam --nup 2x3 --frame true --noautoscale false --delta "0.2cm 0.3cm" --scale 0.95 myslides.pdf --outfile myhandout.pdf +``` + +The `--delta` option here comes from the pdfpages package; the `--scale` +option is passed to LaTeX's `\includegraphics` command. + +Slides made by LaTeX's _beamer_ package, using the `handout` class option, +work especially nicely with this! The example wrapper scripts `pdfjam-slides3up` +and `pdfjam-slides6up`, in the +[pdfjam-extras](https://github.com/DavidFirth/pdfjam-extras) repository, +are for 3-up and 6-up handouts, respectively. + +### Example 6: Trimming pages; and piped output + +Suppose we want to trim the pages of our input file prior to n-upping. +This can be done by using a pipe: + +``` +pdfjam myfile.pdf --trim '1cm 2cm 1cm 2cm' --clip true --outfile /dev/stdout | pdfjam --nup 2x1 --frame true --outfile myoutput.pdf +``` + +The `--trim` option specifies an amount to trim from the left, bottom, right and +top sides respectively; to work as intended here it needs also `--clip true`. +These (i.e., `trim` and `clip`) are in fact options to LaTeX's +`\includegraphics` command (in the standard _graphics_ package). + +Thanks go to Christophe Lange and Christian Lohmaier for suggesting +an example on this. + +### Example 7: Output pages suitable for binding + +To offset the content of double-sided printed pages so that they are +suitable for binding with a +[Heftstreifen](http://de.wikipedia.org/wiki/Heftstreifen), use +the `--twoside` option: + +``` +pdfjam --twoside myfile.pdf --offset '1cm 0cm' --suffix 'offset' +``` + +### Example 8: Input file with nonstandard name + +To use PDF input files whose names do not end in '`.pdf`', you will need to use +the `--checkfiles` option. This depends on the availability of the `file` +utility, with support for the options `-Lb`; this can be checked by trying + +``` +file -Lb 'my PDF file' +``` + +where `'my PDF file'` is the name of a PDF file on your system. +The result should be something like '`PDF document, version 1.4`' +(possibly with a different version number). + +With '`file -Lb`' available, we can use PDF files whose names lack the usual +'`.pdf`' extension. For example, + +``` +pdfjam --nup 2x1 --checkfiles 'my PDF file' +``` + +will result in a file named '`my PDF file-2x1.pdf`' +in the current working directory. + +### Example 9: Rotate every 2nd page + +If you want to print a landscape-oriented PDF document on both sides of the paper, +using a duplex printer that does not have 'tumble' capability, make a new version +with every second page rotated for printing: + +``` +pdfjam --landscape --doublepagestwistodd true my-landscape-document.pdf +``` + + +# <a name="faq"></a> FAQ + + +**1. The script runs but the output doesn't look the way it should. Why?** + +Most likely either your pdfTeX or your pdfpages installation is an old version. +You could check also that `pdftex.def`, typically to be found in +`.../texmf/tex/latex/graphics/`, +is up to date. If the problem persists even with up-to-date versions of pdfTeX, +`pdftex.def` and pdfpages, then please do report it. + +**2. What can I do to solve a 'Too many open files' error? + +This error has been reported to occur sometimes, when dealing with large numbers of +documents/pages. A suggested solution, if this happens, +is to include additionally (in the call to `pdfjam`): + +``` + -- preamble '\let\mypdfximage\pdfximage \def\pdfximage{\immediate\mypdfximage}' +``` + +See for example +<https://stackoverflow.com/questions/1715677/error-too-many-open-files-in-pdflatex> +for this suggestion and links to more information. + +# <a name="bugs"></a> Reporting bugs + +Please report any bugs found in `pdfjam`, either + +- by reporting as an issue at GitHub, <https://github.com/DavidFirth/pdfjam/issues> +- by email (see <https://warwick.ac.uk/dfirth> for my email address) + +### Some known problems: + +- Sometimes font information (such as ligatures) is lost from the output of + `pdfjam`. It seems that a fairly simple fix when this happens is to add the + option `--preamble '\pdfinclusioncopyfonts=1'` in your call to `pdfjam`. +- In _Cygwin_, using `pdfjam` in a pipeline does not seem to work. + The problem seems to be with _Cygwin_'s handling of file descriptors + within pipelines. +- The `--preamble` option can sometimes clash with other elements of the LaTeX + preamble. Some specific things to watch out for: + + If the preamble needs to set further options to the _geometry_ package, + when the _geometry_ package has already been loaded in order to + set a special page size, be sure to use the `\geometry{}` command for that. + + If the preamble needs to set options to the _hyperref_ package, when + the _hyperref_ package has already been loaded in order to specify PDF + document information, be sure to use the `\hypersetup{}` command for that. + + If options to the _color_ package are to be specified in the preamble, + do not at the same time use the `--pagecolor` option to `pdfjam`. + + +# <a name="history"> Version history + +### Overview of the history + +This all grew originally from a script named `pdfnup`. That was later joined, +in a published package called 'PDFjam', by two further scripts `pdfjoin` and +`pdf90`. + +At version 2.00, everything was unified through a single script `pdfjam`, with +many more options. Along with `pdfjam` various 'wrapper' scripts --- i.e., +other scripts that use `pdfjam` in different ways --- were provided, mainly as +examples. + +From version 3.02, the extra 'wrapper' scripts are removed from the package, +mainly because they are hard to maintain: different users want different +things, and `pdfjam` itself provides all the options in any case. So I have +broken out the wrapper scripts into a separate repository, _unsupported_ --- +so that people can still see and use/adapt them if they want. +And maybe even someone else will +want to take on the task of improving and maintaining some of them, +who knows? The wrapper scripts (**no longer maintained**) can now be found at +<https://github.com/DavidFirth/pdfjam-extras>. + +### Version release notes + +[**3.03**](https://github.com/DavidFirth/pdfjam/releases/tag/v3.03) [2019-11-18]: + +- Built package now (again) has tests in a zip archive. (needed for CTAN) + +[**3.02**](https://github.com/DavidFirth/pdfjam/releases/tag/v3.02) [2019-11-14]: + +- Re-styled the package name to **pdfjam**. (Previously the package --- which then + contained several scripts --- was named PDFjam). +- Moved everything to a new home on the web at + <a href="https://github.com/DavidFirth">github.com/DavidFirth</a>. +- Simplified the package by removal of all the 'wrapper' scripts + (`pdfnup`, `pdfjoin`, etc.). +- Settings specified via `--preamble` are now protected from the normal + tidying of the TeX input file to remove redundant packages. +- The possibility to use `lualatex` or `xelatex` in place of `pdflatex` is + now described explicitly in the README. The specification of which LaTeX + engine to use can be made either in a configuration file, or on the command + line via option (for example) `--latex /usr/bin/xelatex`. Thanks to + Mircea for suggesting this. +- Added new `--runs` option, so as to allow for example `--runs 2` in a situation + where two runs of `pdflatex` (or `lualatex` or `xelatex`) are needed (typically + where the result document is being indexed in some way, so more than one run is + needed). Thanks to Ferdinand for this suggestion (and patch). +- Default paper size is now guessed from the locale where possible, with fallback + default size being ISO A4 ('a4paper' in LaTeX). This can still be over-ridden + in a configuration file, or on the command line. Thanks to Jonathan for this + suggestion. +- Innocuous edits made to make pdfjam work better in Cygwin. Thanks to Lucas for + sending a helpful patch for this. +- Included a note in the FAQ about the (sometimes reported) 'Too many open files' + error. Thanks to George for information about this. +- Tidying of the `pdfjam` script, and better organisation of the `tests` folder. + Thanks to Lucas for help with this. + +---------- + +_Older releases are still available at <https://davidfirth.github.io/pdfjam>._ + +**2.09** [never released]: + +- The default behaviour of `pdfbook` is reverted to its pre-2.06 state, + because `--booklet true` seems to be problematic for some users. + +**2.08** [2010-11-14]: + +- Fixed a bug in one of the tests. + +**2.07** [2010-11-13]: + +- Two other common graphics formats (JPG and PNG) are now explicitly + allowed as input files (i.e., not only PDF files are allowed as inputs). + +**2.06** [2010-05-11]: + +- Changed the `pdfbook` script to include `--booklet true` as the + default behaviour (thanks to Julien Bossert for this good suggestion). + +**2.05** [2010-04-25]: + +- Changes to the `pdfbook` script [the `--right-edge-binding` option is + now redundant, and there's a new `--short-edge` option for binding along the + short edge of pages instead of the long edge (thanks to Marco Pessotto for this). +- The `--preamble` option to `pdfjam` is enhanced, to allow multiple instances + which get concatenated. +- Also various minor corrections to man pages. + +**2.04** [2010-04-22]: + +- Various minor improvements suggested by Debian maintainers + (thanks to Eduard Bloch for these). The main things are: + + addition of the `--version` option; + + liberalisation of `pdfjam` to allow files in _JPEG_ format to be + specified as input, as well as PDF; + + tidying of the man files; + + and more use of `exec`, to avoid forking. + +**2.03** [2010-04-20]: + +- Fixed a bug which caused problems when your `/bin/sh` is the _zsh_ shell. +- Fixed a bug which prevented the correct representation of many UTF-8 characters + in `pdfinfo` data. + +**2.02** [2010-04-14]: + +- More progress on portability. +- Introduced the beginnings of a suite of tests. +- Iimprovements in the `--keepinfo` functionality, and in the treatment of + file permissions (thanks to Marco Pessotto for these). + +**2.01** [2010-04-13]: + +- Fixed a silly bug (thoughtless use of "`test -a`" in a couple of places) + which seriously affected portability. + +--------------------------------------------------------------- + +**2.00** [2010-03-14]: **a major re-design** + +This is not completely backward-compatible with previous versions of the +`pdfnup`, `pdfjoin` and `pdf90` scripts. +The differences in interface are few, though, and the main ones are +listed below. + +- The new script `pdfjam` now does all the work; all the other scripts + included with the package are just simple wrappers for `pdfjam`. +- New `pdfjam` makes available essentially _all_ of the facilities of the + pdfpages package (without having to know what they are). +- Various security and portability issues have been resolved. + (None of the scripts now calls for `/bin/bash`; and the handling of + temporary files is now much safer.) +- `pdfjam` can take PDF input from `/dev/stdin`, and send output to + `/dev/stdout`. (This allows `pdfjam` to be used in a pipeline.) +- If the `--outfile` option specifies a relative path, that path is now + relative to the _current working directory_ (as is normally expected of + unix utilities). **This is different behaviour from previous versions.** +- With multiple input files, `pdfjam` offers two distinct methods of processing. + **This is different behaviour from previous versions.** + 1. The default is to take pages as specified from the input files, and + combine them into a single document. + 2. If the `--batch` option is used, `pdfjam` operates _separately_ on the + input files, producing one output file per input file. +- Page selection is available separately for each input file. A + **difference from previous versions** is that the `--pages` keyword is no + longer used. +- `pdfjam` uses the `\includepdfmerge` command from _pdfpages_, as a result + of which all pages in an output file have the same size and orientation. + **This is different behaviour from previous versions.** +- Output page orientation is now controlled by using `--landscape` (negated, + if necessary, by `--no-landscape`). The previous `--orient` option is no + longer used, and in particular "`--orient auto`" is no longer available. + **This is different behaviour from previous versions.** +- Other new features include: + + `--keepinfo` option, to allow preservation of PDF document information, + if the `pdfinfo` utility and the LaTeX `hyperref` package are + available (thanks to Robert Wenner for suggesting this); + + `--pdftitle`, `--pdfauthor`, `--pdfsubject` and `--pdfkeywords` + options, to specify new PDF document information + (these require the LaTeX `hyperref` package); + + many more "named" output page sizes are available if the LaTeX + `geometry` package is installed (the full list of allowed paper + specifications is: `a0paper, a1paper, a2paper, a3paper, a4paper, + a5paper, a6paper b0paper, b1paper, b2paper, b3paper, b4paper, + b5paper, b6paper letterpaper, executivepaper, legalpaper`; + thanks to Corné Verbruggen and Mel Irizarry for suggesting this) and + non-standard page sizes can also be defined; + + `--checkfiles` option to request that input files be checked using the + `file` utility, rather than requiring the file name to end in + "`.pdf`" or "`.PDF`"; + + `--twoside` option, to allow the LaTeX _twoside_ class option to be + specified (thanks to Johannes Reinhard for suggesting this); + + `--pagecolor` option, to allow the background colour of output pages + to be changed (thanks to James Fisher for suggesting this); + + `--vanilla` option to run `pdfjam` without reading site-wide or user + configuration files. +- In addition, various reported bugs have been fixed — many thanks to all + those kind people who reported them. + +--------------------------------------------------------------- + +**1.21** [2009-01-19]: + +- Bug fixes, including security issues (many thanks to Eduard Bloch, + Robert Buchholz and Martin Vaeth for helpful reports on vulnerabilities and + for kindly contributing patches). +- The scripts now call for `/bin/bash` as interpreter. +- Availability of `mktemp` is now also assumed. +- The Mac OS X droplets now look for `pdflatex` at (by default) + `/usr/texbin/pdflatex` + +**1.20** [2005-01-25] + +- Added minimal man pages. +- Added extra possible locations for the site-wide configuration file. + +**1.11** [2004-10-13]: + +- Added the `--scale` option to `pdfnup`, which allows page margins either to + be enlarged (e.g,. `--scale 0.9`) or reduced (e.g,. `--scale 1.1`) by + scaling the page contents. By popular request! + +**1.10** [2004-06-24]: + +- Output files now appear by default in same directory as input, rather than in + the current working directory; fixed a bug that caused the scripts not to work + on some versions of Solaris (thanks to Daniel Gebhart); major improvements to + the Mac OS X sample droplets. + +**1.03** [2004-05-09]: + +- Minor changes towards POSIX compliance. + +**1.02** [2004-05-08]: + +- Added a COPYING file to the package. + +**1.00** [2004-05-07]: + +- Package re-named PDFjam. + +**0.99a** [2004-05-06]: + +- A minor change to the output of `pdfnup --help` and `pdfjoin --help` + +**0.99** [2004-05-05]: + +- Various improvements to `pdfnup`, including the handling of multiple PDF +input files. Added `pdfjoin` and `pdf90`. + +**0.97** [2004-04-23]: + +- Corrections to the output of `pdfnup --help`. + +**0.96** [2004-02-12]: + +- Minor changes to comments in the `pdfnup` script. + +**0.95** [2004-01-28]: + +- Added the possibility of site-specific and user-specific configuration + files (thanks to Jason Lewis for suggesting this). + +**0.9** [2004-01-28]: + +- Added `--openright` (thanks to Jason Lewis for suggesting this). + +**0.8** [2003-09-12]: + +- Added `pdfnup --help` facility (thanks to Wilfrid Kendall for this suggestion). + +**0.7** [2003-01-26]: + +- Paths involving spaces now permitted. +- Page trimming added (thanks to Alex Montgomery for suggesting that). +- Default output filename now has a dash inserted before the "nup" label + (as in ` wasteful-2x2.pdf `). +- Sample Mac OS X droplets provided. + +**0.6** [2002-08-22]: + +- Use of paths involving spaces now reports an error. + +**0.5** [2002-06-24]: + +- Fixed a bug which caused incompatibility with some types of unix. + +**0.4** [2002-04-30]: + +- Better error trapping, improved portability. + +**0.3** [2002-04-04]: + +- First public release of `pdfnup`. + + |