رسومات وصور XFA الأصلية التلقائية

الوحدة: HPDFXFAHeadless

HPDFXFAWriteHeadlessPDF تستهلك callbacks draws المستطيل والخط والقوس والصورة المضمّنة مباشرةً من XDP، بجانب مستهلكي النص وwidgets القائمين

كل draw ينتج Form XObject أصليًا موضوعًا على صفحة التخطيط الفعلية؛ وdraws الصور تحتوي Image XObjects حقيقية وأقنعة soft mask لـ alpha عند الحاجة

المسارات المتجهة

المستطيلات تستخدم مسارات مستطيل PDF أصلية، والخطوط تحفظ ميل slash أو backslash، والأقواس الإهليلجية تستخدم مقاطع cubic بحد أقصى 90 درجة

الحافة الفعالة الأولى تزوّد لون stroke بـ RGB وسماكة، بما يشمل عروض أقل من نقطة؛ وحدود ظهور الـ stroke تشمل نصف السماكة كي لا يقص النموذج حده الخاص

الأقواس تستهلك startAngle وsweepAngle موقعة، بدورة كاملة افتراضية ومسح مطلق أقصى 360 درجة

تلميحات دوران وتكبير وإزاحة الـ draw تطبق مرة واحدة في موضع affine منتهٍ حول مركز الـ draw، بدوران موجب عكس عقارب الساعة؛ وإحداثيات XFA أعلى-يسار تحوَّل مرة واحدة إلى أصل PDF الأصلي

‏PNG وJPEG

الصيغةالاستهلاك الأصلي الفعلي
PNG بتدرج رماديعينات 1 و2 و4 و8 و16 بت، مع توسيع العينات المعبأة إلى 8 بت وحفظ دقة 16 بت
PNG بـ RGBعينات ألوان 8 و16 بت
PNG بألوان مفهرسةمؤشرات 1 و2 و4 و8 بت توسَّع عبر اللوحة إلى عينات RGB
شفافية PNGعينات شفافة بتدرج رمادي وRGB وalpha للوحة وgrayscale-alpha وRGBA بـ 8 أو 16 بت؛ ومسارات /SMask الفعلية تحفظ دقة alpha
فلترة PNG وتشابكهاكل فلاتر صفوف PNG الخمسة وجولات Adam7، متحققًا منها عبر تنفيذات zlib والمتنبئ الأصلية المشتركة
‏JPEGإطارات بتدرج رمادي وRGB وCMYK بـ 8 بت baseline وprogressive، متحققًا منها بمفكك JPEG الأصلي المشترك قبل حفظ مسار /DCTDecode الأصلي

checksums chunks في PNG وترتيبها وأبعادها وفهارس لوحتها ونطاقات العينات الشفافة وطولها المفكوك الدقيق تُفحص قبل إرسال مرشّح؛ والبيانات المضغوطة المقطوعة أو الزائدة تفشل التهيئة

أبعاد إطارات JPEG يجب أن تتفق مع الفك الأصلي الحقيقي، وانقلاب CMYK من Adobe يُعلن صراحةً في قاموس الصورة

‏JPEG يتطلب بيئة TurboJPEG الأصلية القائمة؛ وHOTPDF_TURBOJPEG_LIBRARY يمكنها تحديد مسار مكتبة مطلق، مع مكتبات تابعة يكتشفها نظام التشغيل

نسبة أبعاد الصورة تدعم fit وnone وwidth وheight وactual؛ وكثافة PNG pHYs وJPEG JFIF تحددان حجم البكسل الفيزيائي، مع استخدام 96 dpi عندما لا توجد كثافة قابلة للاستخدام

الصور المكبَّرة تُوسَّط وتُقص إلى مستطيل draw في XFA؛ ودمج alpha يبقى عملية قارئ PDF أصليًا

السقوف والمعاملة

بايتات الصور المرمَّزة ومخازن العمل المفكوكة ومسارات الصور أو alpha الخام محدودة السقف قبل التخصيص؛ وحدود الكائنات الأصلية وحدود مسارات الصور والخطوط التراكمية تبقى فعالة

الإلغاء يُفحص أثناء تحليل chunks ونفخ البيانات وفك الصفوف ووضع الكائنات الأصلية؛ ومفكك JPEG الأصلي القائم يتلقى token المستدعي

فشل التهيئة يحفظ موضع الوجهة وطولها وبايتاتها؛ وWriteBuffer الوجهة النهائي يتبع دلالات I/O الخاصة بمسار المستدعي

الحدود الحالية

الأشكال المملوءة وتنسيق الزوايا والحدود الخاصة بكل حافة وأنماط dash والباركود ونقل الصور الخارجية وwidgets imageEdit وصيغ صور بديلة وملفات ألوان مضمّنة واتجاه Exif ما زالت تتطلب تكامل مستهلك إضافيًا

‏PNG المتحرك يُستهلك بوصفه صورته الساكنة الافتراضية؛ وexData بـ XML الأجنبي يبقى ميزة منفصلة، وهذا المحوّل للـ draws لا ينفّذ كائنات مضمّنة اعتباطية

القبول

Tests/Linux/Build-XFAHeadlessGraphicFixtures.py تنتج مصادفات حتمية لفلاتر الصفوف وAdam7 ودقة العينات والشفافية والنسبة الفيزيائية وJPEG وبروتوكول مشوّه

Tests/Linux/XFAHeadlessGraphicsTests.pas تكتب وتعيد فتح PDFs أصلية فعلية وتتحقق من حفظ المستدعي عند الفشل؛ وVerify-XFAHeadlessGraphics.py تتحقق باستقلالية من عينات الصور المفكوكة ودقة /SMask ومعاملات المتجهات والمواضع والبكسلات المصيَّرة بـ pypdf وMuPDF

الإنشاء التلقائي لـ PDF من XFA الأصلي يصف مستهلكي الحقول والنص القائمين وواجهات الخيارات والنتائج العامة