PDFium Delphi Component Docs

InspectPdfAMetadata الطريقة

المكوّن: TPdf  ·  الوحدة: PDFium
يُبلِّغ عن التكافؤ الدقيق بين Info و XMP وفق ISO 19005-1 للمستند النشط

الصياغة

function InspectPdfAMetadata: TPdfAMetadataReport;

ResultTPdfAMetadataReport يحتوي توفر XMP ونص خطأ التحليل وحقول عدم التطابق وثماني مقارنات لكل حقل

الوصف

تقرأ الطريقة Title و Author و Subject و Keywords و Creator و Producer و CreationDate و ModDate عبر PDFium بحيث تستخدم سلاسل PDFDocEncoding و UTF-16 فك ترميز Unicode نفسه الذي يستخدمه المستند الحي

يسجل فحص القاموس الخام وجود كل مفتاح Info بمعزل عن قيمته، فلا تُعامل السلسلة الفارغة الصريحة كأنها مفتاح غائب

يتطلب Title و Subject قيمة rdf:Alt موسومة بـ x-default، ويتطلب Author تسلسل rdf:Seq يحوي قيمة واحدة بالضبط، وتتطلب التعيينات الأخرى خاصية بسيطة توجد بمعرّف URI لفضاء الأسماء وبالاسم المحلي

تُقارن القيم النصية بنقاط ترميز Unicode الدقيقة؛ وتُقارن التواريخ كمكوّنات محلية عندما لا تحمل أيٌّ من القيمتين منطقة زمنية، أو كلحظات UTC عندما تحمل كلتاهما منطقة زمنية

يميّز TPdfAMetadataState الحالات: غير مطلوب، متكافئ، XMP مفقود، نوع RDF خاطئ، عدم تطابق قيمة، تاريخ Info غير صالح، وتاريخ XMP غير صالح

الطريقة للقراءة فقط، وتتطلب مستندًا نشطًا، ولا تعدّل حالة PDFium أو حالة المصدر

مثال

var Report: TPdfAMetadataReport;
Report := Pdf1.InspectPdfAMetadata;
if Report.HasXmpPacket and not Report.IsEquivalent then
  ShowMessage(IntToStr(Length(Report.Comparisons)) + ' fields inspected');

انظر أيضًا

NormalizePdfAMetadata, ValidatePdfA, ReadXmpPacket, FPdfXmp