สร้างไฟล์ PDF โดยใช้ C#

สร้างไฟล์ PDF โดยใช้ C#

ออกแบบพิมพ์เขียวของไฟล์ PDF ของคุณ สร้างตรรกะ และสร้างไฟล์ PDF ของคุณโดยใช้ .NET PDF Library รูปแบบไฟล์ PDF เป็นรูปแบบไฟล์ที่ใช้กันอย่างแพร่หลายที่สุดในปัจจุบัน การติดตั้งแอปพลิเคชันธุรกิจของคุณด้วยโปรแกรมสร้าง PDF ระดับองค์กรจะทำให้ธุรกิจของคุณได้เปรียบในการแข่งขัน library นี้ทำให้เป็นไปได้เนื่องจากมีวิธีการที่หลากหลายที่ให้คุณควบคุมการจัดการและการแปลงไฟล์ PDF ดังนั้นในบล็อกโพสต์นี้ เราจะได้เรียนรู้วิธีสร้างไฟล์ PDF โดยใช้ C# โดยทางโปรแกรม

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

การติดตั้ง API ตัวสร้าง PDF

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

ดาวน์โหลด ไฟล์ DLL หรือเรียกใช้คำสั่งต่อไปนี้ในตัวจัดการแพ็คเกจ NuGet เพื่อรวม API นี้เข้ากับโปรเจ็กต์ของคุณ

Install-Package Aspose.PDF 

สร้างไฟล์ PDF โดยใช้ C#

ตอนนี้เราพร้อมแล้วที่จะสร้างไฟล์ PDF ไฟล์แรกโดยทางโปรแกรมโดยใช้ C#

ทำตามขั้นตอนและข้อมูลโค้ดที่กล่าวถึงด้านล่าง:

  1. สร้างอินสแตนซ์ของวัตถุของคลาส Document โดยการเรียก Constructor ที่ว่างเปล่า
  2. สร้างหน้าในเอกสาร PDF โดยการเรียกเมธอด Pages.Add()
  3. สร้างวัตถุของคลาส TextFragment และเพิ่มสตริงภายในส่วน
  4. เพิ่มส่วนย่อยให้กับคอลเลกชันย่อหน้าโดยการเรียกเมธอด Paragraphs.Add
  5. บันทึกเอกสารโดยการเรียกเมธอด Save
// สร้างอินสแตนซ์วัตถุของ Document โดยการเรียก Constructor ที่ว่างเปล่า
Document doc = new Document();
// สร้างหน้าในเอกสาร Pdf โดยการเรียกเมธอด Pages.Add() 
Page page = doc.Pages.Add();
// สร้างวัตถุของคลาส TextFragment และเพิ่มสตริงภายในส่วน
TextFragment fragment = new TextFragment("This is content");
// เพิ่มส่วนย่อยให้กับคอลเลกชันย่อหน้าโดยการเรียกเมธอด Paragraphs.Add  
page.Paragraphs.Add(fragment);
// บันทึกเอกสารโดยเรียกวิธีบันทึก https://reference.aspose.com/pdf/net/aspose.pdf/document/save/#save_4
doc.Save("sample.pdf");  

เพิ่มแบบอักษรใน PDF โดยทางโปรแกรม

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

คุณสามารถทำตามขั้นตอนต่อไปนี้:

  1. สร้างวัตถุของคลาส Document
  2. สร้างหน้าในเอกสาร PDF โดยการเรียกเมธอด Pages.Add()
  3. เริ่มต้นอินสแตนซ์ของคลาส TextFragment ด้วยสตริงว่าง
  4. สร้างออบเจ็กต์ TextSegment เพื่อเพิ่มส่วนข้อความในเอกสาร PDF
  5. รับสถานะข้อความสำหรับข้อความที่วัตถุ TextSegment เป็นตัวแทนโดยการเรียกเมธอด Text.TextState()
  6. ค้นหาและค้นหาแบบอักษรที่มีชื่อแบบอักษรที่ระบุโดยการเรียกเมธอด FontRepository.FindFont
  7. ทำให้แบบอักษรฝังตัวโดยการตั้งค่าคุณสมบัติ IsEmbedded เป็นจริง
  8. ดึงสถานะข้อความของข้อความและกำหนดให้กับคุณสมบัติ TextState
  9. ตั้งค่าส่วนของข้อความในองค์ประกอบส่วนย่อยโดยการเรียกเมธอด Add
  10. เรียกใช้เมธอด Paragraphs.Add เพื่อเพิ่มส่วนย่อยให้กับคอลเลกชันย่อหน้า
  11. เรียกใช้เมธอด Save เพื่อบันทึกเอกสาร
