إزالة العلامات المائية من PDF C#

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

إزالة العلامات المائية من PDF - تثبيت API C#

لإزالة العلامات المائية من مستند PDF، تحتاج إلى تثبيت واجهة برمجة التطبيقات Conholdate.Total for .NET في بيئتك. قم بتنزيل ملف DLL أو استخدم أمر تثبيت NuGet أدناه:

PM> NuGet\Install-Package Conholdate.Total

إزالة العلامة المائية من PDF في C#

لإزالة العلامات المائية من مستند PDF، سنستخدم فئة Watermarker. تتيح لك هذه الأداة القوية البحث عن أي علامات مائية موجودة في المستند وإزالتها.

  • تحميل ملف PDF: نبدأ بتحميل مستند PDF باستخدام فئة Watermarker.
  • البحث عن العلامات المائية: تعمل طريقة البحث على تحديد العلامات المائية المحتملة الموجودة في المستند.
  • إزالة العلامة المائية: يقوم الكود بعد ذلك بإزالة العلامة المائية إما عن طريق تحديد فهرسها (RemoveAt(0)) أو تمرير كائن العلامة المائية مباشرة (Remove(possibleWatermarks[0])).
  • حفظ المستند: وأخيرًا، يتم حفظ المستند بدون العلامة المائية.

فيما يلي الكود الذي يوضح كيفية إزالة العلامة المائية من ملف PDF باستخدام C#.

using (Watermarker watermarker = new Watermarker("document.pdf"))
{
    PossibleWatermarkCollection possibleWatermarks = watermarker.Search();

    // قم بإزالة العلامة المائية المحتملة في الفهرس المحدد من المستند.
    possibleWatermarks.RemoveAt(0);

    // إزالة العلامة المائية المحددة الممكنة من المستند.
    possibleWatermarks.Remove(possibleWatermarks[0]);

    watermarker.Save("document.pdf");
}

يعد هذا النهج مرنًا ويسمح لك بإزالة أنواع مختلفة من العلامات المائية، مثل العلامات المائية النصية أو الصورية، بسرعة وكفاءة.

إزالة العلامة المائية للارتباط التشعبي من ملف PDF في C#

تحتوي بعض مستندات PDF على علامات مائية لروابط تشعبية، حيث تتكون العلامة المائية من عنوان URL قابل للنقر. ويمكن إزالتها من خلال استهداف الروابط التشعبية بشكل خاص. فيما يلي مثال لكيفية البحث عن العلامات المائية للروابط التشعبية وإزالتها استنادًا إلى أنماط URL محددة.

  • البحث عن الارتباطات التشعبية: يستخدم هذا الكود أولاً TextSearchCriteria مع تعبير عادي للعثور على الارتباطات التشعبية المطابقة لعنوان URL محدد (على سبيل المثال، “someurl.com”).
  • تصفية الارتباطات التشعبية: تتحقق مما إذا كانت العلامة المائية المحددة عبارة عن ارتباط تشعبي (HyperlinkPossibleWatermark).
  • إزالة الارتباط التشعبي: إذا كان ارتباطًا تشعبيًا، يقوم الكود بإخراج عنوان URL الخاص به إلى وحدة التحكم ويزيل الارتباط التشعبي من المستند.
  • حفظ المستند: يتم حفظ مستند PDF المحدث بدون علامات الارتباط التشعبي المائية.
using (Watermarker watermarker = new Watermarker("document.pdf"))
{
    PossibleWatermarkCollection watermarks = watermarker.Search(new TextSearchCriteria(new Regex(@"someurl\.com")));
   for (int i = watermarks.Count - 1; i >= 0; i--)
    {
        // تأكد من أنه سيتم إزالة الروابط التشعبية فقط.
        if (watermarks[i] is HyperlinkPossibleWatermark)
        {
            // إخراج عنوان URL الكامل للرابط التشعبي
            Console.WriteLine(watermarks[i].Text);

            // إزالة الارتباط التشعبي من المستند
            watermarks.RemoveAt(i);
        }
    }

    watermarker.Save("document.pdf");
}

تُعد هذه الطريقة مفيدة بشكل خاص إذا كنت بحاجة إلى تنظيف المستندات التي تحتوي على عناوين URL كعلامات مائية، مع التأكد من إزالة العلامات المائية الخاصة بالارتباط التشعبي المحدد فقط.

رخصة التقييم المجانية

يمكنك الحصول على ترخيص مؤقت مجاني لتقييم الميزات المختلفة دون أي قيود.

اختتام

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

انظر أيضا