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

سيتم تناول الموضوعات التالية أدناه:

NET Redaction API لاستبدال النص

يعرض GroupDocs GroupDocs.Redaction for .NET ، وواجهة برمجة التطبيقات لتنقيح المحتوى أو إخفائه أو إزالته وحتى البيانات الوصفية للمستندات والعروض التقديمية وجداول البيانات وملفات PDF والصور داخل تطبيق .NET. لمزيد من التفاصيل حول API ، قم بزيارة وثائقها.

يمكنك تنزيل DLLs أو مثبّت MSI من قسم التنزيلات أو تثبيت واجهة برمجة التطبيقات في تطبيق .NET عبر NuGet.

PM> Install-Package GroupDocs.Redaction

لا حاجة لتثبيت أي محرر PDF ، أو أي برنامج طرف ثالث للتنقيح. فيما يلي لقطة شاشة لمستند PDF يتم استخدامه في الأمثلة أدناه. ستعمل نفس الطريقة مع تنسيقات المستندات الأخرى مع القليل جدًا من التغيير أو بدون تغيير في التعليمات البرمجية.

البحث عن كلمة أو عبارة واستبدالها في PDF باستخدام C

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

  • قم بتحميل ملف PDF باستخدام فئة Redactor.
  • ابحث عن العبارة أو الكلمة بالضبط ، باستخدام ExactPhraseRedaction و [ReplacementOptions](https://apireference.groupdocs.com/ تنقيح / صافي / groupdocs.redaction.redactions / خيارات الاستبدال).
  • قم بتطبيق التنقيح باستخدام طريقة Apply ().
  • احفظ المستند الجديد بالتغييرات باستخدام طريقة Save ().

يقوم الكود التالي بالبحث عن الكلمة واستبدالها في C #. بتعبير أدق ، يخفي كل تكرارات “John Doe” باستبداله بكلمة “\ [censored ]”.

// ابحث عن العبارة بالضبط واستبدلها ببعض النصوص الأخرى باستخدام C #
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
  redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}

إخراج الكود على النحو التالي.

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

يمكنك إجراء بحث حساس لحالة الأحرف وتنقيحها. تحل التعليمة البرمجية التالية محل وجود تحسس حالة الأحرف لكلمة “John Doe” ولكن ليس “john doe” في C #.

// ابحث عن العبارة الدقيقة (حساسة لحالة الأحرف) واستبدلها ببعض النصوص الأخرى باستخدام C #
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", true /*isCaseSensitive*/, new ReplacementOptions("[censored]")));
  redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}

إخراج الكود على النحو التالي.

استبدل النص في PDF بالتعبيرات العادية (RegEx) باستخدام C

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

  • قم بتحميل مستند PDF باستخدام فئة Redactor.
  • ابحث عن تطابق التعبير العادي باستخدام فئة RegexRedaction باستخدام فئة [ReplacementOptions](https://apireference.groupdocs.com/redaction/ net / groupdocs.redaction.redactions / خيارات الاستبدال).
  • أدخل التغييرات على المستند باستخدام طريقة Apply ().
  • احفظ المستند المنقح باستخدام طريقة Save () المناسبة.

يوضح الكود التالي كيفية العثور على نمط نص معين في مستند PDF باستخدام RegEx واستبداله / إخفائه لاحقًا بنص آخر باستخدام C #.

// ابحث عن نص باستخدام التعبير العادي واستبدله بنص آخر باستخدام C #
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
  redactor.Apply(new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
  redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}

إخراج الكود أعلاه على النحو التالي.

استبدل النص بالمربع الملون في C

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

// ابحث عن نص في ملف PDF وقم بإخفائه برسم مستطيل فوقه باستخدام C #
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions(System.Drawing.Color.Black)));
  redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}

إخراج الكود أعلاه على النحو التالي.

احصل على ترخيص API مجاني

يمكنك الحصول على ترخيص مؤقت مجاني من أجل استخدام واجهة برمجة التطبيقات بدون قيود التقييم.

استنتاج

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

لمزيد من التفاصيل حول واجهة برمجة التطبيقات ، تفضل بزيارة الوثائق. للاستفسارات ، اتصل بنا عبر المنتدى.

أنظر أيضا