ค้นหาข้อความและเพิ่มไฮเปอร์ลิงก์
บทช่วยสอนนี้จะอธิบายวิธีใช้ Aspose.PDF สำหรับ .NET เพื่อค้นหาข้อความที่ต้องการในเอกสาร PDF เพิ่มไฮเปอร์ลิงก์ไปยังข้อความที่พบ และบันทึกเอกสารที่แก้ไข ซอร์สโค้ด C# ที่ให้มาสาธิตกระบวนการทีละขั้นตอน
ข้อกำหนดเบื้องต้น
ก่อนที่จะดำเนินการบทแนะนำต่อ โปรดแน่ใจว่าคุณมีสิ่งต่อไปนี้:
- ความรู้พื้นฐานเกี่ยวกับภาษาการเขียนโปรแกรม C#
- ติดตั้ง Aspose.PDF สำหรับไลบรารี .NET แล้ว คุณสามารถรับได้จากเว็บไซต์ Aspose หรือใช้ NuGet เพื่อติดตั้งในโครงการของคุณ
ขั้นตอนที่ 1: ตั้งค่าโครงการ
เริ่มต้นด้วยการสร้างโปรเจ็กต์ C# ใหม่ในสภาพแวดล้อมการพัฒนาแบบรวม (IDE) ที่คุณต้องการ และเพิ่มการอ้างอิงไปยังไลบรารี Aspose.PDF สำหรับ .NET
ขั้นตอนที่ 2: นำเข้าเนมสเปซที่จำเป็น
เพิ่มคำสั่งต่อไปนี้ที่จุดเริ่มต้นของไฟล์ C# ของคุณเพื่อนำเข้าเนมสเปซที่จำเป็น:
using Aspose.Pdf;
using Aspose.Pdf.Content;
using Aspose.Pdf.Facades;
using Aspose.Pdf.Text;
ขั้นตอนที่ 3: กำหนดเส้นทางไปยังไดเร็กทอรีเอกสาร
กำหนดเส้นทางไปยังไดเร็กทอรีเอกสารของคุณโดยใช้ไฟล์dataDir
ตัวแปร:
string dataDir = "YOUR DOCUMENT DIRECTORY";
แทนที่"YOUR DOCUMENT DIRECTORY"
ด้วยเส้นทางจริงไปยังไดเร็กทอรีเอกสารของคุณ
ขั้นตอนที่ 4: สร้าง TextFragmentAbsorber
สร้างกTextFragmentAbsorber
วัตถุเพื่อค้นหาทุกกรณีของวลีค้นหาอินพุต:
TextFragmentAbsorber absorber = new TextFragmentAbsorber("\\d{4}-\\d{4}");
แทนที่"\\d{4}-\\d{4}"
ด้วยรูปแบบนิพจน์ทั่วไปที่คุณต้องการ
ขั้นตอนที่ 5: เปิดใช้งานการค้นหานิพจน์ทั่วไป
เปิดใช้งานการค้นหานิพจน์ทั่วไปโดยการตั้งค่าTextSearchOptions
คุณสมบัติตัวดูดซับ:
absorber.TextSearchOptions = new TextSearchOptions(true);
ขั้นตอนที่ 6: เปิดและผูกเอกสาร PDF
สร้างกPdfContentEditor
object และผูกเข้ากับไฟล์ PDF ต้นฉบับ:
PdfContentEditor editor = new PdfContentEditor();
editor.BindPdf(dataDir + "SearchRegularExpressionPage.pdf");
แทนที่"SearchRegularExpressionPage.pdf"
ด้วยชื่อจริงของไฟล์ PDF ของคุณ
ขั้นตอนที่ 7: ยอมรับตัวดูดซับสำหรับเพจ
ยอมรับตัวดูดซับสำหรับหน้าเอกสารที่ต้องการ:
editor.Document.Pages[1].Accept(absorber);
แทนที่1
พร้อมเลขหน้าที่ต้องการ
ขั้นตอนที่ 8: เพิ่มไฮเปอร์ลิงก์ไปยังข้อความที่พบ
วนซ้ำส่วนข้อความที่ดึงมาและเพิ่มไฮเปอร์ลิงก์:
foreach (TextFragment textFragment in absorber.TextFragments)
{
textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
// สร้างสี่เหลี่ยมผืนผ้าตามตำแหน่งของส่วนของข้อความ
System.Drawing.Rectangle rect = new System.Drawing.Rectangle((int)textFragment.Rectangle.LLX,
(int)Math.Round(textFragment.Rectangle.LLY), (int)Math.Round(textFragment.Rectangle.Width + 2),
(int)Math.Round(textFragment.Rectangle.Height + 1));
//เพิ่มลิงค์เว็บให้กับสี่เหลี่ยม
editor.CreateWebLink(rect, "http://www.aspose.com", 1, System. Drawing.Color.Blue);
}
แทนที่"http://www.aspose.com"
ด้วย URL ไฮเปอร์ลิงก์ที่ต้องการ
ขั้นตอนที่ 9: บันทึกและปิดเอกสารที่แก้ไข
บันทึกเอกสารที่แก้ไขแล้วปิดเอดิเตอร์:
dataDir = dataDir + "SearchTextAndAddHyperlink_out.pdf";
editor.Save(dataDir);
editor.Close();
Console.WriteLine("\nText replaced and hyperlink added successfully based on a regular expression.\nFile saved at " + dataDir);
ตรวจสอบให้แน่ใจว่าได้เปลี่ยน"SearchTextAndAddHyperlink_out.pdf"
ด้วยชื่อไฟล์เอาต์พุตที่ต้องการ
ตัวอย่างซอร์สโค้ดสำหรับค้นหาข้อความและเพิ่มไฮเปอร์ลิงก์โดยใช้ Aspose.PDF สำหรับ .NET
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = "YOUR DOCUMENT DIRECTORY";
// สร้างวัตถุตัวดูดซับเพื่อค้นหาอินสแตนซ์ทั้งหมดของวลีค้นหาอินพุต
TextFragmentAbsorber absorber = new TextFragmentAbsorber("\\d{4}-\\d{4}");
// เปิดใช้งานการค้นหานิพจน์ทั่วไป
absorber.TextSearchOptions = new TextSearchOptions(true);
// เปิดเอกสาร
PdfContentEditor editor = new PdfContentEditor();
// ผูกไฟล์ PDF ต้นฉบับ
editor.BindPdf(dataDir + "SearchRegularExpressionPage.pdf");
// ยอมรับโช้คหน้า
editor.Document.Pages[1].Accept(absorber);
int[] dashArray = { };
String[] LEArray = { };
System.Drawing.Color blue = System.Drawing.Color.Blue;
// วนผ่านชิ้นส่วน
foreach (TextFragment textFragment in absorber.TextFragments)
{
textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.Blue;
System.Drawing.Rectangle rect = new System.Drawing.Rectangle((int)textFragment.Rectangle.LLX,
(int)Math.Round(textFragment.Rectangle.LLY), (int)Math.Round(textFragment.Rectangle.Width + 2),
(int)Math.Round(textFragment.Rectangle.Height + 1));
Enum[] actionName = new Enum[2] { Aspose.Pdf.Annotations.PredefinedAction.Document_AttachFile, Aspose.Pdf.Annotations.PredefinedAction.Document_ExtractPages };
editor.CreateWebLink(rect, "http:// Www.aspose.com", 1, สีน้ำเงิน, actionName);
editor.CreateLine(rect, "", (float)textFragment.Rectangle.LLX + 1, (float)textFragment.Rectangle.LLY - 1,
(float)textFragment.Rectangle.URX, (float)textFragment.Rectangle.LLY - 1, 1, 1, blue, "S", dashArray, LEArray);
}
dataDir = dataDir + "SearchTextAndAddHyperlink_out.pdf";
editor.Save(dataDir);
editor.Close();
Console.WriteLine("\nText replaced and hyperlink added successfully based on a regular expression.\nFile saved at " + dataDir);
บทสรุป
ยินดีด้วย! คุณได้เรียนรู้วิธีการค้นหาข้อความเฉพาะในเอกสาร PDF เพิ่มไฮเปอร์ลิงก์ไปยังข้อความที่พบ และบันทึกเอกสารที่แก้ไขโดยใช้ Aspose.PDF สำหรับ .NET เรียบร้อยแล้ว บทช่วยสอนนี้ให้คำแนะนำทีละขั้นตอน ตั้งแต่การตั้งค่าโปรเจ็กต์ไปจนถึงการดำเนินการที่จำเป็น ตอนนี้คุณสามารถรวมโค้ดนี้เข้ากับโปรเจ็กต์ C# ของคุณเองเพื่อจัดการข้อความและเพิ่มไฮเปอร์ลิงก์ในไฟล์ PDF
คำถามที่พบบ่อย
ถาม: จุดประสงค์ของบทช่วยสอน “ค้นหาข้อความและเพิ่มไฮเปอร์ลิงก์” คืออะไร
ตอบ: บทช่วยสอน “ค้นหาข้อความและเพิ่มไฮเปอร์ลิงก์” มีวัตถุประสงค์เพื่อสาธิตวิธีใช้ไลบรารี Aspose.PDF สำหรับ .NET เพื่อค้นหาข้อความเฉพาะภายในเอกสาร PDF เพิ่มไฮเปอร์ลิงก์ไปยังข้อความที่พบ จากนั้นบันทึกเอกสารที่แก้ไข บทช่วยสอนนี้จะให้คำแนะนำที่ครอบคลุมและตัวอย่างโค้ด C# เพื่ออธิบายกระบวนการทีละขั้นตอน
ถาม: บทช่วยสอนนี้ช่วยในการเพิ่มไฮเปอร์ลิงก์ไปยังข้อความเฉพาะในเอกสาร PDF ได้อย่างไร
ตอบ: บทช่วยสอนนี้จะแนะนำคุณตลอดกระบวนการใช้ไลบรารี Aspose.PDF เพื่อค้นหาข้อความเฉพาะในเอกสาร PDF ใช้ไฮเปอร์ลิงก์กับข้อความที่ระบุ และบันทึก PDF ที่แก้ไขแล้ว โดยครอบคลุมขั้นตอนที่สำคัญ เช่น การตั้งค่าโปรเจ็กต์ การโหลดเอกสาร การเปิดใช้งานการค้นหานิพจน์ทั่วไป และการเพิ่มไฮเปอร์ลิงก์ไปยังข้อความที่พบ
ถาม: จำเป็นต้องมีข้อกำหนดเบื้องต้นอะไรบ้างเพื่อปฏิบัติตามบทช่วยสอนนี้
ตอบ: ก่อนที่คุณจะเริ่มต้น คุณควรมีความเข้าใจพื้นฐานเกี่ยวกับภาษาการเขียนโปรแกรม C# นอกจากนี้ คุณต้องติดตั้งไลบรารี Aspose.PDF สำหรับ .NET ซึ่งสามารถรับได้จากเว็บไซต์ Aspose หรือติดตั้งโดยใช้ NuGet ในโปรเจ็กต์ของคุณ
ถาม: ฉันจะตั้งค่าโปรเจ็กต์ให้ปฏิบัติตามบทช่วยสอนนี้ได้อย่างไร
ตอบ: เริ่มต้นด้วยการสร้างโปรเจ็กต์ C# ใหม่ในสภาพแวดล้อมการพัฒนาแบบรวม (IDE) ที่คุณต้องการ จากนั้น เพิ่มการอ้างอิงไปยังไลบรารี Aspose.PDF สำหรับ .NET ซึ่งจะช่วยให้คุณสามารถใช้ความสามารถของไลบรารีในโครงการของคุณได้
ถาม: ฉันสามารถเพิ่มไฮเปอร์ลิงก์ไปยังข้อความเฉพาะโดยใช้บทช่วยสอนนี้ได้หรือไม่
ตอบ: ใช่ บทช่วยสอนนี้เน้นที่การเพิ่มไฮเปอร์ลิงก์ไปยังข้อความเฉพาะในเอกสาร PDF โดยเฉพาะ โดยสาธิตวิธีการค้นหาและแยกข้อความที่ต้องการโดยใช้นิพจน์ทั่วไป สร้างไฮเปอร์ลิงก์ที่เกี่ยวข้องกับส่วนของข้อความ และบันทึก PDF ที่แก้ไข
ถาม: ฉันจะกำหนดข้อความที่ต้องการค้นหาและเพิ่มไฮเปอร์ลิงก์ได้อย่างไร
ตอบ: หากต้องการระบุข้อความที่คุณต้องการค้นหาและเพิ่มไฮเปอร์ลิงก์ ให้สร้างTextFragmentAbsorber
วัตถุและกำหนดรูปแบบโดยใช้Text
พารามิเตอร์. แทนที่รูปแบบเริ่มต้น"\\d{4}-\\d{4}"
ในโค้ดของบทช่วยสอนด้วยรูปแบบนิพจน์ทั่วไปที่คุณต้องการ
ถาม: ฉันจะเปิดใช้งานการค้นหาข้อความด้วยนิพจน์ทั่วไปได้อย่างไร
ตอบ: การค้นหานิพจน์ทั่วไปเปิดใช้งานได้โดยการสร้างTextSearchOptions
วัตถุและตั้งค่าเป็นtrue
. กำหนดวัตถุนี้ให้กับTextSearchOptions
ทรัพย์สินของTextFragmentAbsorber
ตัวอย่าง. เพื่อให้แน่ใจว่ามีการใช้รูปแบบนิพจน์ทั่วไปในระหว่างการค้นหาข้อความ
ถาม: ฉันจะเพิ่มไฮเปอร์ลิงก์ไปยังข้อความที่พบได้อย่างไร
ตอบ: หลังจากระบุส่วนของข้อความโดยใช้ไฟล์TextFragmentAbsorber
บทช่วยสอนจะให้การวนซ้ำเพื่อวนซ้ำส่วนต่างๆ เหล่านี้ สำหรับแต่ละส่วนของข้อความ บทช่วยสอนจะสาธิตวิธีตั้งค่าสีข้อความเป็นสีน้ำเงินและสร้างไฮเปอร์ลิงก์โดยใช้CreateWebLink
วิธี.
ถาม: ขั้นตอนในการบันทึก PDF ที่แก้ไขแล้วพร้อมไฮเปอร์ลิงก์มีอะไรบ้าง
ตอบ: หลังจากเพิ่มไฮเปอร์ลิงก์ไปยังส่วนของข้อความที่ต้องการแล้ว ให้ใช้ไฟล์PdfContentEditor
คลาสเพื่อบันทึกเอกสารที่ถูกแก้ไข โค้ดตัวอย่างของบทช่วยสอนจะแสดงวิธีการบันทึก PDF ที่แก้ไขแล้ว ปิดตัวแก้ไข และแสดงข้อความแสดงความสำเร็จ