C# البحث عن النص واستبداله في PDF

يتيح خيار البحث والاستبدال إمكانية استبدال جزء معين من النص في مستند دفعة واحدة. بهذه الطريقة ، لن تضطر إلى تحديد كل تكرار للنص في المستند بالكامل وتحديثه يدويًا. تذهب هذه المقالة إلى أبعد من ذلك وتغطي كيفية أتمتة ميزة البحث عن النص واستبداله في مستندات PDF. على وجه الخصوص ، ستتعلم كيفية البحث عن نص واستبداله في ملف PDF في C# .NET. سنشرح أيضًا كيفية استبدال النص في صفحة معينة ، أو منطقة صفحة باستخدام C# ..

C# .NET API للبحث عن النص واستبداله في ملف PDF - تنزيل مجاني

Aspose.PDF for .NET هي مكتبة من فئة C# توفر ميزات معالجة أساسية ومتقدمة لملفات PDF لتطبيقات .NET. تتيح لك واجهة برمجة التطبيقات أيضًا البحث عن النص واستبداله في ملفات PDF بطرق مختلفة بسلاسة. يمكنك إما تنزيل DLL الخاصة بواجهة برمجة التطبيقات أو تثبيته باستخدام NuGet.

PM> Install-Package Aspose.PDF

البحث عن نص واستبداله في PDF باستخدام C#

فيما يلي خطوات للبحث عن نص واستبداله في مستند PDF.

يوضح نموذج التعليمات البرمجية التالي كيفية البحث عن نص واستبداله في PDF باستخدام C#.

// افتح المستند
Document pdfDocument = new Document("Document.pdf");

// قم بإنشاء كائن TextAbsorber للعثور على جميع مثيلات عبارة البحث المدخلة
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("text");

// تقبل الممتص لجميع الصفحات
pdfDocument.Pages.Accept(textFragmentAbsorber);

// احصل على أجزاء النص المستخرجة
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;

// حلقة من خلال الأجزاء
foreach (TextFragment textFragment in textFragmentCollection)
{
    // تحديث النص وخصائص أخرى
    textFragment.Text = "TEXT";
    textFragment.TextState.Font = FontRepository.FindFont("Verdana");
    textFragment.TextState.FontSize = 22;
    textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Blue);
    textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
}
            
// حفظ مستند PDF الناتج.
pdfDocument.Save("updated-document.pdf");

C# استبدال النص في صفحة PDF معينة

فيما يلي خطوات للبحث عن نص واستبداله في صفحة معينة في مستند PDF.

  • استخدم فئة Document لتحميل مستند PDF باستخدام مساره.
  • قم بإنشاء مثيل لفئة TextFragmentAbsorber وقم بتوفير عبارة البحث لمنشئها.
  • اقبل أداة امتصاص النص للصفحة المطلوبة باستخدام [Document.Pages 1 .Accept (TextFragmentAbsorber)]12.
  • قم بالتكرار خلال المجموعة التي تم العثور عليها TextFragmentAbsorber.TextFragments واستبدل النص في كل جزء.
  • احفظ مستند PDF المحدث باستخدام طريقة Document.Save(String).

يوضح نموذج التعليمات البرمجية التالي كيفية البحث عن نص واستبداله في صفحة معينة من ملف PDF باستخدام C#.

// افتح المستند
Document pdfDocument = new Document("Document.pdf");

// قم بإنشاء كائن TextAbsorber للعثور على جميع مثيلات عبارة البحث المدخلة
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("text");

// اقبل الممتص حسب الرغبة
pdfDocument.Pages[1].Accept(textFragmentAbsorber);

// احصل على أجزاء النص المستخرجة
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;

// حلقة من خلال الأجزاء
foreach (TextFragment textFragment in textFragmentCollection)
{
    // تحديث النص وخصائص أخرى
    textFragment.Text = "TEXT";
    textFragment.TextState.Font = FontRepository.FindFont("Verdana");
    textFragment.TextState.FontSize = 22;
    textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Blue);
    textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
}

