تبادل XFDF للتعليقات على Windows

مهام ملفات Windows وhpdf_document_execute_json_v1 تصدّران تعليقات مُخططة وتُلحقان تعليقات XFDF عبر جسر المعاملات المصادق عليه على Windows

الأنواع والخصائص المُخططة مشتركة مع XFDF للتعليقات الأصلية، بما يشمل مسارات مرفقات/sounds ثنائية محدودة السقف ومحتويات غنية بـ Unicode وكائنات popup وردودًا أمامية

مهام الملفات

{
  "schemaVersion": 1, "type": "annotations.import", "format": "xfdf",
  "input": "source.pdf", "annotationInput": "annotations.xfdf",
  "output": "annotated.pdf", "password": "owner",
  "annotationLimits": {"maxBytes": 1048576, "maxAnnotations": 1000},
  "budget": {"memoryBytes": 268435456, "outputBytes": 134217728,
    "timeMilliseconds": 60000, "resultBytes": 16777216}
}

annotations.export تستخدم نفس الصيغة والإدخال والمخرجات وكلمة السر الاختيارية، وتكتب XFDF بـ UTF-8 بدلًا من PDF؛ والاستيراد يتطلب annotationInput

المخرج يجب ألا يعيد استخدام إدخال PDF أو إدخال XFDF أو ملفات الثقة/الأدلة المقدَّمة، بما يشمل hard link قائمًا؛ والنشر يحجز شقيقًا مؤقتًا حصريًا ويتحقق من نتائج محدودة السقف ويفرغ ويغلق المرشّح ثم يستبدل الهدف ذريًا

الفشل والإلغاء يحفظان هدفًا كاملًا قائمًا ويزيلان الملف المؤقت للعملية

callbacks V1 الأصلية

استخدم hpdf_operation_v1 وhpdf_io_v1 دون تغيير من hotpdf_abi.h؛ وتبادل التعليقات لا يتطلب امتداد خطوط

حمّل PDF الوجهة بـ hpdf_document_load_from_io أولًا؛ والاستيراد يقرأ XFDF من InputIO ويكتب PDF المرشّح إلى OutputIO ويكتب JSON محدود السقف إلى ResultIO؛ والتصدير يقرأ PDF المملوك النشط ويكتب XFDF إلى OutputIO

لإدخال مشفر، أعد كلمة سر العملية المستخدمة لمصادقة PDF المحمَّل؛ وهذه العملية لا تحفظ كلمة سر ضمنية من استدعاء التحميل السابق

فقط callbacks PDF والنتيجة الناجحة يليها فحص الإلغاء النهائي تتبنّى المستند الجديد والمراجعة المملوكة؛ وcallbacks الإدخال أو المخرجات أو النتيجة الفاشلة وXML المشوه والحدود المستنفدة والإلغاء يحفظون السياق السابق

قد تتلقى callbacks بايتات مرشح قبل فشل لاحق؛ وانشر وجهة مملوكة للمستدعي فقط بعد عودة HPDF_STATUS_OK

السياسة والحدود والنتائج

الاستيراد يصادق على سلامة التواقيع القائمة وربط الموقّع بـ ESS؛ وP1 وP2 للتصديق يمنعان تغييرات التعليقات، بينما P3 تسمح بمراجعة تعليقات تحفظ البايتات الموقَّعة الأصلية

استيرادات AES-256 R5/R6 تحفظ معاملات التشفير وبادئة المراجعة الأصلية؛ والاستيراد الفارغ يصادق على السياسة ويحفظ البايتات الحالية بدقة

signaturePolicy تقبل متطلبات الثقة/الطابع الزمني/الإبطال المنطقية القائمة ومسارات الثقة الصريحة الموصوفة في تبادل بيانات النماذج على Windows

annotationLimits يمكنها خفض maxBytes وmaxAnnotations وmaxNodes وmaxDepth وmaxWorkingBytes؛ والقيم أعداد JSON صحيحة موجبة ولا يمكنها رفع الافتراضيات المحسوبة

ميزانيات العمل والمخرجات والنتيجة والكائنات والصفحات تسري أيضًا؛ وعمليات callback تقبل elapsedMilliseconds بوصفها موعدًا نهائيًا إضافيًا أضيق

التصدير يبلّغ annotationCount وskippedAnnotationCount وdecodedAttachmentBytes وoutputBytes؛ والاستيراد يبلّغ updated وoutputBytes وannotationProfile تساوي mapped-annotations-v1

الحدود

القدرات تُعلن تبادل التعليقات عبر file-job وexecute-json-v1، باستيراد إلحاقي فقط وappearanceImport=false عام وstampAppearanceImport=true محدود النطاق

نقل مظاهر الطوابع القياسية يحفظ مسارات Form فعلية وموارد خطوط وصور ورسوم لا دورية محدودة السقف عبر XML مكتوب النوع بـ base64

نقل AP العام واستبدال/إزالة التعليقات وأفعال أوسع وبيانات تعليقات FDF تبقى عملًا منفصلًا؛ وأفعال GoToR البعيدة والوجهات المحلية تستخدمان ملفيهما المحدودَي السقف القائمين

ExecuteLoadedOperation العامة وسجل callback المهام الأقدم بمقبض نقاطا دخول منفصلتان؛ ويمكن لاستدعي Pascal استخدام صنف المعاملة الصريح

تبادل FDF الثنائي

مهام الملفات نفسها وcallbacks الـ V1 نفسها تقبل format="fdf"؛ واستيرادات الملفات تقرأ FDF الثنائي من annotationInput، والتصديرات تكتب FDF الثنائي إلى المخرج المنتقى

يحفظ الملف التعريفي لرسم كائنات FDF موارد المظهر المورودة والكائنات غير المباشرة المشتركة، ويدعم الاستبدال بتعليق NM متطابق غير فارغ في الصفحة نفسها

استيراد FDF يعيد annotationProfile="pdf-object-graph-v1"؛ وupdated تعدّ تغييرات التعليقات الفعلية، والاستيراد المكافئ يحفظ المراجعة الحالية بدقة

يضيف FDF maxObjects إلى ضوابط annotationLimits الصحيحة الموجبة، ويستخدم سياسة المصادقة القائمة ونشر المرشح المحدود السقف وقواعد ملكية callback

يمكن لاستدعي Pascal استخدام THPDFWindowsFormDataTransaction.ExportAnnotationsFDF وImportAnnotationsFDF؛ وChangedAnnotations تبلغ التغييرات الفعلية لهذا الملف التعريفي

حقول FDF غير الفارغة واختلافات Differences المضمّنة تتطلب معالجة منفصلة وتفشل عمليات التعليقات فقط قبل النشر

يوفر حذف التعليقات على Windows معاملة مجهَّزة منفصلة ومهمة JSON لهويات صفحة/اسم دقيقة دون تغيير دلالات الإلحاق المخطط لـ XFDF