function GetSkiaRenderCapabilities: TPdfSkiaRenderCapabilities;
function GetPrintOutputCapabilities: TPdfPrintOutputCapabilities;
تحمّل كلا الاستعلامين وحدة PDFium المختارة عند اللزوم ولا يُبلِّغان إلا عن التصديرات الموجودة في تلك الوحدة بعينها
التصديرات الاختيارية المفقودة لا تمنع أبدًا تحميل PDFium الطبيعي أو التصيير النقطي أو التحرير أو الحفظ
يشير TPdfSkiaRenderCapabilities.PageSceneCache إلى أن RenderPageSkiaByIndex يستطيع إعادة استخدام مخزن الصفحات المحللة المحدود الذي يملكه TPdf
يشير TPdfSkiaRenderCapabilities.FormOverlay إلى أن تصدير النماذج الاختياري المنفصل يستطيع رسم طبقة النماذج العلوية بعد محتوى الصفحة
يكون TPdfPrintOutputCapabilities.VersionCompatible صحيحًا فقط عندما تعيد الإضافة قيمة PdfPrintOutputAbiVersion بالضبط
يكون TPdfPrintOutputCapabilities.ExtensionPresent صحيحًا بمجرد تحميل إضافة خرج الطباعة، ويحمل AbiVersion رقم ABI الخام الذي تُبلِّغ عنه
تبوّب SpotPlateRendering و OverprintDetection و OverprintPreview الوظائف RenderSpotPlate و PageUsesOverprint و RenderOverprintPreview
procedure TPdf.RenderPageSkia(Canvas: FPDF_SKIA_CANVAS; Width, Height: Integer; DrawFormOverlay: Boolean = True);
procedure TPdf.RenderPageSkiaByIndex(Canvas: FPDF_SKIA_CANVAS; PageNumber, Width, Height: Integer; DrawFormOverlay: Boolean = True);
يملك المستدعي SkCanvas الأصلي ويمرره كـ FPDF_SKIA_CANVAS
ترسم RenderPageSkia الصفحة النشطة بينما ترسم RenderPageSkiaByIndex أي صفحة بواحد أساس دون تغيير PageNumber
عند طلب ذلك ووجود بيئة ملء نماذج، تُرسم طبقة النماذج العلوية بعد محتوى الصفحة عبر تصدير النماذج الاختياري المنفصل
تقبل واجهة Skia الأصلية حجمًا بالبكسلات لكنها لا تكشف معاملي الدوران والأعلام الخاصين بالمصيّر النقطي
function TPdf.SpotPlates: TPdfSpotPlateInfos;
function TPdf.PageUsesOverprint: Boolean;
function TPdf.RenderSpotPlate(PlateIndex, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmap;
function TPdf.RenderOverprintPreview(Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmap;
تستدعي هذه الطرق إضافة خرج الطباعة الاختيارية فقط عندما يتوافق إصدارها وعلم قدرتها وتصدير الدالة المقابل معًا
الصور النقطية المُعادة ملك للمستدعي وتستخدم مسار PDFium النقطي المحدود نفسه الذي يستخدمه التصيير العادي
عندما تغيب الإضافة ترفع كل عملية EPdfError بدلًا من محاكاة الألواح من خرج RGB أو الادعاء بسلوك طباعة فوقية غير دقيق
| التصدير | العقد |
|---|---|
PDFiumPas_GetPrintOutputAbiVersion | يعيد PdfPrintOutputAbiVersion كقيمة غير موقَّعة بـ 32 بت |
PDFiumPas_GetPrintOutputCapabilities | يعيد أعلام قدرات تعداد الألوان المباشرة وتصييرها وكشف الطباعة الفوقية ومعاينتها المعلَنة |
PDFiumPas_PageCountSpotPlates | يعيد عدد ألواح غير سالب ومحدودًا لـ FPDF_PAGE واحد |
PDFiumPas_PageGetSpotPlateName | يعيد عدد بايتات UTF-8 شامل الصفر الختامي ولا يكتب إلا داخل المخزن المزوَّد |
PDFiumPas_PageUsesOverprint | يعيد FPDF_BOOL بـ 32 بت لصفحة واحدة |
PDFiumPas_RenderSpotPlate | يصيّر لوحًا واحدًا صفر الأساس في FPDF_BITMAP يملكه المستدعي |
PDFiumPas_RenderOverprintPreview | يصيّر معاينة طباعة فوقية مُدارة الألوان في FPDF_BITMAP يملكه المستدعي |
تستخدم كل دوال ABI الاستدعاء cdecl وقيمًا صحيحة و FPDF_BOOL بـ 32 بت ومقابض بحجم المؤشر ودلالات صفحات يملكها PDFium
يجب أن تُكمل دوال التصيير عملها تزامنيًا وألا تحتفظ بالصورة النقطية أو مقبض الصفحة المزوَّدَين
تُحفظ أعلام القدرات المجهولة في RawCapabilityBits لكنها لا تُعامل كسلوك مدعوم
SkiaCaps := GetSkiaRenderCapabilities;
if SkiaCaps.PageRender then
Pdf.RenderPageSkiaByIndex(SkCanvas, 1, 1200, 1600);
PrintCaps := GetPrintOutputCapabilities;
if PrintCaps.SpotPlateEnumeration then
Plates := Pdf.SpotPlates;