ตรวจทานเอกสาร PDF โดยใช้ C#

คุณสามารถแก้ไขเอกสาร PDF โดยทางโปรแกรมโดยไม่ต้องติดตั้งแอปพลิเคชันภายนอกใดๆ ในฐานะนักพัฒนา C# คุณสามารถแก้ไขเอกสาร PDF ของคุณในแอปพลิเคชัน .NET ของคุณได้อย่างง่ายดาย บทความนี้จะเน้นที่วิธีการตรวจทานเอกสาร PDF โดยใช้ C#

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

C# API สำหรับการตอบกลับ PDF

สำหรับการแก้ไขในเอกสาร PDF ฉันจะใช้ GroupDocs.Redaction for .NET API ช่วยให้คุณสามารถแก้ไขไฟล์ PDF, Word, Excel, PowerPoint และรูปภาพได้ นอกจากนี้ยังช่วยให้คุณสามารถลบข้อมูลที่เป็นความลับออกจากรูปแบบที่รองรับมากกว่า 30 ประเภท คุณสามารถใช้การแก้ไขได้หลายประเภท เช่น การแก้ไขข้อความ การแก้ไขข้อมูลเมตา การแก้ไขคำอธิบายประกอบ และการแก้ไขเอกสารแบบตาราง

คุณสามารถ ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet

Install-Package GroupDocs.Redaction

แก้ไขข้อความใน PDF โดยใช้ C#

คุณสามารถใช้การแก้ไขข้อความในเอกสาร PDF ได้อย่างง่ายดายโดยทำตามขั้นตอนง่าย ๆ ที่ระบุไว้ด้านล่าง:

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแก้ไขข้อความในเอกสาร PDF โดยใช้ C#

// สร้างตัวแก้ไข
Redactor redactor = new Redactor("C:\\Files\\sample.pdf");

// สร้างการเรียบเรียงวลีที่ตรงทุกประการ
ExactPhraseRedaction redaction = new ExactPhraseRedaction("John Doe", true, new ReplacementOptions("[personal]"));

// ใช้การทำซ้ำ
RedactorChangeLog result = redactor.Apply(redaction);
if (result.Status != RedactionStatus.Failed)
{
    redactor.Save();
};
แก้ไขข้อความใน PDF โดยใช้ C#

แก้ไขข้อความใน PDF โดยใช้ C#

Redactor เป็นคลาสหลักที่ให้วิธีการต่างๆ เพื่อดำเนินการกระบวนการตรวจทานเอกสาร นอกจากนี้ยังช่วยให้คุณสามารถเปิด ตรวจทาน และบันทึกเอกสารได้อีกด้วย วิธีการ Apply() ของคลาสนี้ใช้การแก้ไขที่กำหนดไว้ในเอกสาร นอกจากนี้ เมธอด Save() ของคลาสนี้จะบันทึกเอกสารลงในไฟล์

ExactPhraseRedaction ให้วิธีการในการดำเนินการแก้ไขข้อความเพื่อแทนที่วลีที่ตรงกันทุกประการในเอกสาร นอกจากนี้ยังช่วยให้ค้นหาข้อมูลที่ละเอียดอ่อนด้วยการตั้งค่า IsCaseSensitive ให้เป็นจริง

ReplacementOptions แสดงถึงตัวเลือกสำหรับการแทนที่ข้อความที่ตรงกัน

คลาส RedactorChangeLog แสดงถึงผลลัพธ์สำหรับรายการการแก้ไขที่ส่งไปยังเมธอด Apply() ของคลาส Redactor

การทำซ้ำข้อมูลเมตาในรูปแบบ PDF โดยใช้ C#

คุณสามารถใช้การแก้ไขข้อมูลเมตาในเอกสาร PDF ได้โดยทำตามขั้นตอนง่ายๆ ที่ระบุไว้ด้านล่าง:

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

// สร้างตัวแก้ไข
Redactor redactor = new Redactor("C:\\Files\\sample.pdf");

// ลบผู้เขียน ผู้จัดการ และบริษัท
EraseMetadataRedaction redaction = new EraseMetadataRedaction(MetadataFilters.Author | MetadataFilters.Manager | MetadataFilters.Company);

// ใช้การทำซ้ำ
redactor.Apply(redaction);
redactor.Save();
ตรวจทานข้อมูลเมตาใน PDF โดยใช้ C#

ตรวจทานข้อมูลเมตาใน PDF โดยใช้ C#

คลาส EraseMetadataRedaction จัดเตรียมวิธีการลบข้อมูลเมตาทั้งหมด นอกจากนี้ยังเปิดใช้งานเพื่อลบข้อมูลเมตาที่ตรงกับ MetadataFilters เฉพาะจากเอกสาร

