XML till PDF

I den här artikeln kommer du att lära dig hur du konverterar XML till PDF i Java. Den här funktionen kan vara användbar för att generera PDF-filer dynamiskt från XML. Dessutom innehåller artikeln också det fullständiga XML-schemat som används för att skapa ett PDF-dokument.

Java-bibliotek för att konvertera XML till PDF

För att generera PDF-filer från XML kommer vi att använda Aspose.PDF för Java. Biblioteket är utformat för att skapa, bearbeta och konvertera PDF-filer dynamiskt inifrån Java-applikationerna. Du kan också få en gratis licens och utföra gratis XML till PDF-konvertering.

Du kan antingen ladda ner bibliotekets JAR eller installera den med hjälp av följande Maven-konfigurationer.

<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>22.12</version>
</dependency>

TIPS: Om du redan har Aspose.Slides for Java, kan du använda den för att konvertera [PDF till XML](https://products.aspose. com/slides/java/conversion/pdf-to-xml/), konvertera PDF till JPG, konvertera [PDF] till PNG](https://products.aspose.com/slides/java/conversion/pdf-to-png/), konvertera [PDF till SVG](https://products.aspose.com/slides/java/conversion /pdf-to-svg/), och även konvertera PDF till andra bilder. Du kan också använda den för att konvertera PDF-dokument till icke-bildformat som HTML och importera PDF från JPG, hämta det [från PNG](https://products.aspose.com/slides/java/conversion/png-to -pdf/), och från andra bilder.

Hur man konverterar XML till PDF i Java

Supportschema för XML till PDF

Aspose.PDF för Java tillhandahåller sitt XML-schema för att definiera strukturen för PDF-dokumentet. Du kan hitta det fullständiga XML-schemat här.

Exportera XML till PDF i Java

Låt oss kolla in hur man konverterar en given XML till PDF med Aspose.PDF för Java. Oftast har du XML-dokumentet som innehåller applikationsdata. I det här fallet kommer du först att omvandla den till Aspose.PDF-kompatibel XML med XSLT. Så låt oss börja.

Följande är exempel på XML-data som vi behöver för att konvertera till PDF-dokumentet.

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

För att göra dessa data kompatibla med Aspose.PDF XML kommer vi att utföra XSLT-transformation. För detta kommer vi att definiera en mall i en XSLT-formatmallsfil, som visas nedan.

<?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>

När du har skapat mallfilen kan du fortsätta att konvertera XML till PDF genom att följa stegen nedan.

Följande kodexempel visar hur man konverterar en XML-fil till PDF med Java.

// Skapa ett nytt PDF-dokument
com.aspose.pdf.Document pdfDocument = new com.aspose.pdf.Document();

// Transformera och binda XML
pdfDocument.bindXml( "data.xml",  "stylesheet.xslt");

// Skapa PDF från XML
pdfDocument.save( "generated-pdf.pdf");

Genererad PDF

XML till PDF i Java

Gratis Java XML till PDF Converter

Du kan skaffa en tillfällig licens för att använda API:t utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har du lärt dig hur du konverterar XML till PDF med Java. Du kan integrera den här funktionen i dina Java-applikationer för att generera PDF-filer från XML. Du kan lära dig mer om Java PDF API med hjälp av dokumentationen samt källkodsexemplen som finns tillgängliga på GitHub. Om du har några frågor är du välkommen att meddela oss via vårt forum.

Se även