แปลง XML เป็น PDF ใน Python | แปลงไฟล์ XML เป็น PDF

ด้วยความโดดเด่นที่เพิ่มขึ้นของแอปพลิเคชันที่ขับเคลื่อนด้วยข้อมูล ความจำเป็นในการส่งออกข้อมูลจากไฟล์ XML ไปเป็นรูปแบบ PDF ที่เป็นที่ยอมรับในระดับสากล จึงได้รับความสำคัญอย่างมาก โพสต์ในบล็อกนี้ให้คำแนะนำทีละขั้นตอนในการแปลง XML เป็น PDF ใน Python ได้อย่างมีประสิทธิภาพ เริ่มกันเลย!

หัวข้อต่อไปนี้จะกล่าวถึงในบทความนี้:

  1. ไลบรารี Python เพื่อแปลง XML เป็น PDF
  2. แปลง XML เป็น PDF ใน Python
  3. สร้าง PDF จาก XML ใน Python
  4. แปลง XML เป็น PDF ออนไลน์
  5. แหล่งเรียนรู้ฟรี

Python Library เพื่อแปลง XML เป็น PDF

สำหรับการสร้างไฟล์ PDF จาก XML แนวทางที่ตรงไปตรงมาที่สุดคือการใช้ประโยชน์จากไลบรารี Aspose.PDF for Python ที่ออกแบบมาสำหรับการแปลง XML เป็น PDF ด้วยการติดตั้งและการใช้งานที่ง่ายดาย จึงมอบโซลูชันที่มีประสิทธิภาพสำหรับการแปลงเอกสาร XML เป็นไฟล์ PDF Aspose.PDF for Python ถือเป็นโซลูชันที่แข็งแกร่งสำหรับการสร้าง การปรับแต่ง และการแปลง PDF ช่วยให้นักพัฒนาสามารถควบคุมเวิร์กโฟลว์เอกสารได้อย่างเหนือชั้น

โปรด ดาวน์โหลดแพ็คเกจ หรือติดตั้ง API จาก PyPI โดยใช้คำสั่ง pip ต่อไปนี้ในคอนโซล:

> pip install aspose-pdf

แปลง XML เป็น PDF ใน Python

เราสามารถเปลี่ยน XML เป็น PDF ได้อย่างง่ายดายโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างวัตถุของคลาส Document
  2. ผูก XML โดยใช้เมธอด Document.bindxml(file) โดยระบุพาธของไฟล์ XML
  3. แปลง XML เป็น PDF โดยใช้เมธอด Document.save(outputfilename)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแปลงไฟล์ XML เป็น PDF โดยใช้ Python

import aspose.pdf as ap

# สร้างเอกสาร PDF ใหม่
pdfDocument = ap.Document();

# แปลงและผูก XML
pdfDocument.bind_xml( "C:\\Files\\sample.xml");

# สร้าง PDF จาก XML
pdfDocument.save( "C:\\Files\\generated-pdf.pdf");

ไฟล์ XML ต้นฉบับ

ต่อไปนี้เป็นไฟล์ XML ตัวอย่างที่เราใช้ในการแปลงเป็นเอกสาร PDF

<?xml version="1.0" encoding="utf-8" ?>
<Document xmlns="Aspose.Pdf">
  <Page>
    <TextFragment>
      <TextSegment>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla odio lorem, luctus in lorem vitae, accumsan semper lectus. Cras a auctor leo, et tincidunt lacus.</TextSegment>
    </TextFragment>
  </Page>
</Document>

เอกสาร PDF ที่สร้างขึ้น

แปลง XML เป็น PDF ใน Python

แปลง XML เป็น PDF ใน Python

สร้าง PDF จาก XML ใน Python

เรายังสามารถสร้างเอกสาร PDF จากไฟล์ XML ที่มีข้อมูลแอปพลิเคชันได้ เพื่อจุดประสงค์นี้ ขั้นแรกเราจะแปลงเป็น XML ที่เข้ากันได้กับ Aspose.PDF โดยใช้ XSLT จากนั้นจึงแปลงเป็นรูปแบบ PDF

ต่อไปนี้คือข้อมูล XML ตัวอย่างที่เราต้องแปลงเป็นเอกสาร PDF

<?xml version="1.0" encoding="utf-8" ?>
<catalog>
  <cd>
	<Content>Hello World!</Content>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
  </cd>
  <cd>
    <title>Hide your heart</title>
    <artist>Bonnie Tyler</artist>
    <country>UK</country>
    <company>CBS Records</company>
    <price>9.90</price>
    <year>1988</year>
  </cd>
  <cd>
    <title>Greatest Hits</title>
    <artist>Dolly Parton</artist>
    <country>USA</country>
    <company>RCA</company>
    <price>9.90</price>
    <year>1982</year>
  </cd>
  <cd>
    <title>Still got the blues</title>
    <artist>Gary Moore</artist>
    <country>UK</country>
    <company>Virgin records</company>
    <price>10.20</price>
    <year>1990</year>
  </cd>
  <cd>
    <title>Eros</title>
    <artist>Eros Ramazzotti</artist>
    <country>EU</country>
    <company>BMG</company>
    <price>9.90</price>
    <year>1997</year>
  </cd>
</catalog>

