เพิ่ม JavaScript ให้กับไฟล์ PDF ใน C# .NET

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

C# .NET API เพื่อเพิ่มหรือลบ JavaScript ใน PDF

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

PM> Install-Package Aspose.PDF

เพิ่ม JavaScript ให้กับไฟล์ PDF ใน C#

ไฟล์ PDF รองรับ Acrobat JavaScript ซึ่งใช้แกนหลักของ JavaScript เวอร์ชัน 1.5 ของ ISO-16262 ซึ่งเดิมเรียกว่า ECMAScript เป็นภาษาสคริปต์เชิงวัตถุที่พัฒนาโดย Netscape Communications ก่อนดำเนินการเพิ่ม JavaScript ลงในไฟล์ PDF เรามาดูความแตกต่างระหว่าง Acrobat JavaScript และ HTML JavaScript ซึ่งใช้ในเว็บเบราว์เซอร์

  • Acrobat JavaScript ไม่สามารถเข้าถึงวัตถุภายในหน้า HTML ในทำนองเดียวกัน HTML JavaScript ไม่สามารถเข้าถึงวัตถุภายในไฟล์ PDF
  • HTML JavaScript สามารถจัดการวัตถุเช่นหน้าต่าง อย่างไรก็ตาม Acrobat JavaScript ไม่สามารถเข้าถึงวัตถุเฉพาะเหล่านี้ได้ แต่สามารถจัดการกับวัตถุเฉพาะ PDF ได้

ต่อไปนี้เป็นขั้นตอนในการเพิ่ม JavaScript ให้กับไฟล์ PDF ใน C#

  • โหลดไฟล์ PDF โดยใช้คลาส Document
  • สร้างอินสแตนซ์ของคลาส JavascriptAction และเริ่มต้นด้วยสคริปต์ที่ต้องการ
  • กำหนดวัตถุ JavascriptAction ให้กับคุณสมบัติ Document.OpenAction สำหรับ JavaScript ระดับเอกสาร
  • หากต้องการเพิ่ม JavaScript ระดับหน้า ให้ใช้คุณสมบัติ Document.Pages[index].Actions
  • บันทึก PDF โดยใช้วิธี Document.Save(String)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่ม JavaScript ลงใน PDF

// โหลดไฟล์ PDF
Document doc = new Document("input.pdf");

// สร้างอินสแตนซ์ JavascriptAction ด้วยคำสั่ง JavaScript ที่ต้องการ
JavascriptAction javaScript = new JavascriptAction("this.print({bUI:true,bSilent:false,bShrinkToFit:true});");

// กำหนดวัตถุ JavascriptAction ให้กับการดำเนินการที่ต้องการของเอกสาร
doc.OpenAction = javaScript;

// การเพิ่ม JavaScript ที่ระดับเพจ
doc.Pages[2].Actions.OnOpen = new JavascriptAction("app.alert('page 1 opened')");
doc.Pages[2].Actions.OnClose = new JavascriptAction("app.alert('page 1 closed')");

// บันทึกเอกสาร PDF
doc.Save("output.pdf");

เพิ่ม JavaScript ระดับเอกสารใน PDF ใน C

คุณยังสามารถเพิ่ม JavaScript ในระดับเอกสารโดยใช้คุณสมบัติ Document.JavaScript ต่อไปนี้เป็นขั้นตอนในการเพิ่ม JavaScript ในระดับเอกสารใน C#

  • โหลดไฟล์ PDF โดยใช้คลาส Document
  • ใช้คอลเลกชัน Document.JavaScript เพื่อเพิ่มฟังก์ชัน JavaScript
  • บันทึก PDF โดยใช้วิธี Document.Save(String)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่ม JavaScript ให้กับ PDF ใน C#

// โหลดหรือสร้างไฟล์ PDF
Document doc = new Document();

// เพิ่มหน้า
doc.Pages.Add();

// เพิ่ม JavaScript ระดับเอกสาร
doc.JavaScript["func1"] = "function func1() { hello(); }";
doc.JavaScript["func2"] = "function func2() { hello(); }";

// บันทึกเอกสาร PDF
doc.Save("output.pdf");

ลบ JavaScript ออกจาก PDF ใน C#

ต่อไปนี้เป็นขั้นตอนในการลบ JavaScript ออกจาก PDF ใน C#

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีลบ JavaScript ออกจาก PDF ใน C#

// โหลดเอกสาร
Document doc1 = new Document("input.pdf");

// รับและพิมพ์คีย์ JavaScript
IList keys = (System.Collections.IList)doc1.JavaScript.Keys;
foreach (string key in keys)
{
    Console.WriteLine(key + " ==> " + doc1.JavaScript[key]);
}

// ลบ JavaScript โดยใช้คีย์
doc1.JavaScript.Remove("func1");

// บันทึกเอกสาร PDF
doc1.Save("output.pdf");

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

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

บทสรุป

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

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