NAME

epssplit -- a program for splitting an encapsulated postscript file.

This file documents release 1.0.2 of epssplit.


SYNOPSIS

        epssplit [options] poster.eps


DESCRIPTION

epssplit is a program that will split an encapsulated postscript (EPS) file into smaller EPS files. This is useful if you make a poster as an EPS file but the printer cannot handle that paper size. Use epssplit to split the file into printer-managable chunks, print them out, and glue the whole thing back together. The files can be written as several EPS files, or as one big (non-encaspulated) postscript file. epssplit will do its very best to minimize the number of pages.

epssplit is provided AS IS copyrighted under the GNU GPL. Be sure to read the copyright section if you do not know what this means.


OPTIONS


Special options

-h

--help

Print a short help message.

-v

--version

Print the current version number.


General options

--border

Specify the size of the border around the image. The border is the part that contains the cropmarks and the label. The default value is 20 postscript points. Setting border to 0 avoids the border with the cropmarks and the label altogether.

-fs

--fontsize

The size of the font used to write labels. Since the label is written inside the border area, it cannot be bigger than the size of the border. The default value is 12 postscript points. The font of the label is Times-Roman.

-mar

Specify a margin. Most printers don't print to the edge of the paper so you would probably want to specify a margin around the image (which would then have to be cut away before you glue the pages back together). Examples of valid margin specifications are `23' (postscript units), `1cm', `5mm', `0.3in'. Observe that there is no space between the number and the unit. The default value of the margin is 0.

-o

--output-file

This option tells epssplit to write its output to the specified file. Otherwise, the default is to write to standard output. Which you can then pipe on to your favourite printer (but you may want to see Examples of usage below). However, if you generate EPS files (as opposed to non-encapsulated postscript) then the filename you specify will only be used to derive the names of the output files.

-p

--paper

Paper specifies the paper size. Default is A4 (this can easily be changed in the configuration file), and the currently recognized sizes include: A2, A3, A4, A5, B4, B5, letter, tabloid, ledger, legal, and executive. For a complete list, run epssplit with --paper ?. See also '-pw' and '-ph'.

-ph

--paper-height

Specifies the height of the paper directly. Should be used with -pw. As with all distances, the width may be given in postscript points, centimetres, millimetres, or inches.

-pw

--paper-width

Specifies the width of the paper directly. Should be used with -ph.

-ps

--postscript

Generate a single postscript file rather than many encapsulated postscript files. This is the default if the filename ends with `.ps' (rather than `.eps').

--print

Says to insert a `showpage' operator in the generated EPS files. This should be there if you want to print the file directly, so it always there if you generate postscript. Although `showpage', strictly speaking, is not allowed in EPS files, it is put there anyway by default, since the intention is that the file should be printed.


Scaling options

The image can be scaled before being sent to the printer. At most one of the following options should be specified; if none is specified then the image will not be scaled.

-sc factor

--scale factor

Explicit scaling. For example

        epssplit --scale 1.2 -o files.eps image.eps

will enlarge the image in image.eps by 20% before slicing it up to be printed.

-x x

Scale the image to fit x paper widths (or heights if you are printing in landscape mode).

-y y

Scale the image to fit y paper heights (or widths if you are printing in landscape mode).

Here is a diagram illustrating the process. The poster EPS file is on the left; it is split in the middle by epssplit. If you say -o foo.eps then the output will be written to foo-00.eps,foo-01.eps, foo-10.eps,foo-11.eps. On the right, foo-11.eps is printed out on paper.

splitting process illustration

The following diagrams illustrates how the image files are labelled.

indices in output file

The next diagram illustrates the difference between the margin and the border. Note that the margin area is always left blank (since this is typically the area that printers can't print anyway.) The border area holds the cropmarks and the label. Finally, the image is displayed in the center of the paper.

margin and border illustration

The last diagram (so far :-) shows how the scaling is done if you say -x 2 as an option: the image is stretched to fill two paper sizes in width (incidentally, in this case you would get the same result with -y 2 since the image aspect ratio is the same as that for the paper). Note also that in this case we are in portrait mode.

scaling the image


The configuration file

You can write a configuration file specifying your favourite options and their values. Create a file called .epssplitrc and put it somewhere in Perl's include path (next to the .pm files would be good). Or you can put it in your home directory. Also, you can put it in the current working directory, and this will be checked first. This allows you to have a per-project configuration file, assuming that you keep each project in a separate directory.

Each line of the file may be:

  1. A blank line, or

  2. A comment line: these begin with a `#' character and the rest of the line will then be ignored (really; there is no backslash continuation), or

  3. A line consisting of option=value or option: value. The option is just the long or short option name with the leading '-' or '--' stripped off (this method was chosen to make it easier to remember), and the value should just be a value just like you would write it on the command line (except that there must be a value; for a boolean value you would have to write explicitly yes/true or no/false).

Here is an example of what could be written in an .epssplitrc file:

        # Sample epssplit config file
        o=my_output_file.eps
        paper = A3
        mar: 1cm


How to generate multiple files

epssplit can print multiple files as follows: if you call epssplit with something like

epssplit -o foo.eps poster.eps

The filenames of the output files will be generated by the given filename (in the example foo.eps) as follows: say that epssplit decides to split poster.eps into x by y files. If both x and y are less than or equal to 10, the files will be named foo-ab.eps, where a runs from 0 to x-1, and b from 0 to y-1. The top row of images all have a=0, i.e., a is the row number and b is the column number. If either x or y is greater than 10, then the letters `a-z' will be used as the next set of "digits" (i.e., `a' is 10 and `z' is 36). If x or y is greater than 36, then epssplit will give up and output everything as a single postscript file (you probably wouldn't really want to have that many files clutter your directory anyway.)

Alternatively, if you use the --postscript option, you will get a single postscript file with xy pages, each with its own slice of the poster.

If you don't specify the -ps or --postscript option, epssplit will deduce what you want from the file extension. Thus, if your output file is called foo.eps, epssplit will generate encapsulated postscript (using the name foo.eps to generate filenames for the EPS files). If your output file is called foo.ps (or just foo), epssplit will generate a single postscript file.


Examples of usage

These examples assume that you have set up an epssplit script somewhere in your path. See installation instructions in the README file for how to make this magic happen.

        epssplit -mar 2mm -o page.eps poster.eps

This will split poster.eps into pages written as page-0.eps, page-1.eps, etc.

        epssplit -o pages.ps -mar 2.5mm poster.eps

This will split poster.eps into several pages but all written to the same postscript file, pages.ps.

        epssplit -o files.eps -mar 5mm -O landscape -x 2 poster.eps

Print the poster such that it comes out as landscape on the pages, and with the image scaled so that its full width is two pages wide.


Author

Jens G Jensen <jens@math.u-strasbg.fr> (this address is valid at least until 1st September 1999).


Warranty and Copyright

epssplit is distributed under the GNU General Public Licence: http://www.gnu.org/copyleft/gpl.html

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.


Bugs


See also

epsmerge


Trademarks

Postscript is a trademark of Adobe Systems Inc.