A PDFiumPas egy átfogó, professzionális komponenskönyvtár, amely erőteljes PDF-feldolgozási és -megjelenítési képességeket hoz a Delphi és C++Builder alkalmazásokba. A Google robusztus PDFium renderelőmotorjára épül, és teljes megoldást ad a PDF-funkciók asztali alkalmazásokba való beépítéséhez
A könyvtár két fő komponensből áll, amelyek zökkenőmentesen együttműködnek: TPdf a dokumentumfeldolgozáshoz és -manipulációhoz, valamint TPdfView az interaktív vizuális megjelenítéshez. Akár egyszerű PDF-megjelenítőt, akár összetett dokumentumkezelő rendszert építesz, akár meglévő alkalmazásokba integrálod a PDF-képességeket, a PDFiumPas biztosítja a szükséges eszközöket és rugalmasságot
A PDF-feldolgozó rendszer szíve, a TPdf kezeli az összes dokumentumszintű műveletet, beleértve a betöltést, mentést, szövegkinyerést, űrlapfeldolgozást és a metaadat-kezelést
Egy kifinomult vizuális vezérlő, amely gazdag PDF-megjelenítési élményt és teljes felhasználói interakciót biztosít
TStream adaptereken keresztül a LoadCustomDocument segítségévelSaveAsPdfA / SaveAsPdfAToStream segítségével beépített sRGB ICC profillal és egyéni profil támogatássalValidatePdfA és a csak olvasható PdfAConformance tulajdonság révénImportPagesByIndex (részhalmaz importálása), ImportNPagesToOne (N-up rács), MovePages (helyben átrendezés)CreateXObjectFromPage és InsertFormObjectFromXObject segítségévelRenderPageProgressive és a IPdfCancellationToken segítségévelFitMode határozza meg, hogyan illeszkedik az oldal a nézetablakba (kézi nagyítás, tényleges méret, oldalhoz igazítás, szélességhez igazítás); Resize és oldalt váltás után automatikusan újra alkalmazódikPageColor leválasztja a renderelt PDF-oldal hátterét a környező vezérlő Color értékéről, így sötét módú megjelenítők is építhetőkHighlightSearchText és ClearHighlight segítségévelPageShadowSize / PageShadowColor) és oldalszegély (PageBorderColor)LinkOptions) és OnAnnotationLinkClick / OnWebLinkClick eseményekkelAllowUserPageChange, ChangePageOnMouseScrolling, AllowUserTextSelection) kioszkokhoz és csak olvasható beágyazásokhozTPdfThumbnailView oldalsó panel komponensen keresztül| Szempont | Részletek |
|---|---|
| Renderelőmotor | Google PDFium - ipari szabványú, sokat bizonyított PDF motor |
| PDF támogatás | PDF 1.0-tól 1.7-ig, titkosított és jelszóval védett fájlok |
| Platformkompatibilitás | Windows 32 bites és 64 bites alkalmazások |
| IDE támogatás | Delphi XE5 / C++Builder XE5 (RAD Studio XE5) és Delphi/C++Builder 13.1 Florence (RAD Studio 13.1) között, Lazarus 3.8+ |
| Karakterkódolás | Teljes Unicode támogatás, többnyelvű szövegfeldolgozás |
| Memóriakezelés | Nagy dokumentumokra optimalizálva, hatékony erőforrás-használattal |
| Szálbiztonság | Egy szálra tervezett kialakítás (a PDFium követelményei szerint) |
A PDFiumPas réteges architektúramintát követ, amely tisztán elkülöníti a felelősségi köröket és maximalizálja a kód újrahasznosíthatóságát:
| Réteg | Fájlok | Felelősség |
|---|---|---|
| VCL komponensek | PDFium.pas, FPdfThumbnail.pas | Delphi VCL komponensek (TPdf, TPdfView, TPdfThumbnailView) tervezési idejű támogatással |
| API kötésrétegek | 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 | Függvénypointer-deklarációk a PDFium DLL-hívásokhoz |
| PDF/A folyamat | FPdfPdfa.pas | PDF/A-1b létrehozás (XMP beszúrás, sRGB ICC OutputIntent, katalógusfrissítés) és ellenőrzés (megfelelőségi felismerés, problémafelsorolás) |
| Aszinkron infrastruktúra | FPdfAsync.pas | IPdfCancellationToken / IPdfCancellationTokenSource, PdfNoCancellationToken singleton és TPdfFuture<T> segéd hosszú futású renderelési és exportfeladatokhoz |
| Geometriai segédek | FPdfMatrix.pas | FS_MATRIX OO burkoló Translate, Scale, Rotate, Flip, Skew és Multiply segédletekkel |
| Oldalműveletek | FPdfPageOps.pas | FPDF_ImportPagesByIndex, FPDF_ImportNPagesToOne, FPDF_MovePages burkolók, valamint Form-XObject segédek (CreateXObjectFromPage / InsertFormObjectFromXObject) |
| Bélyegkép-oldalpanel | FPdfThumbnail.pas | TPdfThumbnailView — görgethető, oldalankénti bélyegképpanel hoverrel, kijelöléssel és OnPageClick navigációval |
| Natív motor | DLLs\Win32|Win64\pdfium.dll és pdfium.v8.dll | Google PDFium natív renderelőmotor, opcionális V8-os buildekkel |
A PDFiumPas úgy készült, hogy azonnal produktívvá tegye a munkát. A komponenskönyvtár tartalmazza:
Akár egy egyszerű PDF-megjelenítőt, akár összetett dokumentumfeldolgozó rendszert építesz, a PDFiumPas megalapozza a professzionális PDF-funkcionalitást a Delphi és C++Builder alkalmazásaidban