PDFiumPas یک کتابخانه جامع و حرفهای برای توسعهدهندگان است که قابلیتهای قدرتمند پردازش و مشاهده PDF را برای برنامههای Delphi و C++Builder فراهم میکند و بر موتور رندر Google PDFium بنا شده است تا یک راهکار کامل برای یکپارچهسازی PDF در برنامههای دسکتاپ ارائه دهد
این کتابخانه از دو مؤلفه اصلی تشکیل شده است که بهخوبی در کنار هم کار میکنند: TPdf برای پردازش و ویرایش سند، و TPdfView برای نمایش دیداری تعاملی. چه بخواهید یک نمایشگر ساده PDF بسازید، چه یک سامانه پیچیده مدیریت سند، یا قابلیتهای PDF را در برنامههای موجود ادغام کنید، PDFiumPas ابزارها و انعطاف لازم را در اختیار شما میگذارد
TPdf هسته سامانه پردازش PDF است و همه عملیات در سطح سند را از جمله بارگذاری، ذخیرهسازی، استخراج متن، پردازش فرم و مدیریت فراداده انجام میدهد
TPdfView یک کنترل دیداری کامل است که تجربه مشاهده PDF را با توانایی کامل تعامل کاربر فراهم میکند
TStream از طریق LoadCustomDocumentSaveAsPdfA / SaveAsPdfAToStream با پروفایل sRGB ICC داخلی و پشتیبانی از ICC سفارشیValidatePdfA و خاصیت فقطخواندنی PdfAConformanceImportPagesByIndex (درونریزی زیرمجموعه)، ImportNPagesToOne (چیدمان N-up)، MovePages (بازچینی درجا)CreateXObjectFromPage و InsertFormObjectFromXObjectRenderPageProgressive و IPdfCancellationTokenFitMode تعیین میکند صفحه چگونه در ناحیه نمایش قرار بگیرد (بزرگنمایی دستی، اندازه واقعی، fit page، fit width) و در زمان Resize / تغییر صفحه دوباره اعمال میشودPageColor رنگ پسزمینه صفحه PDF رندرشده را از Color کنترل بیرونی جدا میکند تا نمایشگرهای حالت تیره راحتتر ساخته شوندHighlightSearchText و ClearHighlightPageShadowSize / PageShadowColor) و حاشیه صفحه (PageBorderColor)LinkOptions) و رویدادهای OnAnnotationLinkClick / OnWebLinkClickAllowUserPageChange، ChangePageOnMouseScrolling، AllowUserTextSelection) برای کیوسکها و استفاده فقطخواندنیTPdfThumbnailView| مورد | جزئیات |
|---|---|
| موتور رندر | Google PDFium — موتور PDF استاندارد صنعتی و آزمودهشده |
| پشتیبانی PDF | نسخههای PDF 1.0 تا 1.7، همراه با فایلهای رمزنگاریشده و محافظتشده با گذرواژه |
| سازگاری پلتفرم | برنامههای Windows 32-bit و 64-bit |
| پشتیبانی IDE | 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 | تعریف اشارهگرهای تابع برای فراخوانیهای DLL مربوط به PDFium |
| خط لوله PDF/A | FPdfPdfa.pas | ایجاد PDF/A-1b (تزریق XMP، OutputIntent مبتنی بر sRGB ICC، بهروزرسانی کاتالوگ) و اعتبارسنجی (تشخیص انطباق، شمارش مسائل) |
| زیرساخت ناهمگام | FPdfAsync.pas | IPdfCancellationToken / IPdfCancellationTokenSource، تکنمونه 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 |
TComponent) - مؤلفه غیر دیداری برای عملیات سند PDFTScrollingWinControl) - کنترل دیداری با قابلیتهای پیمایش و تمرکزTCustomControl) - پنل کناری قابل پیمایش برای ناوبری بندانگشتی که به مؤلفه TPdf متصل استGetProcAddressTBookmark، TDestination، TPdfAnnotation و غیره)FPdfAsync و FPdfMatrix ابزارهای لغو/آینده و تبدیل را بدون تحمیل آنها بر مؤلفه اصلی TPdf فراهم میکنندPDFiumPas برای بهرهوری فوری طراحی شده است. این کتابخانه مؤلفهها شامل موارد زیر است
چه یک نمایشگر ساده PDF بسازید و چه یک سامانه پیچیده پردازش سند، PDFiumPas پایهای حرفهای برای قابلیتهای PDF در برنامههای Delphi و C++Builder شما فراهم میکند