Class PDFtoSVGConverter

java.lang.Object
org.jpedal.examples.BaseConverter
org.jpedal.examples.svg.PDFtoSVGConverter

public class PDFtoSVGConverter extends org.jpedal.examples.BaseConverter
The main entry point for converting PDF files to SVG.

Examples

The following set of examples demonstrates some of the most common uses of PDFtoSVGConverter

Conversion with IDRViewer

This example includes a fully-featured HTML5 document viewer the converted PDF file is displayed within. This mode is recommended for users who would like a configurable viewer solution with minimal setup.

 
     SVGConversionOptions conversionOptions = new SVGConversionOptions();//Set conversion options here

     IDRViewerOptions viewerOptions = new IDRViewerOptions();//Set viewer options here

     File pdfFile = new File("C:/MyDocument.pdf");
     File outputDir = new File("C:/MyOutputDirectory/");

     //Alternative constructor exists for converting from byte array
     PDFtoSVGConverter converter = new PDFtoSVGConverter(pdfFile, outputDir, conversionOptions, viewerOptions);

     try {
         converter.convert();
     } catch (PdfException e) {
         e.printStackTrace();
     }
 
 

Conversion With No Viewer

This example converts PDF files in a simple way that allows the output to be built upon, for example for to build a custom viewer solution around the content or to use within a CMS/ERP system. Also included in the output is a properties.json file that includes information that could help build your viewing solution such as the page count, page bounds, title/author (if set), as well as any bookmarks the PDF file contains.

 
     SVGConversionOptions conversionOptions = new SVGConversionOptions();//Set conversion options here

     ContentOptions contentOptions = new ContentOptions();//Set content options here

     File pdfFile = new File("C:/MyDocument.pdf");
     File outputDir = new File("C:/MyOutputDirectory/");

     //Alternative constructor exists for converting from byte array
     PDFtoSVGConverter converter = new PDFtoSVGConverter(pdfFile, outputDir, conversionOptions, contentOptions);

     try {
         converter.convert();
     } catch (PdfException e) {
         e.printStackTrace();
     }
 
 
  • Constructor Details

    • PDFtoSVGConverter

      public PDFtoSVGConverter(byte[] pdfFileAsBytes, File outputDirectory, SVGConversionOptions svgConversionOptions, OutputModeOptions outputModeOptions)
      Constructs a new PDFtoSVGConverter. Call convert() to convert the PDF.
      Parameters:
      pdfFileAsBytes - The PDF file you wish to convert in a byte[] array.
      outputDirectory - The directory you would like the converted PDF output to.
      svgConversionOptions - The SVGConversionOptions object containing the settings to use in the conversion.
      outputModeOptions - The OutputModeOptions object containing the output mode settings to use in the conversion.
    • PDFtoSVGConverter

      public PDFtoSVGConverter(File pdfFile, File outputDirectory, SVGConversionOptions svgConversionOptions, OutputModeOptions outputModeOptions)
      Constructs a new PDFtoSVGConverter. Call convert() to convert the PDF.
      Parameters:
      pdfFile - The PDF file you wish to convert.
      outputDirectory - The directory you would like the converted PDF output to.
      svgConversionOptions - The SVGConversionOptions object containing the settings to use in the conversion.
      outputModeOptions - The OutputModeOptions object containing the output mode settings to use in the conversion.
  • Method Details

    • convert

      public void convert() throws PdfException
      Start converting the PDF file.
      Overrides:
      convert in class org.jpedal.examples.BaseConverter
      Throws:
      PdfException - When the PDF is corrupt, the password is incorrect, or a JVM option used an unknown value.
    • setCustomErrorTracker

      public void setCustomErrorTracker(ErrorTracker customErrorTracker)
      Sets a custom ErrorTracker to use during conversion allowing you to track errors and provide a timeout.

      ExampleOutputErrorTracker.java is provided as an example implementation.

      Overrides:
      setCustomErrorTracker in class org.jpedal.examples.BaseConverter
      Parameters:
      customErrorTracker - The ErrorTracker to use during conversion.
    • setCustomIO

      public void setCustomIO(CustomIO customIO)
      Sets a CustomIO to use during conversion, allowing you to control the output.

      DefaultIO.java is provided as an example implementation.

      Overrides:
      setCustomIO in class org.jpedal.examples.BaseConverter
      Parameters:
      customIO - The CustomIO to use during conversion.
    • setPassword

      public void setPassword(String password)
      Handle PDF if encrypted (may need password which must be passed in)

      Bouncy Castle provides a default password if the password is not set Otherwise the password is used from the users flag Password is set in PDF creation.

      Overrides:
      setPassword in class org.jpedal.examples.BaseConverter
      Parameters:
      password - The password of the PDF file if it has one.
    • setEncryptTempFiles

      public void setEncryptTempFiles()
      Enables encryption of all temporary files that may be created during the conversion process.

      Can also be enabled by using the JVM flag -Dorg.jpedal.pdf2html.encryptTempFiles=true

      Overrides:
      setEncryptTempFiles in class org.jpedal.examples.BaseConverter