XML para PDF

Neste artigo, você aprenderá como converter XML para PDF programaticamente usando Java. Esse recurso pode ser útil para gerar arquivos PDF dinamicamente a partir do XML. Além disso, o artigo também fornece o esquema XML completo usado para criar um documento PDF.

API de conversão Java XML para PDF

Para gerar arquivos PDF a partir de XML, usaremos Aspose.PDF for Java. A API foi projetada para criar, processar e converter arquivos PDF dinamicamente de dentro dos aplicativos Java. Você pode baixar o JAR da API ou instalá-lo usando as seguintes configurações do Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>21.6</version>
</dependency>

Esquema de suporte para XML para PDF

Aspose.PDF para Java fornece seu esquema XML para definir a estrutura do documento PDF. Você pode encontrar o esquema XML completo aqui.

Converter XML para PDF em Java

Vamos verificar como converter um determinado XML para PDF usando Aspose.PDF para Java. Na maioria das vezes, você terá o documento XML contendo os dados do aplicativo. Nesse caso, você primeiro o transformará no XML compatível com Aspose.PDF usando XSLT. Então vamos começar.

A seguir estão os dados XML de amostra que precisamos converter para o documento PDF.

<?xml version="1.0" encoding="utf-8" ?>
<Contents>
  <Content>Hello World!</Content>
</Contents>

Para tornar esses dados compatíveis com o XML Aspose.PDF, realizaremos a transformação XSLT. Para isso, definiremos um modelo em um arquivo de folha de estilo XSLT, conforme mostrado abaixo.

<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="text()"/>
    <xsl:template match="/Contents">
    <html>
      <Document xmlns="Aspose.Pdf" IsAutoHyphenated="false">
        <PageInfo>
          <DefaultTextState Font = "Helvetica" FontSize="8" LineSpacing="4"/>
          <Margin Left="5cm" Right="5cm" Top="3cm" Bottom="15cm" />
        </PageInfo>
        <Page id="mainSection">
          <TextFragment>
            <TextSegment>
              <xsl:value-of select="Content"/>
            </TextSegment>
          </TextFragment>
        </Page>
      </Document>
    </html>
</xsl:template>
</xsl:stylesheet>

Depois de criar o arquivo de modelo, você pode converter XML para PDF seguindo as etapas abaixo.

O exemplo de código a seguir mostra como converter um arquivo XML em PDF usando Java.

// Criar um novo documento PDF
com.aspose.pdf.Document pdfDocument = new com.aspose.pdf.Document();

// Transformar e vincular XML
pdfDocument.bindXml( "data.xml",  "stylesheet.xslt");

// Gerar PDF a partir de XML
pdfDocument.save( "generated-pdf.pdf");

PDF gerado

XML para PDF em Java

Obtenha uma licença de API gratuita

Você pode obter uma licença temporária para usar a API sem limitações de avaliação.

Conclusão

Neste artigo, você aprendeu como converter XML em PDF usando Java. Você pode integrar esse recurso em seus aplicativos Java para gerar arquivos PDF a partir de XML. Você pode aprender mais sobre a API Java PDF usando a documentação, bem como os exemplos de código-fonte disponíveis no GitHub. Caso você tenha alguma dúvida, sinta-se à vontade para nos informar através do nosso fórum.

Veja também