
XML(eXtensible Markup Language) adalah format yang banyak digunakan untuk kompatibilitas data, sementara PDF(Portable Document Format) adalah pilihan utama untuk membuat dan berbagi dokumen dalam format yang dapat dibaca dan dicetak. Dalam panduan ini, kita akan menjelajahi bagaimana cara mengonversi XML ke PDF dengan lancar menggunakan C#.
Mengapa Mengonversi XML ke PDF?
Sebelum masuk ke detail teknis, mari kita diskusikan secara singkat mengapa Anda mungkin perlu mengonversi XML ke PDF. XML sangat bagus untuk menyimpan data, tetapi tidak terlalu ramah pengguna dalam hal representasi visual. PDF, di sisi lain, menawarkan format yang halus dan standar untuk menyajikan informasi. Dengan mengonversi XML ke PDF, Anda dapat membuat dokumen yang terlihat profesional dengan mudah, cocok untuk dibagikan, dicetak, dan tujuan pengarsipan.
XML to PDF Converter - Pemasangan API C#
Anda dapat menginstal Conholdate.Total for .NET di sisi Anda dengan mengunduh file DLL atau menjalankan perintah instalasi NuGet berikut:
PM> NuGet\Install-Package Conholdate.Total
Convert XML to PDF in C#
Untuk contoh konversi XML ke PDF dalam C#, kita akan menggunakan file XML sampel berikut:
<?xml version="1.0" encoding="utf-8" ?>
<Document xmlns="Aspose.Pdf">
<Page id="mainPage">
<TextFragment>
<TextSegment>Hello</TextSegment>
</TextFragment>
<TextFragment>
<TextSegment>World!</TextSegment>
</TextFragment>
</Page>
</Document>
Selanjutnya, Anda perlu mengikuti langkah-langkah di bawah ini untuk melanjutkan konversi XML ke PDF:
- Instantiate a Document class object to load the input XML file.
- Gabungkan file sumber dengan metode BindXml.
- Convert XML ke PDF dengan metode Save.
Kode contoh berikut menunjukkan bagaimana cara mengonversi XML ke PDF di C#:
// Instantiate Document object
Document doc = new Document();
// Bind source XML file
doc.BindXml(dataDir + "input.xml");
// Convert XML to PDF
doc.Save(dataDir + "XMLToPDF.pdf");
Namun, perlu dicatat di sini bahwa file XML sumber harus mengikuti XSD schema untuk konversi.
Convert XML dan XSLT ke PDF dalam C#
Dalam beberapa skenario, Anda mungkin memiliki file XML kustom untuk yang perlu Anda buat dokumen PDF. Jadi Anda dapat membuat file XSLT untuk memproses file XML kustom seperti yang dijelaskan dalam file sampel berikut:
Sample XML File
<?xml version="1.0" encoding="utf-8" ?>
<Contents>
<Content>Hello World!</Content>
</Contents>
Sample XSLT File
<?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>
Sekarang langkah-langkah berikut menjelaskan tentang konversi dokumen XML dan XSLT ke dokumen PDF dalam C#:
- Buat objek dari kelas Document.
- Bind the XML and XSLT files.
- Simpan dokumen PDF yang dihasilkan.
Potongan kode di bawah ini menjelaskan cara mengonversi XML dan XSLT menjadi PDF di C#:
//Create pdf document
Aspose.Pdf.Document pdf = new Aspose.Pdf.Document();
//Mengikat file XML dan XSLT
try
{
pdf.BindXml("hello-world.xml", "hello-world.xslt");
}
catch (System.Exception)
{
throw;
}
//Save the document
pdf.Save("HelloWorldXml.pdf");
Lisensi Evaluasi Gratis
Anda dapat meminta lisensi sementara gratis untuk mengevaluasi semua fitur API tanpa watermark atau batasan.
Menyimpulkan
Dalam tutorial ini, Anda telah mempelajari dasar-dasar mengonversi XML ke PDF dalam C# bersama dengan cuplikan kode contoh dan file sampel. Ini memungkinkan Anda mengubah data XML Anda menjadi dokumen PDF yang menarik secara visual dan dapat dibagikan. Apakah Anda membangun alat pelaporan, menghasilkan faktur, atau membuat dokumentasi, konversi XML ke PDF akan memperlancar proses konversi dokumen dalam aplikasi Anda. Jika ada pertanyaan, silakan merasa bebas untuk menghubungi kami di forum.