The current version of epspdf is based on TeXLua as scripting language and requires a recent TeX installation. If your TeX installation is old or you do not have TeX at all you can still access the legacy Ruby-based versions from this page.

Table of Contents


Epspdf has been created with TeX in mind. For TeX and its derivatives, eps and pdf are the preferred graphics formats.

Ghostscript can convert PostScript to pdf. However, few people are prepared to deal with the ghostscript command-line. Several command-line utilities try to help out, e.g. epstopdf, a2ping, and the convert utility from ImageMagick. But many users simply want a GUI.

Epspdftk adds a GUI, with buttons to select options and with dialogs for opening and saving files.

A lot more can be done if you can round-trip between PostScript and pdf. Although Ghostscript can go from pdf to PostScript, pdftops does a much better job converting text back to PostScript. This opens several new possibilities: grayscaling and computing a better boundingbox for either eps- or pdf graphics, and page selection from multipage PostScript- and pdf documents. Epspdf will use pdftops if it can find it, and silently does whatever back-and-forth conversions are necessary.

The command-line program epspdf is written in Ruby. Epspdftk, its GUI companion, in Tcl/Tk. Versions prior to 0.5 were written in Ruby/Tk.

Starting with the 2008 edition, TeX Live includes epspdf as an optional package, complete with wrapper scripts epspdf and epspdftk which can be called from the command-line without further ado.

There is also a third-party LaTeX package epspdfconversion which uses epspdf for on-the-fly conversion of eps graphics to pdf, with options to control grayscaling and boundingbox generation. See CTAN or your TeX distribution.


These are the required and optional prerequisites, which will be checked for when epspdf starts:

You may not have to install all of these yourself.


On a current Linux distribution you can almost certainly install everything from your distribution's package repositories. As to PostScript- and pdf viewers: epspdf tests for several popular viewers, but the configuration screen also lets you specify viewers manually.

Mac OS X

Note. Version 0.5.x has not been tested with Tiger.

Ruby and Tcl/Tk are already part of the operating system. Ghostscript is included in MacTeX, but is also available via e.g. MacPorts. You can get pdftops from MacPorts as part of either Poppler or xpdf. Another source is

If you want to compile xpdf yourself, which is not hard, you can ignore warnings about X, Motif or FreeType not being found since these missing libraries won't affect the compilation of pdftops.

Windows (Windows 2000 and later)

By itself, Windows lacks any of the prerequisites of epspdf. However, a TeX installation may fill some of the gaps, and there is a special Windows installer which takes care of the Ruby- and Tcl/Tk requirements. See the table below:

TeX distributionInstallerZipfile
(1) MikTeX and TeX Live ≥ 2008 include a hidden Ghostscript which is always installed, and which epspdf knows how to find. Caveat: although older versions of TeX Live include a Ghostscript installer, it is not impossible to install an older TeX Live without Ghostscript, in which case you have to provide a Ghostscript yourself.
(2) With TeX Live ≥ 2008, you are better off installing the TeX Live package, which also gives you wrappers for epspdf and epspdftk for use on the command-line and for on-the-fly conversions. You still need to install Ruby and Tcl/Tk.
TeX Live(1)No additional requirements Ruby, Tcl/Tk(2)
MiKTeXPdftops (optional) Pdftops (optional); Ruby, Tcl/Tk(optional)
Other/NoneGhostscript, pdftops (optional) Ghostscript; pdftops(optional), Ruby, Tcl/Tk (optional)

URLs for the prerequisites

