Convertir otros formatos de archivo a PDF en Java

Aspose.PDF for Java admite la conversión de formatos de documento, marcado y descripción de página a PDF.

Convertir OFD a PDF

Utilice este ejemplo cuando un documento OFD deba convertirse en PDF.

  1. Abra la fuente OFD pasando la ruta del archivo y OfdLoadOptions en el Document constructor.
  2. Permita que Aspose.PDF analice el paquete OFD en el modelo de documento PDF.
  3. Guarde el PDF resultante en la ruta de salida objetivo.
public static void convertOfdToPdf(Path inputFile, Path outputFile) {
       try (Document document = new Document(inputFile.toString(), new OfdLoadOptions())) {
           document.save(outputFile.toString());
       }
       System.out.println(inputFile + " converted into " + outputFile);
   }

Convertir TeX a PDF

Utilice este ejemplo cuando el contenido TeX deba renderizarse directamente como PDF.

  1. Abra la fuente TeX pasando la ruta del archivo y TeXLoadOptions en el Document constructor.
  2. Permita que Aspose.PDF interprete el marcado TeX y construya el diseño del PDF durante la carga.
  3. Guarde el PDF generado.
public static void convertTexToPdf(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString(), new com.aspose.pdf.TeXLoadOptions())) {
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PostScript a PDF

Utilice este ejemplo cuando un archivo PostScript deba convertirse en un documento PDF.

  1. Abra el origen PostScript con PsLoadOptions en el Document constructor.
  2. Deje que Aspose.PDF traduzca el flujo de descripción de página PostScript a un modelo de documento PDF.
  3. Guarde el archivo PDF convertido.
public static void convertPostScripToPdf(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString(), new PsLoadOptions())) {
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir EPS a PDF

Utilice este ejemplo cuando se deba convertir un archivo Encapsulated PostScript a PDF.

  1. Abra el origen EPS con PsLoadOptions porque EPS sigue la misma ruta de carga basada en PostScript.
  2. Cargue el archivo en un Document por lo que el contenido de la descripción de la página se convierte durante la importación.
  3. Guarde el PDF de salida.
public static void convertEpsToPdf(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString(), new PsLoadOptions())) {
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir EPUB a PDF

Utilice este ejemplo cuando un eBook EPUB deba convertirse a PDF.

  1. Abra la fuente EPUB pasando la ruta del archivo y EpubLoadOptions en el Document constructor.
  2. Permita que Aspose.PDF cargue la estructura del ebook y la convierta en páginas PDF.
  3. Guarde el PDF convertido.
public static void convertEpubToPdf(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString(), new EpubLoadOptions())) {
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir Markdown a PDF

Utilice este ejemplo cuando el contenido Markdown debe renderizarse y guardarse como PDF.

  1. Abra la fuente Markdown pasando la ruta del archivo y MdLoadOptions en el Document constructor.
  2. Permita que Aspose.PDF interprete el contenido Markdown y lo renderice en contenido de página PDF.
  3. Guarde el archivo PDF de salida.
public static void convertMdToPdf(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString(), new MdLoadOptions())) {
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir texto a PDF con un flujo de trabajo simple

Utilice este ejemplo cuando un archivo de texto plano deba convertirse rápidamente a PDF.

  1. Lea la fuente de texto plano con decodificación UTF-8 para que el contenido de texto esté disponible como una cadena Java.
  2. Cree un vacío Document y agregue un Page.
  3. Envuelva el texto en un TextFragment y agréguelo a la colección de párrafos de la página.
  4. Guarde el PDF generado.
public static void convertTxtToPdfSimple(Path inputFile, Path outputFile) throws Exception {
    String textContent = Files.readString(inputFile, StandardCharsets.UTF_8);
    try (Document document = new Document()) {
        Page page = document.getPages().add();
        page.getParagraphs().add(new TextFragment(textContent));
        page.close();
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir texto a PDF con opciones avanzadas

Utilice este ejemplo cuando el texto sin formato deba convertirse con opciones adicionales de diseño o codificación.

  1. Lea todas las líneas de texto del archivo de entrada para que se puedan inspeccionar los marcadores de salto de página durante la conversión.
  2. Cree un vacío Document y configure cada uno Page con márgenes y estado de texto predeterminado.
  3. Resuelva la fuente monoespaciada a través de FontRepository y agregue cada línea como una TextFragment.
  4. Guarde el archivo de salida después de que se complete el bucle de construcción de páginas.
public static void convertTxtToPdf(Path inputFile, Path outputFile) throws Exception {
    List<String> lines = Files.readAllLines(inputFile);
    try (Document document = new Document()) {
        com.aspose.pdf.Page page = document.getPages().add();
        page.getPageInfo().getMargin().setLeft(20);
        page.getPageInfo().getMargin().setRight(10);
        page.getPageInfo().getDefaultTextState().setFont(FontRepository.findFont("Courier New"));
        page.getPageInfo().getDefaultTextState().setFontSize(12);

        int pageCount = 1;
        for (String line : lines) {
            if (!line.isEmpty() && line.charAt(0) == '\f') {
                page = document.getPages().add();
                page.getPageInfo().getMargin().setLeft(20);
                page.getPageInfo().getMargin().setRight(10);
                page.getPageInfo().getDefaultTextState().setFont(FontRepository.findFont("Courier New"));
                page.getPageInfo().getDefaultTextState().setFontSize(12);
                pageCount++;
                if (pageCount == 4) {
                    break;
                }
            } else {
                page.getParagraphs().add(new TextFragment(line));
            }
        }
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PCL a PDF

Utilice este ejemplo cuando se deba convertir una secuencia de impresión PCL a PDF.

  1. Cree PclLoadOptions y habilite los errores de análisis suprimidos cuando se requiere un comportamiento de importación indulgente.
  2. Abra la fuente PCL pasando la ruta del archivo y las opciones de carga en el Document constructor.
  3. Guarde el resultado como PDF.
public static void convertPclToPdf(Path inputFile, Path outputFile) {
    PclLoadOptions loadOptions = new PclLoadOptions();
    loadOptions.setSupressErrors(true);
    try (Document document = new Document(inputFile.toString(), loadOptions)) {
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir XML a PDF mediante XSLT y HTML

Utilice este ejemplo cuando los datos XML deban transformarse antes de la generación final del PDF.

  1. Transforme la fuente XML con el archivo XSLT en un archivo HTML temporal llamando al método de transformación dedicado.
  2. Pase el archivo HTML generado a la función existente de conversión de HTML a PDF para que el PDF final utilice el estándar HtmlLoadOptions workflow.
  3. Elimine el archivo HTML temporal en el finally bloquear después de que la conversión se complete.
  4. Guarde el archivo PDF generado.
public static void convertXmlToPdf(Path xsltFile, Path xmlFile, Path outputFile) throws Exception {
    Path htmlFile = Files.createTempFile("aspose-pdf-xml-", ".html");
    try {
        transformXmlToHtml(xmlFile, xsltFile, htmlFile);
        HtmlToPdfExamples.convertHtmlToPdf(htmlFile, outputFile);
    } finally {
        Files.deleteIfExists(htmlFile);
    }
    System.out.println(xmlFile + " converted into " + outputFile);
}

Convertir XPS a PDF

Utilice este ejemplo cuando un documento XPS deba convertirse en PDF.

  1. Abra el origen XPS pasando la ruta del archivo y XpsLoadOptions en el Document constructor.
  2. Permita que Aspose.PDF interprete la descripción de la página XPS durante la carga del documento.
  3. Guarde el PDF convertido.
public static void convertXpsToPdf(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString(), new XpsLoadOptions())) {
        document.save(outputFile.toString());
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir XSL-FO a PDF

Utilice este ejemplo cuando el contenido XSL-FO deba renderizarse como PDF.

  1. Cree XslFoLoadOptions con la ruta XSLT para que la fuente XML pueda transformarse durante la carga.
  2. Configure el modo de manejo de errores de análisis para lanzar inmediatamente cuando se encuentre XSL-FO inválido.
  3. Abra el origen XML en un Document con esas opciones de carga.
  4. Guarde el documento PDF resultante.
public static void convertXslFoToPdf(Path xsltFile, Path xmlFile, Path outputFile) {
    XslFoLoadOptions loadOptions = new XslFoLoadOptions(xsltFile.toString());
    loadOptions.setParsingErrorsHandlingType(XslFoLoadOptions.ParsingErrorsHandlingTypes.ThrowExceptionImmediately);
    try (Document document = new Document(xmlFile.toString(), loadOptions)) {
        document.save(outputFile.toString());
    }
    System.out.println(xmlFile + " converted into " + outputFile);
}

Transformar XML a HTML intermedio

Utilice este método cuando los datos XML deban transformarse a HTML antes del paso final de conversión a PDF.

  1. Abra los archivos de entrada XML y XSLT como fuentes de transformación.
  2. Cree un Transformer desde la hoja de estilo XSLT y ejecútela contra la fuente XML.
  3. Escriba el archivo HTML transformado en el disco para que la función de conversión a PDF posterior pueda cargarlo.
private static void transformXmlToHtml(Path xmlFile, Path xsltFile, Path htmlFile) throws Exception {
    Transformer transformer = TransformerFactory.newInstance()
            .newTransformer(new StreamSource(xsltFile.toFile()));
    transformer.transform(new StreamSource(xmlFile.toFile()), new StreamResult(htmlFile.toFile()));
}