เพื่อให้ข้อมูลนี้เข้ากันได้กับ Aspose.PDF XML เราจะดำเนินการแปลง XSLT สำหรับสิ่งนี้ เราจะกำหนดเทมเพลตในไฟล์สไตล์ชีต XSLT ดังที่แสดงด้านล่าง

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">
  <Document xmlns="Aspose.Pdf">
  <Page>
	 <PageInfo IsLandscape="false" Height="595" Width="420">
      <Margin Top="71" Bottom="71" Left="28" Right="28" />
    </PageInfo>
    <Header>
        <Margin Top="20" />
        <Table ColumnAdjustment="AutoFitToWindow">
            <Row>
                <Cell Alignment="1">
                    <TextFragment>
                        <TextSegment>Date: 11/01/2024</TextSegment>
                    </TextFragment>
                </Cell>
                <Cell Alignment="3">
                    <TextFragment>
                        <TextSegment>Page $p / $P</TextSegment>
                    </TextFragment>
                </Cell>
            </Row>
        </Table>
    </Header>
    <HtmlFragment>
      <![CDATA[
        <h1 style="font-family:Tahoma; font-size:16pt;">My CD Collection</h1>
        ]]>
    </HtmlFragment>
    <TextFragment>
      <TextSegment>Welcome</TextSegment>
    </TextFragment>
	<Table ColumnAdjustment="AutoFitToWindow" ColumnWidths ="10 10 10 10">
      <DefaultCellPadding Top="5" Left="0" Right="0" Bottom="5" />
      <Border>
        <Top Color="Black"></Top>
        <Bottom Color="Black"></Bottom>
        <Left Color="Black"></Left>
        <Right Color="Black"></Right>
      </Border>
      <Margin Top="15" />
      <Row BackgroundColor="LightGray" MinRowHeight="20">
        <Border>
          <Bottom Color="Black"></Bottom>
        </Border>
        <Cell Alignment="2">
          <TextFragment>
            <TextSegment>Title</TextSegment>
          </TextFragment>
        </Cell>
        <Cell>
          <TextFragment>
            <TextSegment>Artist</TextSegment>
          </TextFragment>
        </Cell>
        <Cell>
          <TextFragment>
            <TextSegment>Price</TextSegment>
          </TextFragment>
        </Cell>
        <Cell>
          <TextFragment>
            <TextSegment>Year</TextSegment>
          </TextFragment>
        </Cell>
      </Row>
	  <xsl:for-each select="catalog/cd">
		<Row>
        <Cell Alignment="2">
          <TextFragment>
            <TextSegment><xsl:value-of select="title"/></TextSegment>
          </TextFragment>
        </Cell>
        <Cell>
          <TextFragment>
            <TextSegment><xsl:value-of select="artist"/></TextSegment>
          </TextFragment>
        </Cell>
        <Cell>
          <TextFragment>
            <TextSegment><xsl:value-of select="price"/></TextSegment>
          </TextFragment>
        </Cell>
        <Cell>
          <TextFragment>
            <TextSegment><xsl:value-of select="year"/></TextSegment>
          </TextFragment>
        </Cell>
      </Row>
	  </xsl:for-each>
    </Table>
  </Page>
</Document>
</xsl:template>
</xsl:stylesheet>

เมื่อเราสร้างไฟล์เทมเพลตแล้ว เราสามารถสร้าง PDF ได้โดยทำตามขั้นตอนที่กล่าวไว้ข้างต้น อย่างไรก็ตาม เราเพียงแค่ต้องเรียกใช้เมธอด Document.bindxml(xmlfile, xslfile) โดยระบุไฟล์ XML และพาธไฟล์ XSLT

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้าง PDF จากไฟล์ XML โดยใช้ Python

import aspose.pdf as ap

# สร้างเอกสาร PDF ใหม่
pdfDocument = ap.Document();

# แปลงและผูก XML
pdfDocument.bind_xml( "C:\\Files\\data.xml",  "C:\\Files\\template.xslt");

# สร้าง PDF จาก XML
pdfDocument.save( "C:\\Files\\generated-pdf-table.pdf");
สร้าง PDF จาก XML ใน Python

สร้าง PDF จาก XML ใน Python

สิทธิ์การใช้งานตัวแปลง XML เป็น PDF

คุณสามารถ รับใบอนุญาตชั่วคราว เพื่อใช้ API โดยไม่มีข้อจำกัดในการประเมิน

แปลง XML เป็น PDF ออนไลน์

คุณยังสามารถแปลงไฟล์ XML เป็นเอกสาร PDF ออนไลน์ได้โดยใช้เครื่องมือ ตัวแปลง XML เป็น PDF ฟรี

ไฟล์ XML เป็น PDF – ทรัพยากรการเรียนรู้

นอกเหนือจากการสร้างไฟล์ XML ลงในเอกสาร PDF แล้ว เรียนรู้เพิ่มเติมเกี่ยวกับการสร้าง จัดการ และแปลงเอกสาร PDF และสำรวจคุณสมบัติอื่นๆ ของไลบรารีโดยใช้แหล่งข้อมูลด้านล่าง:

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีแปลง XML เป็น PDF ใน Python แล้ว ด้วยการทำตามขั้นตอนที่ระบุไว้ในบทความนี้ คุณสามารถรวมคุณสมบัตินี้เข้ากับแอปพลิเคชัน Python ของคุณเพื่อสร้างไฟล์ PDF จาก XML ได้อย่างง่ายดาย ในกรณีที่คุณมีคำถามใดๆ โปรดแจ้งให้เราทราบผ่านทาง ฟอรัมการสนับสนุนฟรี ของเรา

ดูสิ่งนี้ด้วย