MetadataFilters คือรายการประเภทข้อมูลเมตาของเอกสารที่พบบ่อยที่สุด เช่น ผู้แต่ง ความคิดเห็น บริษัท

ทำซ้ำรูปภาพใน PDF โดยใช้ C#

คุณสามารถใช้การแก้ไขรูปภาพในเอกสาร PDF ได้โดยทำตามขั้นตอนง่ายๆ ด้านล่างนี้:

  • สร้างอินสแตนซ์ของคลาส Redactor ด้วยเส้นทางไฟล์อินพุต
  • กำหนดจุดวาดและขนาด
  • สร้างอินสแตนซ์คลาส ImageAreaRedaction พร้อมจุดวาดและ RegionReplacementOptions
  • เรียกเมธอด Redactor.Apply()
  • เรียกเมธอด Redactor.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแก้ไขรูปภาพในเอกสาร PDF โดยใช้ C#

// สร้างตัวแก้ไข
Redactor redactor = new Redactor("C:\\Files\\sample_with_images.pdf");

// กำหนดขนาดและจุด
System.Drawing.Point samplePoint = new System.Drawing.Point(0, 0);
System.Drawing.Size sampleSize = new System.Drawing.Size(300, 240);

// กำหนดการแก้ไขพื้นที่ภาพ
ImageAreaRedaction redaction = new ImageAreaRedaction(samplePoint,
             new RegionReplacementOptions(System.Drawing.Color.Blue, sampleSize));

// ใช้การทำซ้ำ
RedactorChangeLog result = redactor.Apply(redaction);

if (result.Status != RedactionStatus.Failed)
{
    redactor.Save();
};
ทำซ้ำรูปภาพใน PDF โดยใช้ C#

ทำซ้ำรูปภาพใน PDF โดยใช้ C#

คลาส ImageAreaRedaction อนุญาตให้วางสี่เหลี่ยมสีในพื้นที่ที่กำหนดของเอกสารรูปภาพ

คลาส RegionReplacementOption แสดงถึงพารามิเตอร์สีและพื้นที่สำหรับขอบเขตที่จะแทนที่ด้วยรูปภาพ

ใช้การโต้ตอบหลายรายการใน PDF โดยใช้ C#

คุณสามารถใช้การแก้ไขหลายรายการในเอกสาร PDF ได้โดยทำตามขั้นตอนง่ายๆ ที่ระบุไว้ด้านล่าง:

  • สร้างอินสแตนซ์ของคลาส Redactor ด้วยเส้นทางไฟล์อินพุต
  • สร้าง ExactPhraseRedaction, RegexRedaction และ EraseMetadataRedaction
  • เพิ่มการโต้ตอบที่สร้างขึ้นไปยังรายการการโต้ตอบ
  • เรียกเมธอด Redactor.Apply()
  • เรียกเมธอด Redactor.Save(), show errors if failed

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้การแก้ไขหลายรายการในเอกสาร PDF โดยใช้ C#

// สร้างตัวแก้ไข
Redactor redactor = new Redactor("C:\\Files\\sample.pdf");

// กำหนดการตอบกลับหลายรายการ
var redactionList = new Redaction[]
{
    new ExactPhraseRedaction("John Doe", new ReplacementOptions("[Client]")),
    new RegexRedaction("Redaction", new ReplacementOptions("[Product]")),
    new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions(System.Drawing.Color.Blue)),
    new EraseMetadataRedaction(MetadataFilters.All)
};

// ใช้การตอบกลับ
RedactorChangeLog result = redactor.Apply(redactionList);

// บันทึกหากนำไปใช้อย่างอื่นแสดงข้อผิดพลาด
if (result.Status == RedactionStatus.Applied)
{
    redactor.Save();
}
else if (result.Status == RedactionStatus.Failed)
{
   for (int i = 0; i < result.RedactionLog.Count; i++)
    {
        RedactorLogEntry logEntry = result.RedactionLog[i];
        if (logEntry.Result.Status != RedactionStatus.Applied)
        {
            Console.WriteLine("{0} status is {1}, details: {2}",
                logEntry.Redaction.GetType().Name,
                logEntry.Result.Status,
                logEntry.Result.ErrorMessage);
        }
    }
};
ใช้การโต้ตอบหลายรายการใน PDF โดยใช้ C#

ใช้การโต้ตอบหลายรายการใน PDF โดยใช้ C#

คลาส RegexRedaction อนุญาตให้ดำเนินการแก้ไขข้อความ คุณสามารถค้นหาและแทนที่ข้อความในเอกสารได้โดยการจับคู่ข้อความโดยใช้นิพจน์ทั่วไป

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

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

บทสรุป

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

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