تنقيح مستندات 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 على true.

تمثل 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 باتباع الخطوات البسيطة المذكورة أدناه:

يوضح نموذج التعليمات البرمجية التالي كيفية تنقيح الصور في مستند 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 باتباع الخطوات البسيطة المذكورة أدناه:

يوضح نموذج التعليمات البرمجية التالي كيفية تطبيق تنقيحات متعددة في مستند 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 بإجراء تنقيح النص. يمكنك البحث عن أي نص في المستند واستبداله عن طريق مطابقة نص باستخدام التعبير العادي.

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

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

استنتاج

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

أنظر أيضا