PDFiumPas adalah pustaka komponen tingkat profesional yang lengkap, menghadirkan kemampuan pemrosesan dan penayangan PDF yang kuat untuk aplikasi Delphi dan C++Builder. Dibangun di atas mesin rendering PDFium milik Google yang tangguh, pustaka ini memberi pengembang solusi menyeluruh untuk mengintegrasikan fungsi PDF ke dalam aplikasi desktop mereka
Pustaka ini terdiri dari dua komponen utama yang bekerja mulus bersama: TPdf untuk pemrosesan dan manipulasi dokumen, serta TPdfView untuk penyajian visual interaktif. Baik Anda ingin membuat penampil PDF sederhana, sistem pengelolaan dokumen yang kompleks, maupun menambahkan kemampuan PDF ke aplikasi yang sudah ada, PDFiumPas menyediakan alat dan fleksibilitas yang Anda perlukan
Jantung dari sistem pemrosesan PDF, TPdf menangani semua operasi di tingkat dokumen termasuk memuat, menyimpan, mengekstrak teks, memproses formulir, dan mengelola metadata
Kontrol visual canggih yang menghadirkan pengalaman penayangan PDF yang kaya dengan kemampuan interaksi pengguna penuh
TStream sesuai kebutuhan melalui LoadCustomDocumentSaveAsPdfA / SaveAsPdfAToStream dengan profil ICC sRGB bawaan dan dukungan profil kustomValidatePdfA dan properti PdfAConformance hanya-bacaImportPagesByIndex (impor subset), ImportNPagesToOne (grid N-up), MovePages (pengurutan ulang di tempat)CreateXObjectFromPage dan InsertFormObjectFromXObjectRenderPageProgressive dan IPdfCancellationTokenFitMode menentukan cara halaman ditempatkan di viewport (manual zoom, actual size, fit page, fit width) dan diterapkan ulang otomatis saat Resize atau pergantian halamanPageColor memisahkan latar halaman PDF yang dirender dari Color kontrol di sekitarnya untuk penampil mode gelapHighlightSearchText dan ClearHighlightPageShadowSize / PageShadowColor) dan border halaman (PageBorderColor)LinkOptions) serta event OnAnnotationLinkClick / OnWebLinkClickAllowUserPageChange, ChangePageOnMouseScrolling, AllowUserTextSelection) untuk kios dan penyematan hanya-bacaTPdfThumbnailView| Aspek | Rincian |
|---|---|
| Mesin Perenderan | Google PDFium - mesin PDF berstandar industri yang teruji |
| Dukungan PDF | Versi PDF 1.0 hingga 1.7, termasuk file terenkripsi dan berpelindung kata sandi |
| Kompatibilitas Platform | Aplikasi Windows 32-bit dan 64-bit |
| Dukungan IDE | Delphi XE5 / C++Builder XE5 (RAD Studio XE5) hingga Delphi/C++Builder 13.1 Florence (RAD Studio 13.1), Lazarus 3.8+ |
| Pengkodean Karakter | Dukungan Unicode penuh, pemrosesan teks multibahasa |
| Manajemen Memori | Dioptimalkan untuk dokumen besar, penggunaan sumber daya yang efisien |
| Keamanan Ulir (Thread Safety) | Desain single-threaded (sesuai persyaratan PDFium) |
PDFiumPas mengikuti pola arsitektur berlapis yang memisahkan tanggung jawab dengan rapi dan memaksimalkan penggunaan ulang kode
| Lapisan | File | Tanggung Jawab |
|---|---|---|
| Komponen VCL | PDFium.pas, FPdfThumbnail.pas | Komponen Delphi VCL (TPdf, TPdfView, TPdfThumbnailView) dengan dukungan saat desain |
| Binding 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 | Deklarasi function pointer untuk pemanggilan DLL PDFium |
| Alur PDF/A | FPdfPdfa.pas | Pembuatan PDF/A-1b (penyisipan XMP, OutputIntent ICC sRGB, pembaruan katalog) dan validasi (deteksi konformansi, enumerasi masalah) |
| Infrastruktur Asinkron | FPdfAsync.pas | IPdfCancellationToken / IPdfCancellationTokenSource, singleton PdfNoCancellationToken, dan helper TPdfFuture<T> untuk pekerjaan rendering dan ekspor yang berjalan lama |
| Helper Geometri | FPdfMatrix.pas | Pembungkus OO untuk FS_MATRIX dengan helper Translate, Scale, Rotate, Flip, Skew, dan Multiply |
| Operasi Halaman | FPdfPageOps.pas | Pembungkus untuk FPDF_ImportPagesByIndex, FPDF_ImportNPagesToOne, FPDF_MovePages, plus helper Form-XObject (CreateXObjectFromPage / InsertFormObjectFromXObject) |
| Panel Samping Thumbnail | FPdfThumbnail.pas | TPdfThumbnailView — panel thumbnail per halaman yang bisa digulir dengan hover, selection, dan navigasi OnPageClick |
| Mesin Native | DLLs\Win32|Win64\pdfium.dll and pdfium.v8.dll | Mesin rendering native Google PDFium, dengan build opsional berfitur V8 |
PDFiumPas dirancang untuk produktivitas langsung. Pustaka komponen ini mencakup:
Baik Anda membangun penampil PDF sederhana maupun sistem pemrosesan dokumen yang kompleks, PDFiumPas menyediakan fondasi untuk fungsi PDF profesional di aplikasi Delphi dan C++Builder Anda