
แปลง XPS เป็น PDF โดยทางโปรแกรมใน C#
ไฟล์ XPS จะกำหนดลักษณะที่ปรากฏและองค์ประกอบภาพ นอกเหนือจากกฎการเรนเดอร์และการพิมพ์ในมาร์กอัป XML เนื่องจากเอกสาร XPS ได้รับความนิยมเนื่องจากความสามารถเฉพาะตัวในการจัดการคำอธิบายประกอบหรือลายเซ็น ผู้คนอาจมีไฟล์เหล่านี้แต่ต้องการแปลงเป็น PDF เราจะพูดถึงสถานการณ์เฉพาะนี้ด้านล่างในบทความ และจะได้เรียนรู้วิธีแปลง XPS เป็น PDF โดยทางโปรแกรมใน C#
บทความนี้จะกล่าวถึงประเด็นต่อไปนี้:
C# .NET API เพื่อแปลง XPS เป็น PDF
เราจะใช้ Conholdate.Total for .NET เพื่อแปลง XPS เป็น PDF โดยทางโปรแกรม คุณสามารถ ดาวน์โหลด DLL หรือติดตั้ง API การแปลง XPS นี้โดยใช้ NuGet
Install-Package Conholdate.Total
วิธีแปลง XPS เป็น PDF โดยใช้ C#
คุณสามารถแปลงไฟล์ XPS เป็น PDF ได้โดยทำตามขั้นตอนด้านล่าง:
- เริ่มต้นออบเจ็กต์ของคลาส Stream สำหรับทั้งเอกสาร XPS และ PDF
- สร้างอินสแตนซ์ของคลาส XpsDocument โดยใช้สตรีม XPS (สร้างขึ้นในขั้นตอนก่อนหน้า) และวัตถุของคลาส XpsLoadOptions เป็นพารามิเตอร์
- เริ่มต้นวัตถุของคลาส PdfSaveOptions โดยการระบุ TextCompression, ImageCompression, JpegQualityLevel และตัวเลือกอื่น ๆ
- สร้างวัตถุของคลาส PdfDevice จากสตรีมเอาต์พุตตามที่สร้างขึ้นในขั้นตอนที่ 1
- บันทึกเอกสาร PDF โดยใช้ XpsDocument.Save(Device device, SaveOptions options) และส่งผ่านออบเจ็กต์ PdfDevice และ PdfSaveOptions ตามที่สร้างไว้ในขั้นตอนก่อนหน้า
รหัสต่อไปนี้แสดงวิธีการแปลง XPS เป็น PDF โดยใช้ C#
// เริ่มต้นสตรีมเอาท์พุต PDF
using (System.IO.Stream pdfStream = System.IO.File.Open("input.xps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
// เตรียมใช้งานสตรีมอินพุต XPS
using (System.IO.Stream xpsStream = System.IO.File.Open("XPStoPDF.pdf", System.IO.FileMode.Open, System.IO.FileAccess.Read))
{
// โหลดเอกสาร XPS จากสตรีม
XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
// หรือโหลดเอกสาร XPS โดยตรงจากไฟล์ ไม่จำเป็นต้องใช้ xpsStream
// เอกสาร XpsDocument = XpsDocument ใหม่ (inputFileName, XpsLoadOptions ใหม่ ());
// เริ่มต้นวัตถุตัวเลือกด้วยพารามิเตอร์ที่จำเป็น
Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
{
JpegQualityLevel = 100,
ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
PageNumbers = new int[] { 1, 2, 6 }
};
// สร้างอุปกรณ์เรนเดอร์สำหรับรูปแบบ PDF
Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);
document.Save(device, options);
}
รับใบอนุญาตฟรี
คุณสามารถรับ ใบอนุญาตชั่วคราวฟรี เพื่อทดสอบ API โดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ เราได้กล่าวถึงขั้นตอนการแปลง XPS เป็น PDF แล้ว สุดท้ายนี้ เราหวังว่าคุณจะได้เรียนรู้วิธีแปลง XPS เป็น PDF ใน C# โดยใช้ API การแปลง XPS คุณสามารถไปที่ เอกสาร เพื่อสำรวจคุณสมบัติอื่นๆ ของไลบรารีการแปลง XPS
ถามคำถาม
คุณสามารถแจ้งให้เราทราบคำถามหรือข้อสงสัยของคุณได้ใน ฟอรั่ม ของเรา