ملاحظة: يتم توفير هذا المستودع كما هو ولا يتم تطوير الكود بشكل نشط. إذا كنت ترغب في تحسينه، فهذا محل تقدير كبير: يرجى إجراء التغييرات وإرسال طلب سحب، وسأقوم بدمجه بكل سرور أو مساعدتك في الانتهاء منه. ومع ذلك، من فضلك لا تتوقع أي نوع من الدعم، بما في ذلك تنفيذ طلبات الميزات أو الإصلاحات. إذا لم تكن مطورًا و/أو لا ترغب في بذل أي جهد، فمن المحتمل أن هذه الأداة ليست مناسبة لك.
diff-pdf هي أداة لمقارنة ملفي PDF بشكل مرئي.
يستغرق ملفين PDF كوسائط. افتراضيًا، مخرجاته الوحيدة هي رمز الإرجاع الخاص به، وهو 0 إذا لم تكن هناك اختلافات و1 إذا كان ملفي PDF مختلفين. إذا تم إعطاؤه خيار --output-diff
، فإنه ينتج ملف PDF مع اختلافات مميزة بصريًا:
$ diff-pdf --output-diff=diff.pdf a.pdf b.pdf
هناك خيار آخر يتمثل في مقارنة الملفين بشكل مرئي في واجهة المستخدم الرسومية البسيطة، باستخدام الوسيطة --view
:
$ diff-pdf --view a.pdf b.pdf
يؤدي هذا إلى فتح نافذة تتيح لك عرض صفحات الملفات وتكبير التفاصيل. من الممكن أيضًا نقل الصفحتين نسبيًا لبعضهما البعض باستخدام أسهم Ctrl (أسهم Cmd على نظام MacOS). وهذا مفيد لتحديد اختلافات الترجمة فقط.
راجع مخرجات $ diff-pdf --help
للحصول على قائمة كاملة بالخيارات.
يتوفر الإصدار المترجم مسبقًا من الأداة لنظام التشغيل Windows كجزء من الإصدار الأخير كأرشيف ZIP، والذي يحتوي على كل ما تحتاجه لتشغيل diff-pdf. سيعمل من أي مكان تقوم بتفريغه إليه.
وبدلاً من ذلك، إذا كنت تستخدم Chocolatey، فيمكنك تثبيت diff-pdf على نظام التشغيل Windows باستخدام:
$ choco install diff-pdf
على نظام Mac، إذا كنت تستخدم Homebrew، فيمكنك استخدامه لتثبيت diff-pdf معه:
$ brew install diff-pdf
على نظام Mac، إذا كنت تستخدم Macports، فيمكنك تثبيت diff-pdf باستخدام:
$ port install diff-pdf
على فيدورا وCentOS 8:
$ sudo dnf install diff-pdf
يمكن تنزيل الإصدار المترجم مسبقًا لـ openSUSE من خدمة بناء openSUSE.
يستخدم نظام البناء Automake ولذا يلزم توفر بيئة Unix أو بيئة شبيهة بـ Unix (Cygwin أو MSYS). يتم التجميع بالطريقة المعتادة:
$ ./bootstrap
$ ./configure
$ make
$ make install
(لاحظ أن الخطوة الأولى، تشغيل البرنامج النصي ./bootstrap
، مطلوبة فقط عند التحقق من مصادر البناء من نظام التحكم في الإصدار، أي عند فقدان ملفات configure
و Makefile.in
.)
أما بالنسبة للتبعيات، فإن diff-pdf يتطلب المكتبات التالية:
$ sudo yum groupinstall "Development Tools"
$ sudo yum install wxGTK wxGTK-devel poppler-glib poppler-glib-devel
$ sudo apt-get install make automake g++
$ sudo apt-get install libpoppler-glib-dev poppler-utils libwxgtk3.2-dev
$ sudo apt-get install make automake g++
$ sudo apt-get install libpoppler-glib-dev poppler-utils libwxgtk3.0-gtk3-dev
تثبيت أدوات سطر الأوامر لـ Xcode:
$ xcode-select --install
وقم بتثبيت Homebrew أو MacPorts لإدارة التبعيات، ثم:
$ brew install automake autoconf wxmac poppler cairo pkg-config
أو
$ sudo port install automake autoconf wxWidgets-3.0 poppler cairo pkgconfig
لاحظ أن هناك العديد من المكتبات المطلوبة على نظام التشغيل Windows، حيث لا تتوفر عادةً أي من المكتبات التي تستخدمها كايرو وبوبلر. في وقت كتابة هذا التقرير، كان الغلاف المتعدي للتبعيات المذكورة أعلاه يتضمن Fontconfig وfreetype وglib وlippng وpixman وgettext وlibiconv وlibjpeg وzlib.
أولاً، ستحتاج إلى تثبيت MinGW مع بيئة MSYS2 ومترجم C++. قم بتثبيت MSYS2 باتباع التعليمات الخاصة بهم.
بمجرد التثبيت، قم بتشغيل غلاف MSYS2 MinGW. سيتم فتح نافذة طرفية. اكتب cd /c/directory/with/diff-pdf
للانتقال إلى الدليل الذي يحتوي على مصادر diff-pdf.
ستحتاج إلى تثبيت مكونات MSYS إضافية لا يتم تضمينها عادةً مع MSYS، باستخدام هذه الأوامر:
$ pacman -Syu
$ pacman -S automake autoconf pkg-config make zip pactoys
$ pacboy -S gcc:p poppler:p wxWidgets:p
أنشئ diff-pdf بنفس الطريقة الموضحة في تعليمات Unix أعلاه:
$ ./bootstrap # only if building from git repository
$ ./configure
$ make
لإنشاء أرشيف ZIP، سيتم تشغيل جميع ملفات DLL
$ make windows-dist
في نظام Unix، يكون make install
المعتاد كافيًا.
على نظام التشغيل Windows، التثبيت ليس ضروريًا، فقط انسخ الملفات في مكان ما. إذا قمت بإنشائه باتباع الإرشادات المذكورة أعلاه، فستكون جميع الملفات الضرورية موجودة في أرشيف ZIP الذي تم إنشاؤه.