// حفظ مستند PDF الناتج.
pdfDocument.Save("updated-document.pdf");

استبدال النص في منطقة صفحة PDF في C#

يمكنك أيضًا البحث عن نص واستبداله في منطقة معينة من الصفحة في مستند PDF. توضح الخطوات التالية كيفية تحديد منطقة معينة ثم استبدال النص داخلها.

يوضح نموذج التعليمات البرمجية التالي كيفية البحث عن نص واستبداله في منطقة صفحة معينة في ملف PDF باستخدام C#.

// تحميل ملف PDF
Document pdf = new Document("Document.pdf");

// إنشاء كائن TextFragment Absorber
TextFragmentAbsorber TextFragmentAbsorberAddress = new TextFragmentAbsorber();

// نص البحث داخل الصفحة ملزمة
TextFragmentAbsorberAddress.TextSearchOptions.LimitToPageBounds = true;

// حدد منطقة الصفحة لـ TextSearch Options
TextFragmentAbsorberAddress.TextSearchOptions.Rectangle = new Rectangle(100, 100, 200, 200);

// البحث عن نص من الصفحة الأولى من ملف PDF
pdf.Pages[1].Accept(TextFragmentAbsorberAddress);

// التكرار من خلال TextFragment الفردية
foreach (TextFragment tf in TextFragmentAbsorberAddress.TextFragments)
{
    // تحديث النص إلى أحرف فارغة
    tf.Text = "";
}

// احفظ ملف PDF المحدث بعد استبدال النص
pdf.Save("output.pdf");

C# استبدال النص في PDF بالتعبير العادي (Regex)

يمكنك أيضًا استخدام التعبيرات العادية للبحث عن واستبدال تكرارات النص المطابقة لنمط معين. لهذا ، ما عليك سوى تقديم تعبير عادي بدلاً من عبارة البحث العادية واستخدام TextSearchOptions. فيما يلي خطوات للقيام بذلك.

يوضح نموذج التعليمات البرمجية التالي كيفية البحث عن نص واستبداله في PDF باستخدام التعبير العادي باستخدام C#.

// افتح المستند
Document pdfDocument = new Document("Document.pdf");

// قم بإنشاء كائن TextAbsorber للعثور على جميع العبارات المطابقة للتعبير العادي
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("\\d{4}-\\d{4}"); // Like 1999-2000

// تعيين خيار البحث عن النص لتحديد استخدام التعبير العادي
TextSearchOptions textSearchOptions = new TextSearchOptions(true);
textFragmentAbsorber.TextSearchOptions = textSearchOptions;

// تقبل الممتص لصفحة واحدة
pdfDocument.Pages[1].Accept(textFragmentAbsorber);

// احصل على أجزاء النص المستخرجة
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;

// حلقة من خلال الأجزاء
foreach (TextFragment textFragment in textFragmentCollection)
{
    // تحديث النص وخصائص أخرى
    textFragment.Text = "New Phrase";
    // قم بتعيين مثيل لكائن.
    textFragment.TextState.Font = FontRepository.FindFont("Verdana");
    textFragment.TextState.FontSize = 22;
    textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Blue);
    textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
}

// احفظ ملف PDF
pdfDocument.Save("output.pdf");

استنتاج

يتم اعتماد أتمتة PDF على نطاق واسع هذه الأيام من أجل معالجة مستندات PDF من داخل تطبيقات الويب أو سطح المكتب. غطت هذه المقالة ميزة أتمتة PDF مفيدة للبحث عن النص واستبداله في PDF في C#. يوضح الدليل التدريجي وعينات التعليمات البرمجية كيفية البحث عن النص واستبداله في ملف PDF كامل أو صفحة معينة في ملف PDF أو منطقة صفحة. يمكنك استكشاف المزيد من الميزات المتقدمة باستخدام وثائق من API.

أنظر أيضا