Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

convert pdf to svg

People also ask

Can a PDF be converted to a SVG?

Convert the PDF to SVG or PNGOnce you have created your PDF file, convert it for free using ConvertPDF. Today. Choose SVG as the output format if you want to make any modifications or change the size of the design. SVG is better and faster for most designs.

What is the best PDF to SVG converter?

Best 5 PDF to SVG Converter on Windows/Mac/Online:Inkscape. Adobe Illustrator. Zamzar. Convertio.


Inkscape can also be used to convert PDF to SVG. It's actually remarkably good at this, and although the code that it generates is a bit bloated, at the very least, it doesn't seem to have the particular issue that you are encountering in your program. I think it would be challenging to integrate it directly into Java, but inkscape provides a convenient command-line interface to this functionality, so probably the easiest way to access it would be via a system call.

To use Inkscape's command-line interface to convert a PDF to an SVG, use:

inkscape -l out.svg in.pdf

Which you can then probably call using:

Runtime.getRuntime().exec("inkscape -l out.svg in.pdf")

http://download.oracle.com/javase/1.4.2/docs/api/java/lang/Runtime.html#exec%28java.lang.String%29

I think exec() is synchronous and only returns after the process completes (although I'm not 100% sure on that), so you shoudl be able to just read "out.svg" after that. In any case, Googling "java system call" will yield more info on how to do that part correctly.


Take a look at pdf2svg:

To use

pdf2svg <input.pdf> <output.svg> [<pdf page no. or "all" >]

When using all give a filename with %d in it (which will be replaced by the page number).

pdf2svg input.pdf output_page%d.svg all

And for some troubleshooting see: http://www.calcmaster.net/personal_projects/pdf2svg/


pdftocairo can be used to convert pdf to svg. pdfcairo is part of poppler-utils.

For example to convert 2nd page of a pdf, following command can be run.

pdftocairo -svg -f 1 -l 1 input.pdf

pdftk 82page.pdf burst
sh to-svg.sh 

contents of to-svg.sh

#!/bin/bash
FILES=burst/*
for f in $FILES
do
  inkscape -l "$f.svg" "$f"
done