Native headless document comparison

HPDFHeadlessCompare تقارن مستندين أصليين محمَّلين عبر HPDFCompareHeadlessDocuments؛ وABI لـ callback على Linux يكشف التنفيذ نفسه عبر hpdf_document_compare_json_v1 بـ type:compare

وضع Pascalوضع JSONالمحتوى المقارَن
hcmPageCountpagecountعدد أوراق شجرة الصفحات
hcmPageTextpagetextعدد الصفحات والنص Unicode المستخرج
hcmObjectCountobjectcountعدد الصفحات وعدد كائنات المراجع المتقاطعة قيد الاستخدام فيزيائيًا
hcmRenderedImagerenderedimageعدد الصفحات والأبعاد المصيَّرة وبكسلات Cairo الأصلية
hcmStructuralstructuralعدد الصفحات ورسوم الكتالوج والمعلومات وغير القابلة للوصول المقنَّنة
hcmFullfullعدد الصفحات والكائنات والرسوم المقنَّنة ونص Unicode وبكسلات مصيَّرة

التكافؤ البنيوي

المقارنة البنيوية تحل المراجع غير المباشرة وترتّب مدخلات القواميس، وتقنّن أسماء PDF وتمثيلات السلاسل النصية أو السداسية العشرية، وتفك فلاتر المسارات العادية قبل حساب hash للمحتوى بـ SHA-256

أرقام الكائنات وترتيب التسلسل وضغط المسارات العادية لا يغيّرون التكافؤ البنيوي؛ وترميزات الصور النهائية تحفظ سياسة الفلتر وفكها، بينما تُقارن الكائنات غير القابلة للوصول بوصفها multiset

قواميس التشفير وحاويات التخزين للمراجع المتقاطعة أو مسارات الكائنات مستثناة من البنية الدلالية؛ ومحتوى AES R5/R6 المصادق عليه يُقارن بعد الفك مع فرض إذن الاستخراج

فرق بنيوي يبلّغ عن مسار $Document على مستوى المستند؛ وعدّ الكائنات الفيزيائية يبقى وضعًا منفصلًا وقد يختلف عندما يستخدم محتوى مكافئ تخطيطات تخزين مختلفة

المقارنة المصيَّرة

كل صفحة تُصيَّر فعليًا بجهاز Cairo الأصلي عند DPI المنتقى؛ وبكسلات الصور المفكوكة تُدمج على أبيض وتُقارن في RGB أو luminance

التقارير تحتوي الأبعاد وعدد البكسلات المتغيّرة وأقصى فرق قناة ومتوسط الخطأ المطلق ونسبة البكسلات المتغيّرة والتشابه؛ والتشابه هو 1 - meanAbsoluteError / 255

البكسل يتغيّر عندما يتجاوز أقصى فرق قناة لديه ColorTolerance؛ والصفحة تنجح فقط عندما تتطابق الأبعاد ويلبي كل من التشابه ونسبة البكسلات المتغيّرة العتبات المهيأة

التصيير يتطلب الخطوط ومرمّزات الصور ودلالات الرسوم المدعومة نفسها كتصيير الصفحات الأصلي؛ والصفحة غير المدعومة تفشل المقارنة بدلًا من إنتاج تقرير مطابق

التنفيذ المحدود السقف

خيارات المقارنة تحدد سقوف التجوال والعمق والكائنات والمسارات المفكوكة وتحضير النص وتخزين النتائج والبكسلات المصيَّرة؛ والإلغاء يصل إلى التجوال واستخراج النص والتصيير

أبقِ كلتا نسختي المستند حيّتين ومملوكتيين حصريًا أثناء مقارنة Pascal؛ ومحتواهما الأصلي وخيارات مواردهما تُحفظ عند النجاح والفشل والإلغاء

ABI لـ Linux يقبل أسماء الأوضاع الستة الصغيرة أعلاه وأعضاء options صارمين مطابقين لحدود Pascal، إضافة إلى dpi وcolorTolerance وminimumSimilarity وmaxChangedPixelRatio وcolorSpace:rgb أو luminance

نتائج ABI تُهيأ وتُحدَّد سقوفها كاملةً قبل النشر المتزامن عبر callback؛ واستدعاءات المقبض نفسه والاستدعاءات المتزامنة بترتيب معاكس تستخدم ترتيب الأقفال الثابت القائم

حقول التقرير · المقارنة التعاقدية الدلالية · ABI لـ C الأصلي على Linux