Ghostscript and GSview (
Contains sources and Windows binaries. The Windows binaries come with standard GUI Windows setup programs.
Sources and Windows binaries. The Windows binaries are packaged into a zipfile, which has to be manually unpacked. The Configure screen of epspdftk lets you browse for the chosen location. You have to do this only once.
XPDF, Mac OS X binaries (
These are universal binaries.
TeX Live (
TeX Live ≥ 2008 includes pdftops, Ghostscript and optionally epspdf.
MacTeX (
MacTeX is based on TeX Live. Its set of add-ons includes Ghostscript, and can be downloaded separately.
The MacPorts Project (
MacTeX has Poppler- and xpdf packages either of which include pdftops.
Ruby one-click installer for Windows (
Ruby source code (
For those people who prefer to roll their own...
Tcl Developer Xchange (
ActiveTcl from ActiveState (


First make sure that the prerequisites are met. Then:

TeX Live ≥ 2008

Use TeX Live's package manager tlmgr for installation.

Windows setup program

Download the epspdftk setup program. You can run it in the usual way, by double-clicking. The setup program will create entries in your start menu for epspdftk and for the user manual.

The setup program has been created with NSIS.

Windows zipfile

Download the epspdf zip file, unpack it somewhere and create a batchfile epspdf.bat such as

ruby "<path_to_epspdf.rb>" %*

for epspdf.rb, and a batchfile epspdftk.bat

wish85 "<path_to_epspdftk.tcl>" %1

for epspdftk.tcl. The wish executable might also be named wish[.exe] or wish84[.exe]. The first command-line parameter will be interpreted as startup directory for the file browser. Make sure that wish85, ruby and these batchfiles are on your searchpath.

Epspdf[tk] has been tested with Windows 2000, Windows XP and Windows 7.


Download the tar.gz archive and unpack it in some directory. If you plan to use epspdf.rb from the command-line, create a symlink to epspdf.rb somewhere on your searchpath.

You can do the same for epspdftk. The first command-line parameter will be interpreted as startup directory for the file browser.

Mac OS X

Although you can install as for Unix/Linux, there is also a compressed disk image epspdf.x.x.x.dmg.gz which wraps epspdftk into a Max OS X app. Double-click once to expand, a second time to mount, then drag to the Applications folder.

Epspdf mostly duplicates functionality of Preview. But having an alternate conversion engine means that you can have another shot at problem files.

Preview programs


Epspdftk will use the default Windows programs for PostScript and pdf.


Supported PostScript viewers include evince, gv and okular. These are also listed as pdf viewers. Additional pdf viewers are xpdf, kpdf, epdfview and acroread/Adobe Reader. You can also specify a previewer manually in the configuration screen; see the user manual.

Mac OS X

Epspdftk uses the default pdf viewer under OS X, usually Preview or Adobe Reader.


Older releases


Current version. Minor initialization fix for Windows. The AppleScript wrapper for Mac OS X no longer starts a terminal. For users of Linux/Unix, there is no reason to upgrade.
Under Unix, wrapper scripts can now be replaced with simple symlinks.
Bug fix for boundingbox atend.
Ruby/Tk GUI replaced with Tcl/Tk GUI. Starpack wrapper for Windows setup version.
Fixes for compatibility with Ruby 1.9 and, under Windows, for newer Ghostscript versions. Documentation updates.
More liberal documentation license. Slight documentation updates.
Documentation: added section on bitmaps. Windows setup program: added missing Tcl/Tk licenses. Mac: double-clickable with included epspdftk replaces double-clickable add-on.
Optionally uses hires boundingbox. Faster startup due to simpler testing of prerequisites. Grayscaling: support for HSB color model, although I yet have to encounter a PostScript file using this. Manual converted to texinfo format. Windows: new View with... button; support for MikTeX's built-in Ghostscript; streamlined Ruby subset, with Tcl/Tk compiled from source.
Under Windows, now recognizes whether it is embedded in TeX Live 2008 and then can use ghostscript/pdftops from TeX Live. Also added TeX Live wrapper scripts. Uninstaller for Windows setup program. Bug fixes: now accepts non-numerical version strings for pdftops. No longer checks for viewers under Mac OS X.
Bug fixes: log rotation now works. Under Windows, sometimes boundingboxes couldn't be calculated. This was caused by double quotes within backquotes. This is now avoided by using short filenames within backquotes. Minor changes in user guide.
Minor fixes. Changes in documentation.
A computed boundingbox is now expanded by one point in all directions. This should prevent too-tight cropping. There is no interface for changing this amount; it can only be changed by hand-editing the bb_spread option in the .epspdfrc file or in the HKCU\software\epspdf registry key.
The File Open dialog remembers the last directory visited (between calls, not between program sessions).
Changes in documentation.
Fixes to the Applescript applet for starting up epspdftk under Mac OS X. It picks up the terminal search path and no longer requires correct settings in $HOME/.MacOSX/environment.plist. is now packaged separately, under Mac OS X, and now has an intact resource fork. It has been removed from the other archives.
Original release

Last revised: February 7, 2013