EPSTOPDF(1)

NAME
epstopdf, repstopdf - convert an EPS file to PDF

SYNOPSIS
epstopdf [options] [epsfile [pdffile.pdf]]

DESCRIPTION
epstopdf converts the input PostScript file to PDF, by default using Ghostscript.

In more detail: epstopdf transforms the Encapsulated PostScript file epsfile (or standard input) so that it is guaranteed to start at the 0,0 coordinate, and it sets a page size exactly corresponding to the BoundingBox. Thus, the result needs no cropping, and the PDF MediaBox is correct.

By default, the output name is the input name with any extension replaced by .pdf. An output name ending with .pdf can also be given as a second argument on the command line, or the --outfile (-o) option can be used with any name.

The output is PDF 1.5 by default. To change this, use, for example
--gsopt=-dCompatibilityLevel=1.7
(Until epstopdf 2.28 (released September 2018), the PDF version was whatever the underlying Ghostscript or other interpreter produced by default.)

PJL commands at the start of a file are removed. DOS EPS binary files (TN 5002) are supported. Seeking from a pipe is not supported.

If the bounding box in the input is incorrect, inevitably there will be resulting problems.

OPTIONS
Options may start with either "-" or "--", and may be unambiguously abbreviated. It is best to use the full option name in scripts to avoid possible collisions with new options in the future.

General script options:

--help
    display help message and exit

--version
    display version information and exit

--outfile=file
    write result to file. If this option is not given, and --nogs or --filter is specified, write to standard output; otherwise, the default is to construct the output file name by replacing any extension in the input file with `.pdf'.

--[no]debug
    write debugging info (default: false). For maximum output, use --debug as the first option.

--[no]exact
    scan ExactBoundingBox (default: false).

--[no]filter
    read standard input and (unless --outfile is given) write standard output (default: false).

--[no]gs
    run Ghostscript (default: true). With --nogs, output (to standard output by default) the PostScript that would normally be converted; that is, the input PostScript as modified by epstopdf.

--[no]hires
    scan HiresBoundingBox (default: false).

--restricted=val
    turn on restricted mode (default: [true for repstopdf, else false]); this forbids the use of --gscmd, among other options, and imposes restrictions on the input and output file names according to the values of openin_any and openout_any (see the Web2c manual, https://tug.org/web2c). On Windows, the Ghostscript command is forced to be the TeX Live builtin gs, installed under .../tlpkg/tlgs/bin/.

Options for Ghostscript (more info below):

--gscmd=val
    pipe output to val (default: [gswin64c.exe on 64-bit Windows, gswin32c.exe on 32-bit Windows, else gs])

--gsopt=val
    include val as one argument in the gs command (can be repeated).

--gsopts=val
    split val at whitespace and include each resulting word as an argument in the gs command (can be repeated).

--autorotate=val
    set AutoRotatePages (default: None); recognized val choices: None, All, PageByPage. For EPS files, PageByPage is equivalent to All.

--[no]compress
    use compression in the output (default: true); if turned off, passes -dUseFlateCompression=false.

--device=dev
    use -sDEVICE=dev (default: pdfwrite); not allowed in restricted mode.

--[no]embed
    embed fonts (default: true); passes -dMaxSubsetPct=100 -dSubsetFonts=true -dEmbedAllFonts=true.

--[no]gray
    grayscale output (default: false); passes -sColorConversionStrategy=Gray -dProcessColorModel=/DeviceGray.

--pdfsettings=val
    use -dPDFSETTINGS=/val (default is `prepress' if --embed, else empty); recognized val choices: screen, ebook, printer, prepress, default.

--[no]quiet
    use -q, a.k.a. -dQUIET (default: false).

--res=dpi, dpixdpi
    set image resolution (default: [use gs default]).

--[no]safer
    use -d(NO)SAFER (default: true).

In addition to the specific options above, additional options to be used with gs can be specified with either or both of the two cumulative options --gsopts and --gsopt.

--gsopts takes a single string of options, which is split at whitespace; each resulting word then added to the gs command line individually.

--gsopt adds its argument as a single option to the gs command line. It can be used multiple times to specify options separately. This form must be used if a gs option or its value contains whitespace.

In restricted mode, options are limited to those with names and values known to be safe. Some options taking booleans, integers or fixed names are allowed, those taking general strings are not.

In order to give a comprehensible error message, epstopdf checks whether kpsewhich and (the specified) gs are found in the current PATH, or executable if they are specified as absolute names.

EXAMPLES
These examples all equivalently convert `test.eps' to `test.pdf':
epstopdf test.eps
epstopdf test.eps test.pdf
cat test.eps | epstopdf --filter >test.pdf
cat test.eps | epstopdf -f -o=test.pdf

Example for using HiResBoundingBox instead of BoundingBox:
epstopdf --hires test.eps

Example for epstopdf's attempt at correcting PostScript:
epstopdf --nogs test.ps >testcorr.ps

In all cases, you can add --debug to see more about what epstopdf is doing. Use --debug as the first option for maximum output.

BUGS
The case of "%%BoundingBox: (atend)" when input is not seekable (e.g., from a pipe) is not supported.

Report bugs in the program or this man page to tex-k@tug.org (https://lists.tug.org/tex-k). When reporting bugs, please include an input file and the command line options specified, so the problem can be reproduced.

SEE ALSO
gs(1), pdfcrop(1).

The epstopdf LaTeX package, which automates running this script on the fly under LaTeX: https://ctan.org/pkg/epstopdf-pkg.

AUTHOR
Originally written by Sebastian Rahtz, for Elsevier Science, with subsequent contributions from Thomas Esser, Gerben Wierda, Heiko Oberdiek, and many others. Currently maintained by Karl Berry.

Man page originally written by Jim Van Zandt.

epstopdf package page on CTAN: https://ctan.org/pkg/epstopdf.

epstopdf home page: https://tug.org/epstopdf.

You may freely use, modify and/or distribute this man page. The epstopdf script is released under the modified BSD license.

$Id: epstopdf.1 71121 2024-04-29 17:27:25Z karl $