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

قارن بين مستندات PDF للعثور على الاختلافات باستخدام .NET API

تتم مناقشة الموضوعات التالية هنا:

NET API لمقارنة ملفات PDF

GroupDocs.Comparison for .NET هي واجهة برمجة التطبيقات التي تتيح المقارنة بين مستندات PDF متعددة والعديد من الملفات الأخرى بنفس تنسيق المستند داخل تطبيقات .NET. سأستخدم واجهة برمجة التطبيقات هذه في أمثلة كود C # لهذه المقالة لمقارنة مستندات PDF.

يمكنك تنزيل مثبت DLL أو MSI من قسم التنزيلات أو تثبيت API في تطبيق .NET عبر NuGet.

PM> Install-Package GroupDocs.Comparison

قارن مستندات PDF باستخدام C

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

  • قم بتحميل أول مستند PDF باستخدام فئة المقارنة.
  • أضف الملف الثاني إلى المقارنة باستخدام طريقة Add ().
  • قارن كلا ملفي PDF واحصل على ملخص التغييرات باستدعاء طريقة قارن ().

يوضح مقتطف رمز C # التالي كيفية مقارنة مستندات PDF وتمييز التغييرات في المستند الناتج.

/*
 * قارن بين مستندي PDF وتغييرات Hightlight باستخدام C #
 */
using (Comparer comparer = new Comparer(@"path/document-ver1.pdf"))
{
    comparer.Add(@"path/document-ver2.pdf");
    comparer.Compare(@"path/compared-result.pdf");
}

قبول أو رفض التغييرات المحددة لملفات PDF باستخدام C

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

  • قم بتحميل ملفات PDF المصدر والهدف باستخدام فئة المقارنة.
  • قارن بين المستندات المحملة باستخدام طريقة قارن ().
  • احصل على التغييرات المحددة باستخدام طريقة GetChanges ().
  • الآن قم باجتياز التغييرات وقم بتعيين ComparisonAction.
    • حدد قبول أو رفض لكل تغيير.
  • قم باستدعاء الأسلوب ApplyChanges () للحصول على المستند الناتج بالتغييرات المقبولة.

يقارن مقتطف الكود التالي بين مستندين من مستندات PDF ثم يقبل تغييرًا محددًا ثم يرفض مستندًا آخر باستخدام C #.

/*
 * قبول التغييرات المحددة ورفضها عن طريق مقارنة مستندات PDF باستخدام C #
 */
using (Comparer comparer = new Comparer(@"path/document-1.pdf"))
{
    comparer.Add(@"path/document-2.pdf");
    comparer.Compare();
    ChangeInfo[] changes = comparer.GetChanges();
    
    // رفض أول تغيير تم تحديده ولن يتم إضافته إلى مستند النتيجة
    changes[0].ComparisonAction = ComparisonAction.Reject;
    comparer.ApplyChanges(@"path/rejected-change-result.pdf", new ApplyChangeOptions { Changes = changes, SaveOriginalState = true });

    changes = comparer.GetChanges();
    changes[0].ComparisonAction = ComparisonAction.Accept;
    comparer.ApplyChanges(@"path/accepted-change-result.pdf", new ApplyChangeOptions { Changes = changes });
}

قارن بين أكثر من ملفي PDF باستخدام C

وبالمثل ، يمكنك مقارنة أكثر من وثيقتين. فيما يلي الخطوات التي تقارن بين مستندات PDF متعددة للاختلافات وتبرز التغييرات المحددة.

  • قم بتحميل ملفات PDF الأولى باستخدام فئة المقارنة.
  • أضف مستندًا (مستندات) أخرى إلى Comparer باستخدام طريقة Add ().
  • قارن جميع ملفات PDF باستخدام طريقة قارن () واحصل على التغييرات وملخص التغييرات.

يوضح المثال التالي كيفية مقارنة ملفات PDF متعددة في C # والحصول على التغييرات في المستند الناتج.

/*
 * قارن مستندات PDF متعددة باستخدام C #
 */
using (Comparer comparer = new Comparer(@"path/document-1.pdf"))
{
    comparer.Add(@"path/document-2.pdf");
    comparer.Add(@"path/document-3.pdf");
    comparer.Add(@"path/document-4.pdf");

    comparer.Compare(@"path/compare-result.pdf");
}

قارن بين مستندات PDF المحمية بكلمة مرور باستخدام C

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

  • قم بإعداد خيارات التحميل للمستندات المصدر والهدف من خلال توفير كلمة المرور.
  • قم بتحميل المستند المصدر باستخدام فئة المقارنة.
  • أضف المستند الهدف إلى المقارنة باستخدام خيارات التحميل المعدة.
  • احصل على ملخص الاختلافات عن طريق استدعاء طريقة قارن ().

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

/*
 * قارن بين مستندات PDF المحمية بكلمة مرور باستخدام C #
 */
using (Comparer comparer = new Comparer(@"path/protected-document-1.pdf", new LoadOptions(){ Password = "SourceFilePassword" }))
{
    comparer.Add(@"path/protected-document-2.pdf", new LoadOptions() { Password = "TargetFilePassword" });
    comparer.Compare(@"path/compared-protected-docs-result.pdf");
}

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

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

استنتاج

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

تتوفر العديد من التخصيصات الأخرى للتحكم في نتائج المقارنة. يمكنك تعيين حساسية المقارنة ، وإظهار صفحة الملخص فقط ، وتجاهل الفجوات ، وما إلى ذلك. تعرف على المزيد حول GroupDocs.Comparison for .NET من التوثيق. يمكنك بناء تطبيقات مقارنة المستندات الخاصة بك للعديد من تنسيقات المستندات. للاستفسارات ، اتصل بنا عبر المنتدى.

أنظر أيضا