How can I batch convert SVG files containing text to PDF files (specifically on CentOS 5.3 x86_64)?

5

Possible Duplicate:
How do I convert an SVG to a PDF on Linux

I would like to programatically convert SVG files to PDF files. However, the SVG files contain text that must be searchable in the generated PDF files. Also, it has to work on Red Hat Enterprise Linux 5.3 or CentOS 5.3 for the x86_64 architecture. It would be nice if it were Open Source or at least not very expensive.

Here is what I've tried. All of these, except Batik, work fine on Debian Lenny.

Inkscape
I can get it installed using autopackages from http://inkscape.modevia.com/ap, but when I use it from the command line, the text is not searchable.

Batik rasterizer [sic]
When it converts SVG files to PDF files, the text is no longer searchable.

svg2pdf
The source for this and several of its dependencies are available to download. I have been trying to get it to compile on CentOS, but haven't had success yet. I found a precompiled version for Debian x86_64, but it doesn't work on CentOS.

rsvg-convert
Generated PDF isn't searchable on CentOS 5.3. Perhaps installing a newer version of cairo would help. Thanks to DaveParillo for mentioning rsvg-convert (on superuser).

SOLUTION (but perhaps some of the above will still be useful to the reader)
princeXML
It works fine on CentOS when installed from source. For some reason it doesn't work when installed from the .rpm. Thanks Erik Dahlström! (provided solution that worked for my case on stackoverflow)

Cross posted on stackoverflow

Christopher Bottoms

Posted 2009-12-04T23:57:01.113

Reputation: 1 309

Question was closed 2012-09-25T13:22:42.727

Thanks for taking the time to mention what actually worked for you. – DaveParillo – 2009-12-18T23:16:16.027

Answers

2

most tools out there are (like batik or imagemagick) are going to turn your vector data into a raster map.

I would try rsvg-convert. It uses cairo as a backend, so you may have the same compile problems you're having with svg2pdf.

DaveParillo

Posted 2009-12-04T23:57:01.113

Reputation: 13 402

2

One other (so far very little known) alternative is GhostPDL's gsvg (on Windows: gsvg.exe). GhostPDL is the sister application to Ghostscript (currently being merged into one single repostory at http://svn.ghostscript.com/ghostpdl/). GhostPDL is for SVG, XPS and PCL processing, similar to what Ghostscript is for PostScript and PDF processing. Here goes:

gsvg.exe ^
   -dBATCH ^
   -dNOPAUSE ^
   -dSAFER ^
   -sDEVICE=pdfwrite ^
   -sOutputFile=my.pdf ^
   [...more options you may want/need...] ^
   c:/path/to/my.svg

Kurt Pfeifle

Posted 2009-12-04T23:57:01.113

Reputation: 10 024

New location: git clone http://git.ghostscript.com/ghostpdl.git

– Quandary – 2015-10-21T09:48:29.290

Interesting. I'd like to know more. The repository seems to have been relocated to http://svn.ghostscript.com/ghostscript/trunk/ghostpdl/. However, I looked around and did not find gsvg.exe.

– Christopher Bottoms – 2010-07-21T13:32:01.480

@molecules: You need to build the .exe yourself. As you noted, the source location has changed. I've build trunk successfully with MSVC++ Express 2008 using the default .vcproj file that is in the Ghostscript sources. A Ghostscript 9.00 release is pending in the next few weeks -- I don't know if they will ship an binary of GhostPDL with an gsvg.exe then. – Kurt Pfeifle – 2010-08-09T15:21:06.527