PDFiumPas هي مكتبة مكونات شاملة من المستوى الاحترافي توفر إمكانيات قوية لمعالجة وعرض ملفات PDF لتطبيقات Delphi و C++Builder. مبنية على محرك العرض PDFium القوي من Google، فهي توفر للمطورين حلاً متكاملاً لدمج وظائف PDF في تطبيقات سطح المكتب الخاصة بهم.
تتكون المكتبة من مكونين رئيسيين يعملان معًا بسلاسة: TPdf لمعالجة المستندات والتلاعب بها، وTPdfView للعرض المرئي التفاعلي. سواء كنت بحاجة إلى بناء عارض PDF بسيط، أو نظام إدارة مستندات معقد، أو دمج إمكانيات PDF في تطبيقات موجودة، فإن PDFiumPas توفر الأدوات والمرونة التي تحتاجها.
قلب نظام معالجة PDF؛ يتولى TPdf جميع العمليات على مستوى المستند بما في ذلك التحميل والحفظ واستخراج النصوص ومعالجة النماذج وإدارة البيانات الوصفية.
عنصر تحكم مرئي متطور يوفر تجربة عرض PDF غنية مع إمكانيات تفاعل كاملة مع المستخدم.
TStream عند الطلب عبر LoadCustomDocumentSaveAsPdfA / SaveAsPdfAToStream مع ملف تعريف ICC sRGB مضمن ودعم الملفات التعريفية المخصصةValidatePdfA وخاصية للقراءة فقط PdfAConformanceImportPagesByIndex (استيراد جزء)، ImportNPagesToOne (شبكة N-up)، MovePages (إعادة ترتيب في مكانه)CreateXObjectFromPage وInsertFormObjectFromXObjectRenderPageProgressive وIPdfCancellationTokenFitMode يختار كيفية ملاءمة الصفحة في منطقة العرض (تكبير يدوي، حجم فعلي، ملاءمة صفحة، ملاءمة عرض)؛ يُعاد تطبيقه تلقائيًا عند Resize / تغيير الصفحةPageColor يفصل خلفية صفحة PDF المعروضة عن Color الخاص بعنصر التحكم المحيط لعارضات الوضع الداكنHighlightSearchText وClearHighlightPageShadowSize / PageShadowColor) وحد للصفحة (PageBorderColor)LinkOptions) وأحداث OnAnnotationLinkClick / OnWebLinkClickAllowUserPageChange، ChangePageOnMouseScrolling، AllowUserTextSelection) للأكشاك (kiosks) والتضمينات للقراءة فقطTPdfThumbnailView| الجانب | التفاصيل |
|---|---|
| محرك العرض | Google PDFium — محرك PDF بمعيار صناعي ومختبَر جيدًا |
| دعم PDF | إصدارات PDF من 1.0 إلى 1.7، الملفات المشفّرة والمحمية بكلمة مرور |
| توافق المنصات | تطبيقات Windows 32-bit و 64-bit |
| دعم بيئات التطوير | Delphi XE5 / C++Builder XE5 (RAD Studio XE5) حتى Delphi/C++Builder 13.1 Florence (RAD Studio 13.1)، Lazarus 3.8+ |
| ترميز الأحرف | دعم Unicode الكامل، معالجة نصوص متعددة اللغات |
| إدارة الذاكرة | مُحسَّنة للمستندات الكبيرة، استخدام فعّال للموارد |
| سلامة الخيوط | تصميم أحادي الخيط (وفقًا لمتطلبات PDFium) |
تتبع PDFiumPas نمط بنية مُقسَّمة إلى طبقات تفصل المسؤوليات بوضوح وتعظّم إمكانية إعادة استخدام الكود:
| الطبقة | الملفات | المسؤولية |
|---|---|---|
| مكونات VCL | PDFium.pas, FPdfThumbnail.pas | مكونات Delphi VCL (TPdf, TPdfView, TPdfThumbnailView) مع دعم وقت التصميم |
| روابط API | FPdfView.pas, FPdfDoc.pas, FPdfText.pas, FPdfEdit.pas, FPdfAnnot.pas, FPdfFormFill.pas, FPdfPageOps.pas, FPdfAttachment.pas, FPdfSignature.pas, FPdfStructTree.pas, FPdfDataAvail.pas, FPdfExtensions.pas, FPdfFWLEvent.pas, FPdfCompress.pas, FPdfUtils.pas | تصريحات مؤشرات الدوال لاستدعاءات PDFium DLL |
| خط أنابيب PDF/A | FPdfPdfa.pas | إنشاء PDF/A-1b (حقن XMP، OutputIntent sRGB ICC، تحديث Catalog) والتحقق (اكتشاف التوافق، تعداد المشكلات) |
| البنية التحتية للمعالجة غير المتزامنة | FPdfAsync.pas | IPdfCancellationToken / IPdfCancellationTokenSource، singleton PdfNoCancellationToken، ومساعد TPdfFuture<T> لأعمال العرض والتصدير الطويلة |
| مساعدات الهندسة | FPdfMatrix.pas | مغلف كائني المنحى حول FS_MATRIX مع مساعدات Translate و Scale و Rotate و Flip و Skew و Multiply |
| عمليات الصفحات | FPdfPageOps.pas | مغلفات لـ FPDF_ImportPagesByIndex و FPDF_ImportNPagesToOne و FPDF_MovePages، بالإضافة إلى مساعدات Form-XObject (CreateXObjectFromPage / InsertFormObjectFromXObject) |
| لوحة جانبية للصور المصغرة | FPdfThumbnail.pas | TPdfThumbnailView — لوحة قابلة للتمرير للصور المصغرة لكل صفحة مع تمييز عند المرور والاختيار وتنقل OnPageClick |
| المحرك الأصلي | DLLs\Win32|Win64\pdfium.dll و pdfium.v8.dll | محرك العرض الأصلي Google PDFium، مع إصدارات اختيارية مفعّل فيها V8 |
صُمِّمت PDFiumPas للإنتاجية الفورية. تتضمن مكتبة المكونات:
سواء كنت تبني عارض PDF بسيطًا أو نظام معالجة مستندات معقدًا، فإن PDFiumPas توفر الأساس لوظائف PDF احترافية في تطبيقات Delphi و C++Builder الخاصة بك.