// สร้างวัตถุของคลาสเอกสาร
Document doc = new Document();
// สร้างหน้าในเอกสาร PDF โดยการเรียกเมธอด Pages.Add()
Page page = doc.Pages.Add();
// เริ่มต้นอินสแตนซ์ของคลาส TextFragment ด้วยสตริงว่าง
TextFragment fragment = new TextFragment("");
// สร้างออบเจ็กต์ TextSegment เพื่อเพิ่มส่วนข้อความในเอกสาร PDF  
TextSegment segment = new TextSegment(" This is a sample text using Custom font.");
// รับสถานะข้อความสำหรับข้อความที่วัตถุ TextSegment เป็นตัวแทนโดยการเรียกเมธอด Text.TextState()  
TextState ts = new Text.TextState();
// ค้นหาและค้นหาแบบอักษรที่มีชื่อแบบอักษรที่ระบุโดยการเรียกเมธอด FontRepository.FindFont 
ts.Font = FontRepository.FindFont("Didot");
// ทำให้แบบอักษรถูกฝังโดยการตั้งค่าคุณสมบัติ IsEmbedded เป็นจริง 
ts.Font.IsEmbedded = true;
// ดึงสถานะข้อความของข้อความและกำหนดให้กับคุณสมบัติ TextState 
segment.TextState = ts;
// ตั้งค่าส่วนของข้อความในองค์ประกอบแฟรกเมนต์โดยการเรียกเมธอด Add  
fragment.Segments.Add(segment);
// เรียกใช้วิธีการ Paragraphs.Add เพื่อเพิ่มส่วนย่อยให้กับคอลเลกชันย่อหน้า
page.Paragraphs.Add(fragment);
// บันทึกเอกสาร
doc.Save("sample.pdf");  

ค้นหาและแทนที่ข้อความในไฟล์ PDF โดยใช้ไลบรารี .NET

ในส่วนนี้ เราจะเรียนรู้วิธีแก้ไขไฟล์ PDF โดยทางโปรแกรมใน C# เราจะใช้ฟังก์ชันการค้นหาและแทนที่ในไฟล์ PDF ที่มีอยู่

เราจะทำตามขั้นตอนและข้อมูลโค้ดที่กล่าวถึงด้านล่าง:

  1. เปิดเอกสารโดยกำหนดค่าเริ่มต้น Constructor ของคลาส Document ด้วยไฟล์ PDF ต้นฉบับ
  2. สร้างวัตถุ TextFragmentAbsorber เพื่อค้นหาอินสแตนซ์ทั้งหมดของวลีค้นหาอินพุต
  3. Pages.Accept วิธีการจะยอมรับตัวดูดซับสำหรับทุกหน้า
  4. รับส่วนของข้อความที่แยกออกมาโดยการเข้าถึงคุณสมบัติ TextFragments
  5. วนซ้ำส่วนต่างๆ แทนที่ข้อความโดยการตั้งค่าคุณสมบัติ Text ด้วยค่าใหม่ และเปลี่ยนขนาดตัวอักษรของข้อความใหม่โดยการตั้งค่า FontSize ของคุณสมบัติ TextState
  6. เรียกใช้เมธอด Save เพื่อบันทึกเอกสาร PDF ที่ได้

// เปิดเอกสารโดยการเริ่มต้น Constructor ของคลาส Document ด้วยไฟล์ PDF ต้นฉบับ
Document doc = new Document("sample.pdf");
// สร้างออบเจ็กต์ TextFragmentAbsorber เพื่อค้นหาอินสแตนซ์ทั้งหมดของวลีค้นหาอินพุต  
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("custom");
// วิธี Pages.Accept จะยอมรับตัวดูดซับสำหรับทุกหน้า
doc.Pages.Accept(textFragmentAbsorber);
// รับส่วนของข้อความที่แยกออกมาโดยการเข้าถึงคุณสมบัติ TextFragments  
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
// วนผ่านชิ้นส่วน
foreach (TextFragment textFragment in textFragmentCollection)
{
    // แทนที่ข้อความโดยการตั้งค่าคุณสมบัติข้อความด้วยค่าใหม่
    textFragment.Text = "changed";
    // เปลี่ยนขนาดตัวอักษรของข้อความใหม่โดยการตั้งค่าคุณสมบัติ FontSize ของ TextState  
    textFragment.TextState.FontSize = 18;
}
// เรียกใช้วิธีการบันทึกเพื่อบันทึกเอกสาร PDF ที่เป็นผลลัพธ์
doc.Save("ReplaceTextAll_out.pdf");

ผลลัพธ์ของข้อมูลโค้ดนี้สามารถเห็นได้ในภาพด้านล่าง:

สร้างไฟล์ PDF โดยใช้ C#

รับใบอนุญาตฟรี

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

สรุป

สิ่งนี้นำเราไปสู่จุดสิ้นสุดของโพสต์บล็อกนี้ เราได้อ่านหัวข้อสำคัญบางประการเกี่ยวกับ API ตัวสร้างไฟล์ PDF แล้ว คุณได้เรียนรู้วิธีสร้างไฟล์ PDF โดยใช้ C# และวิธีแก้ไขไฟล์ PDF ที่มีอยู่ เช่น การเพิ่มแบบอักษร การค้นหาและการแทนที่ข้อความ นอกจากนี้ คุณยังอาจไปที่ เอกสารประกอบ ของห้องสมุดนี้เพื่อทราบเกี่ยวกับวิธีการอื่นๆ นอกจากนี้ คุณอาจพบตัวอย่างโค้ดของคุณสมบัติต่างๆ ใน repo Github นี้ เราจะเผยแพร่บทความที่เป็นประโยชน์อื่น ๆ ในอนาคตอันใกล้นี้ ดังนั้นโปรดติดต่อ conholdate.com เพื่อรับทราบข้อมูลอัปเดตล่าสุด

ถามคำถาม

คุณสามารถแจ้งให้เราทราบเกี่ยวกับคำถามหรือข้อสงสัยของคุณได้ใน ฟอรั่ม

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