PDFium Delphi Component w skrócie
| Produkt | PDFium Delphi Component — profesjonalny SDK aplikacji PDF z kodem źródłowym dla Delphi, C++Builder i Lazarus |
|---|---|
| Najlepsze zastosowanie | Dostarczanie wydajnych czytników PDF, narzędzi przeglądu, obiegów dokumentów i dostępnych doświadczeń czytania w aplikacjach natywnych |
| Obsługa IDE | Delphi i C++Builder od XE5 do 13.1 Florence (Win32, Win64); Lazarus / Free Pascal LCL na Windows, Linux (Qt6) i macOS (Cocoa) |
| Rola silnika | PDFium — rodzina silników open source stojąca za wyświetlaniem PDF w Chromium — odpowiada za renderowanie stron i odczyt dokumentów; opcjonalne biblioteki DLL środowiska uruchomieniowego V8 / XFA |
| Warstwa aplikacji | 154 000 wierszy kodu Object Pascal w 67 jednostkach, 497 publicznych składowych TPdf i 153 w TPdfView, obejmujących warstwy przeglądarki, serializacji, podpisywania, szyfrowania, standardów i dostępności, których PDFium nie zapewnia |
| Podpisy cyfrowe | Podpisywanie PAdES B-B / B-T / B-LT / B-LTA (ETSI EN 319 142-1), kontenery CMS / CAdES, znaczniki czasu RFC 3161, Document Security Store; klucze Windows CNG, macOS Keychain lub OpenSSL z dowodami OCSP |
| Szyfrowanie | Obsługa zapisu AES-256 w PDF 2.0 (ISO 32000-2), ISO/TS 32003 AES-GCM, ISO/TS 32004 PDF MAC, na czysto pascalowym stosie AES / SHA / HMAC / ASN.1 |
| Standardy | Walidatory PDF/A (części 1-4), PDF/X (do X-6), PDF/UA, PDF/E, PDF/VT (do VT-2s), PDF/R wraz z narzędziami do zapisu i wstawiania znaczników |
| Zapis PDF | Własny serializator: linearyzowany Fast Web View, pakowanie do strumieni obiektów i xref, przyrostowe rewizje zmienionych obiektów, weryfikowane kopie naprawcze |
| Zasoby czytnika | 22 kompletne demo workflow na platformę plus dziesięć tematycznych zagadnień w Miscellaneous: referencyjne profesjonalne czytniki, działająca offline prezentacja demo na sześciu stronach, stanowiska dostępności, ekstrakcja tabel, narzędzia standardów i preflight oraz stanowiska konsolowe |
| Duże pliki | Dostęp na żądanie pozwala uniknąć wstępnego kopiowania do pamięci przy dokumentach wielogigabajtowych; równoległe renderowanie stron i ograniczona pamięć robocza |
| Kod źródłowy | Pełny kod źródłowy Object Pascal dołączony do każdej licencji |
| Licencjonowanie | Bez tantiem, jednorazowo $350-$4200 zależnie od poziomu; odnowienie za 40% ceny katalogowej |
| Bieżąca wersja | 3.137.1 (2026-10-09) |
| Wersja próbna | Pobierz bezpłatny pakiet demonstracyjny |
Gdzie kończy się silnik, a zaczyna produkt
PDFium jest rendererem. Rysuje strony, wyodrębnia tekst i odczytuje istniejące struktury — i na tym jego rola się kończy. Nie podpisuje dokumentów, nie zapisuje szyfrowania, nie waliduje standardów, nie linearyzuje plików, nie zapisuje rewizji przyrostowych i nie obsługuje XFDF ani XMP. Nakładka na API C biblioteki PDFium dziedziczy dokładnie te same ograniczenia.
PDFium Delphi Component dostarcza około 154 000 wierszy kodu Object Pascal w 67 jednostkach. Ponad 65 000 z tych wierszy znajduje się w 40 jednostkach, które nie mają żadnego odpowiednika w API PDFium — kryptografia, podpisy, szyfrowanie, sześć walidatorów standardów, serializator PDF, XFDF, XMP, układ strony i kształtowanie tekstu. Napisane w Pascalu, zweryfikowane względem opublikowanych klauzul ISO, ETSI, IETF i FIPS oraz dostarczane jako kod źródłowy z każdą licencją.
| Obszar funkcjonalny | Silnik PDFium | Zaimplementowane przez PDFium Delphi Component |
|---|---|---|
| Podpisy cyfrowe | Odczytuje wyłącznie istniejące słowniki podpisów | Podpisywanie PAdES B-B / B-T / B-LT / B-LTA, struktury CMS / CAdES SignedData zgodne z RFC 5652, klient znaczników czasu RFC 3161, wstrzykiwanie DSS i VRI, klucze Windows CNG (RSA-PSS, PKCS#1, ECDSA), podpisywanie zdalne i sprzętowe (HSM), przy którym klucz prywatny nigdy nie opuszcza usługi, oraz walidacja zaufania łańcucha certyfikatów |
| Szyfrowanie | Otwiera zaszyfrowane pliki, ale nie potrafi zapisać szyfrowania | ISO 32000-2 AES-256 (V5 / R6, wyprowadzanie klucza według algorytmu 2.B), ISO/TS 32003 AES-GCM, ISO/TS 32004 PDF MAC oraz pełne szyfrowanie wszystkich strumieni i ciągów znaków |
| Prymitywy kryptograficzne | Żadne nie są udostępniane | AES-128/256 w trybach CBC i GCM, SHA-256/384/512, SHA-3, HMAC oraz czytnik i zapis ASN.1 DER — w całości w Object Pascal, zweryfikowane względem wektorów testowych FIPS 197 i FIPS 180-4 |
| Zgodność ze standardami | Brak jakiegokolwiek walidatora | PDF/A części 1-4, PDF/X do X-6, PDF/UA-1, PDF/E-1, PDF/VT-1/2/2s i PDF/R-1 — walidatory na poziomie klauzul, wstrzykiwanie znaczników i helpery zapisu świadome profilu |
| Serializacja PDF | Jeden sekwencyjny zapis całego pliku | Linearyzowany Fast Web View z tablicami wskazówek według Aneksu F, pakowanie w strumienie obiektów i strumienie xref, przyrostowe rewizje zmienionych obiektów z zachowaniem poprzedniego pliku bajt w bajt oraz kopie naprawcze zweryfikowane w trybie strict |
| Uszkodzone dokumenty | Ciche odzyskiwanie, bez raportu | Polityki wczytywania strict, compatible i recovery ze strukturalną diagnostyką: ścieżka odbudowy, przesunięcia uszkodzeń, sprzeczne rewizje i stan budżetów |
| Wymiana danych formularzy | Brak API XFDF lub FDF | Import i eksport XFDF (ISO 19444-1) oraz FDF dla wartości pól i 18 podtypów adnotacji |
| Metadane | Odczytuje klasyczny słownik info | Czytnik i zapis pakietów XMP z typowanymi kontenerami, wykorzystywany przez każdy profil standardu |
| Sieć i skala | Wywołania zwrotne zakresów bajtów i nic ponadto | Progresywne sesje dokumentu, priorytetowy harmonogram zakresów bajtów z deduplikacją, scalaniem, ograniczoną liczbą ponowień i anulowaniem, równoległe renderowanie stron oraz ograniczona pamięć robocza przenoszona do pliku tymczasowego usuwanego przy zamknięciu |
| Warstwa aplikacji | Uchwyty i wywołania zwrotne języka C | Trzy zarejestrowane komponenty VCL / LCL, 497 publicznych składowych TPdf i 153 w TPdfView, stan przeglądarki, miniatury, sesje czytania oraz 22 kompletne demo workflow na platformę |
Natywne przeglądanie PDF i przepływy pracy z dokumentami dla Delphi
PDFium Delphi Component to zestaw komponentów PDFium z kodem źródłowym dla Delphi, C++Builder i Lazarus – przeznaczony dla aplikacji wymagających szybkiego wyświetlania PDF, rasteryzacji stron, strumieniowego wczytywania, zaznaczania tekstu, wyszukiwania, obsługi formularzy, adnotacji, drukowania, raportowania preflight i inspekcji dokumentów w natywnym interfejsie Windows.
Błyskawiczne otwieranie dużych plików PDF: W rzeczywistych testach z dużymi plikami, pliki PDF o rozmiarze 2+ GB, których otwarcie w popularnych czytnikach PDF zajmuje 20-30 sekund przed wyświetleniem pierwszej strony, w PDFium Delphi Component stają się użyteczne niemal natychmiast.
Użyj go, gdy obsługa PDF ma się odbywać wewnątrz Twojej aplikacji, a nie w zewnętrznej przeglądarce. Pakiet zawiera komponenty wizualne i niewidoczne, kod źródłowy w Object Pascal, przykłady projektów, biblioteki DLL PDFium, opcjonalne biblioteki DLL obsługujące V8/XFA, przykłady wiersza poleceń dla preflight, testy regresji oraz dokumentację zarówno dla integracji przeglądarki, jak i niskopoziomowych operacji na PDF.
PDFium VCL Component obsługuje Delphi XE5 do Delphi 13.1 Florence oraz C++Builder XE5 do C++Builder 13.1 Florence, z targets Win32 i Win64. PDFium LCL Component zawiera pliki pakietów Lazarus / Free Pascal oraz przykłady dla przepływów pracy LCL, a natywne buildy Free Pascal działają na Linux z Qt6 i na macOS z Cocoa — w tym rozwiązywanie fontów platformy, wczytywanie dokumentów, edycję, formularze, zapisywanie i renderowanie.
Główne możliwości
- Wysokopoziomowe API aplikacji: Pracuj z natywnymi dla Delphi obiektami dokumentu i przeglądarki zamiast przeplatać surowe uchwyty PDFium przez każdy ekran, zadanie w tle, przepływ pracy formularza i ścieżkę zwalniania zasobów.
- Interfejs przeglądarki: Umieść
TPdfViewna formularzu, aby uzyskać zoom, obrót, tryby dopasowania, układy jednostronicowe i ciągłe, rozkładówki z obsługą okładki, cienie stron, bezpieczne klikanie linków, zaznaczanie tekstu przez użytkownika, kopiowanie do schowka i przepływ pracy z fokusem formularza. - Nawigacja miniaturkami: Dodaj
TPdfThumbnailViewobok przeglądarki, aby uzyskać przewijalne miniatury stron z podświetlaniem po najechaniu kursorem, zaznaczaniem i nawigacją przez kliknięcie. - Renderowanie: Renderuj strony i kafle do bitmap, stosuj zerowe kopiowanie przy zapisach DIB tam, gdzie to możliwe, uruchamiaj anulowalne renderowanie progresywne, renderuj zestaw stron równolegle przez
RenderPagesParallel, uzyskuj dostęp do niskopoziomowych hooków Skia, gdy załadowana DLL je eksportuje, i utrzymuj responsywność dużych stron. - Strumieniowanie i duże pliki: Wczytuj z dysku, pamięci, tablic bajtów lub niestandardowych strumieni z losowym dostępem – z odczytami PDFium na żądanie, dzięki czemu duże lub zdalnie przechowywane dokumenty nie wymagają kopiowania całej zawartości z góry.
- Uruchamianie dużych plików: Zacznij przeglądać wielogigabajtowe pliki PDF szybko; przeglądarka używa dostępu PDFium z losowym odczytem na żądanie, dzięki czemu dokumenty 2+ GB stają się użyteczne niemal natychmiast zamiast czekać na pełne wczytanie z góry.
- Tekst i wyszukiwanie: Wyodrębniaj tekst stron, przeszukuj w przód lub wstecz, podświetlaj wyniki, buduj listy wyników ze wszystkich stron i sprawdzaj prostokąty znaków, pozycje, kąty, generowane znaki, rodzinę czcionek, grubość, rozmiar, wzniesienie, opadanie i status czcionki osadzonej.
- Tekst strukturalny:
GetStructuredTextbuduje hierarchię stron, bloków, wierszy i stylizowanych fragmentów na podstawie geometrii znaków, metadanych czcionek, tożsamości obiektów tekstowych i semantyki Tagged PDF, z awaryjnym porządkiem wynikającym z układu fizycznego, gdy dokument nie zawiera znaczników. - Ekstrakcja tabel:
ExtractTablesiExtractDocumentTablesłączą prostokąty słów z przekształconymi liniami ścieżek, aby wykrywać tabele obramowane i wyrównane odstępami, zachowywać scalone komórki, oceniać pewność wyniku, oznaczać kontynuacje na kolejnych stronach i generować CSV lub JSON. - Semantyczny reflow do HTML:
BuildReflowDocumentzamienia PDF o stałym układzie w drzewo węzłów wielokrotnego użytku, którego bezpieczne wyjście HTML zachowuje nagłówki, akapity, listy, ilustracje, sekcje stron i scalone komórki tabel — na potrzeby responsywnego wyświetlania, dostępności i ponownego wykorzystania treści. - Formularze: Pracuj z polami AcroForm, wykrywaniem stanu XFA, opcjonalną dostępnością helpera V8/XFA, zaznaczonym tekstem formularza, cofaniem/ponownym wykonywaniem w formularzu, generowanymi wyglądem formularzy, flagami pól i spłaszczaniem.
- Wymiana danych formularzy: Eksportuj i importuj zarówno XFDF (ISO 19444-1), jak i FDF (ISO 32000-1 §12.7.11) dla wartości pól i 18 podtypów adnotacji — formatów, dla których PDFium nie udostępnia żadnego API, zaimplementowanych w Pascalu na własnym modelu adnotacji i pól komponentu.
- Integracja OCR: Korzystaj z opcjonalnego dostawcy Tesseract z diagnostyką zależności, geometrią słów Unicode, anulowaniem i budżetami rozpoznawania albo podłącz dowolny silnik rozpoznawania przez
IPdfOcrProvider; komponent zapisuje przeszukiwalną warstwę tekstową z raportowaniem stanu dla każdej strony i pomijaniem stron z istniejącym tekstem, a po zapisaniu i ponownym otwarciu weryfikuje jej poprawność. - Porównywanie dokumentów: Wyrównuj dwie rewizje strona po stronie, aby znajdować wstawione, usunięte i przeniesione strony, raportuj ograniczone zmiany tekstu Unicode i połączone obszary wizualne, porównuj adnotacje i widgety AcroForm właściwość po właściwości niezależnie od pikseli strony i eksportuj nakładki porównawcze.
- Redakcja i zamiana tekstu: Usuwaj wrażliwą zawartość wewnątrz zagnieżdżonych Form XObjects, wypełnionych zakrzywionych ścieżek oraz obróconych lub ściętych obrazów ze szczegółowym raportem usuwania, odmawiaj treści, których semantyki nie da się zweryfikować, i zamieniaj tekst w oryginalnym stylu ze zweryfikowanymi planami źródłowymi, podglądami, ograniczonym dopasowaniem w poziomie i wycofywaniem zmian.
- Zarządzanie kolorem i kody kreskowe: Konwertuj kolory dokumentu przez opcjonalne transformacje ICC LittleCMS na oryginalnych komponentach tekstu, wektorów i obrazów 8- lub 16-bitowych z zachowaniem wybranych kolorów dodatkowych oraz generuj i rozpoznawaj symbole Code 128, QR, DataMatrix i PDF417 przez opcjonalnego dostawcę kodów kreskowych.
- Adnotacje i linki: Twórz, usuwaj, zliczaj i sprawdzaj adnotacje; obsługuj linki stron, linki internetowe, cele zakładek, akcje JavaScript dokumentu, powierzchnie ryzyka URI/Launch i zdarzenia kliknięcia przeglądarki.
- Montaż dokumentów: Twórz dokumenty, dodawaj lub usuwaj strony, importuj zakresy stron według etykiety lub indeksu fizycznego, przenoś strony, komponuj strony N-up, ponownie wykorzystuj strony jako Form XObjects, stosuj znaki wodne lub stemple, aktualizuj zawartość stron i zarządzaj polami stron. Transakcyjne scalanie zachowuje konspekty, nazwane cele, wewnętrzne linki i pola AcroForm między wybranymi, przemieszczanymi i powtarzanymi stronami, a tagowane układy tabel obsługują mieszane style tekstu, obrazy, komórki łączone i wiersze subtotal.
- Wyjście PDF i rewizje: Zapisuj linearyzowane pliki Fast Web View z tablicami wskazówek dla przesunięć stron i obiektów współdzielonych, pakuj obiekty w strumienie obiektów z pełnym pokryciem xref typu 2, dołączaj przyrostowe rewizje zmienionych obiektów zachowujące poprzednie wyjście bajt w bajt oraz twórz kopie naprawcze weryfikowane ponownie przez niezależne wczytanie w trybie strict przed dostarczeniem.
- Podpisy cyfrowe: Podpisuj na poziomach bazowych PAdES B-B, B-T, B-LT lub B-LTA; buduj CMS / CAdES SignedData z atrybutami podpisanymi wymaganymi przez profil; żądaj tokenów RFC 3161 od urzędu TSA; zbieraj łańcuch certyfikatów w Document Security Store; dodawaj archiwalne znaczniki czasu; oraz waliduj dowolny dokument względem kontroli PAdES na poziomie klauzul i zaufania łańcucha certyfikatów, synchronicznie lub asynchronicznie. Oprócz kluczy Windows CNG podpisują tożsamości macOS Keychain z natywnymi transportami znaczników czasu Free Pascal i Delphi, a podpisywanie OpenSSL przyjmuje skonfigurowane klucze prywatne RSA-PSS, RSA PKCS#1 v1.5 i ECDSA poza Windows; weryfikacja dodaje offline lub ograniczone online dowody OCSP dla każdego podpisującego CMS.
- Podpisywanie zdalne i z użyciem HSM: Podziel operację na dwa etapy za pomocą
PreparePadesRemoteSignatureiCompletePadesRemoteSignature— aplikacja tworzy dokument z miejscem na podpis i przenośne żądanie podpisu zawierające skrót SHA-256, usługa zdalna lub moduł sprzętowy zwraca odłączony CMS, a komponent go wstrzykuje. Klucz prywatny nigdy nie musi trafić na stację roboczą. - Szyfrowanie i integralność: Zapisuj szyfrowanie PDF 2.0 AES-256 z poprawnym wyprowadzaniem klucza R6 i blokami uprawnień, stosuj ISO/TS 32003 AES-GCM tam, gdzie jest wymagane, dołączaj tokeny ISO/TS 32004 PDF MAC i opieraj się na prymitywach AES, SHA-2, SHA-3, HMAC oraz ASN.1 napisanych w Object Pascal bez zewnętrznej zależności od kodu C.
- Inspekcja zawartości i zabezpieczeń: Wyodrębniaj obrazy, renderuj bitmapy obiektów, sprawdzaj granice obiektów i przezroczystość, odczytuj załączniki, metadane, podpisy, uprawnienia, język, etykiety stron, tryby stron, preferencje przeglądarki, strukturę oznaczonego PDF i identyfikatory pliku.
TPdfStreamInspectordekoduje dowolne obiekty strumieni w ramach jawnych budżetów źródła, rozmiaru surowego i zdekodowanego, współczynnika ekspansji oraz liczby strumieni, dzięki czemu bomba dekompresyjna zwraca ustrukturyzowany status zamiast wyczerpywać pamięć. - Dostępne czytanie: Buduj jednostki czytania na poziomie zdań, mapuj wypowiadany tekst z powrotem na zawartość PDF, steruj podświetlaniem czytania na poziomie słów, nawiguj po polach formularzy, badaj strukturę oznaczoną i stosuj bitmapowe transformacje dla osób słabowidzących w asystujących przepływach pracy.
- Raporty preflight: Generuj raporty audytów zorientowane na standardy z polami zaliczony, wymaga-działania, przegląd, priorytet, kategoria problemu, liczba kategorii i następne-działanie; eksportuj czytelne raporty TXT, HTML i Markdown albo maszynowo przetwarzalne JSON, CSV, SARIF 2.1.0, JUnit XML i NDJSON; twórz stabilne odciski SHA-256 raportów; uruchamiaj podsumowania wsadowe; dołączaj raporty do kopii przeglądowych; i zatrzymuj kompilację na podstawie kodu wyjścia narzędzia wiersza poleceń.
- Drukowanie: Drukuj z zakresami stron, liczbą kopii, preferencjami skalowania, kompozycją N-up, filtrowaniem stron nieparzystych/parzystych, wyjściem w skali szarości, metadanymi preferencji przeglądarki i
SetPdfPrintPaperHandlingDevModedo integracji dupleksu i obsługi papieru.
Przepływy pracy PDF z obsługą zgodności ze standardami
PDFium Delphi Component udostępnia zorientowane na standardy API walidacji i zapisu dla zespołów wymagających przewidywalnego przekazywania PDF, archiwizacji, przeglądów wydruków, kontroli dostępności, dokumentów inżynierskich, wyjścia danych zmiennych lub dostarczania zablokowanego rastrem.
| Przepływ pracy | Obsługa PDFium Delphi Component | Odpowiedzialność aplikacji |
|---|---|---|
| PDF/A | ValidatePdfA, SaveAsPdfA i PdfAConformance w zakresie ISO 19005 części od 1 do 4 — łącznie z opartymi na PDF 2.0 profilami A-4 base, A-4f i A-4e — z kontrolami OutputIntent, kontrolami metadanych XMP, kontrolami osadzania czcionek, kontrolami struktury RoleMap i ParentTree, limitami implementacyjnymi z Aneksu C, ograniczeniami szyfrowania i JavaScript oraz świadomymi profilu helperami zapisu. | Wybierz cel archiwalny, dostarcz poprawne metadane dokumentu i dane kolorów, a następnie przejrzyj wszelkie zgłoszone problemy z walidacją przed dostarczeniem. |
| PDF/X | ValidatePdfX, SaveAsPdfX i PdfXConformance od X-1a po oparty na PDF 2.0 profil X-6, z obsługą OutputIntent i ICC, zależnymi od profilu ograniczeniami przezroczystości i przestrzeni barw, kontrolami geometrii TrimBox / ArtBox / BleedBox oraz kontrolami profilu bezpiecznego dla druku. | Dostarcz odpowiednie dane OutputIntent, geometrię strony i ustawienia drukowania dla docelowego profilu PDF/X. |
| PDF/UA | ValidatePdfUa, SaveAsPdfUa, PdfUaConformance, sprawdzanie języka i oznakowania, inspekcja drzewa struktury, przegląd oznaczonej zawartości i walidacja profilu dostępności. | Napisz sensowną kolejność czytania, nagłówki, listy, semantykę tabel, tekst alternatywny i język dokumentu w źródłowym przepływie pracy. |
| PDF/E, PDF/VT, PDF/R | ValidatePdfE, ValidatePdfVT i ValidatePdfR, odpowiadające im API SaveAs... oraz właściwości zgodności dla profili PDF inżynierskich, zmiennych danych i zorientowanych na raster. PDF/VT obejmuje hierarchie DPart, metadane części dokumentu i pakowanie wieloczęściowych strumieni MIME w VT-2s; PDF/E wstrzykuje osadzony OutputIntent sRGB; PDF/R wymusza jeden obraz pasa na stronę i dozwoloną listę kodowań. | Dopasuj profil do przepływu pracy biznesowej i utrzymaj zawartość źródłową w dozwolonym zestawie funkcji wybranego standardu. |
| Podpisy PAdES | SignPades, SignPadesToStream, SignPadesBytes, SaveAsPadesDss i ValidatePadesCompliance obejmują poziomy bazowe B-B, B-T, B-LT i B-LTA normy ETSI EN 319 142-1, ze znacznikami czasu RFC 3161, wstrzykiwaniem Document Security Store, znacznikami rozszerzenia ESIC i 26 kodami walidacji na poziomie klauzul. SignPadesWithPdfA łączy konwersję archiwalną z podpisywaniem w jednym przepływie pracy. | Dostarcz certyfikat podpisujący wraz z jego łańcuchem, wybierz punkt końcowy TSA dla poziomów ze znacznikiem czasu i zdefiniuj politykę przechowywania oraz unieważniania obowiązującą w organizacji. |
| Automatyzacja preflight | FPdfPreflightReport i PreflightReportCli scalają wyniki PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R i PDF/VT w czytelne raporty TXT, HTML i Markdown albo maszynowo przetwarzalne JSON, CSV, SARIF 2.1.0, JUnit XML i NDJSON, z deterministyczną kolejnością i stabilnymi odciskami SHA-256. | Zdecyduj, czy wyniki zaliczony, wymaga-działania, przegląd lub liczba problemów powinny blokować CI, dostarczenie lub pobieranie archiwum. |
Te API zostały zaprojektowane tak, aby praca ze standardami była widoczna w kodzie. Wyniki walidacji, podsumowania preflight i helpery zapisu pomagają aplikacji odrzucać lub korygować problematyczne wyjście zamiast po cichu dostarczać plik, który zawodzi dopiero w archiwum, wydrukowaniu lub potoku dostępności. Wbudowane walidatory skupiają się na sprawdzeniach na poziomie znaczników i wybranych sprawdzeniach na poziomie pliku; zespoły wymagające formalnej certyfikacji na poziomie treści powinny połączyć je z dedykowanym silnikiem walidacji.
Architektura komponentów
TPdf: Niewidoczny komponent dokumentu do wczytywania, dostępu do strumieni, zapisywania, renderowania, wyszukiwania, wyodrębniania, walidacji, dostępu do formularzy, operacji na stronach, metadanych, załączników, adnotacji, raportowania preflight i przepływów pracy profilu PDF.TPdfView: Wizualny komponent przeglądarki do trybów wyświetlania, interakcji użytkownika, linków, przewijania, zoomu, zaznaczania, fokusu formularza, podświetlania, nawigacji po stronach i przepływów pracy ze schowkiem.TPdfThumbnailView: Przewijany panel boczny miniaturek do nawigacji po stronach, śledzenia bieżącej strony, informacji zwrotnej po najechaniu kursorem i układów towarzyszących przeglądarce.- Jednostki pomocnicze: łącznie 67 jednostek Object Pascal. Poza powiązaniem z silnikiem dzielą się na kryptografię (
FPdfAes,FPdfAesGcm,FPdfSha256,FPdfSha512,FPdfSha3,FPdfHmac,FPdfAsn1), podpisywanie (FPdfPades,FPdfCms,FPdfTsa,FPdfCryptoWin,FPdfCryptoMac,FPdfCryptoSsl,FPdfPkcs11,FPdfTrustedList), standardy (FPdfPdfa,FPdfPdfx,FPdfPdfua,FPdfPdfe,FPdfPdfvt,FPdfPdfr,FPdfPreflightReport), serializację i integralność (FPdfCompress,FPdfEncrypt,FPdfMac,FPdfStreamInspect,FPdfContentNormalize) oraz usługi treści (FPdfXfdf,FPdfXmp,FPdfLayout,FPdfMeasure,FPdfTextShaping,FPdfTextShapingHb,FPdfBidi,FPdfStructTree,FPdfAsync,FPdfMatrix).
Każda z powyższych jednostek to kod źródłowy, który otrzymujesz i przez który możesz przejść krok po kroku w debugerze. Prymitywy kryptograficzne napisano w Object Pascal i zweryfikowano względem opublikowanych wektorów testowych FIPS 197 i FIPS 180-4, dzięki czemu podpisywanie i szyfrowanie nie dodają zewnętrznej biblioteki C do wdrożenia ani obcego pliku binarnego do przeglądu bezpieczeństwa.
Pobierz pakiet demonstracyjny PDFium Delphi Component
Wersja 3.137.1 (2026-10-09): PDFium Delphi Component informacje o wydaniu | dokumentacja API. Najnowsze wydanie zachowuje dokładną diagnostykę statusu i powodu CRL oraz natywnych błędów, gdy online-weryfikacja unieważnień OpenSSL nie znajduje dowodów OCSP ani respondera. Wydanie 3.137.0 przenosi natywne buildy Free Pascal / LCL na Linux Qt6 i macOS Cocoa — z rozwiązywaniem fontów platformy, wczytywaniem, edycją, formularzami, zapisywaniem i renderowaniem; dodaje podpisywanie macOS Keychain z offline eksportem łańcucha certyfikatów; poprawia szerokości callbacków LP64, aby niestandardowe strumienie czytały powyżej 4 GiB na Unixie; i wymaga krytycznego, wyłącznego EKU znaczników czasu dla urzędów znaczników czasu PAdES. Wydania od 3.131.0 dodają też konwersję kolorów ICC przez LittleCMS, złożoną redakcję z raportami usuwania, porównywanie wyrównania stron oraz adnotacji i widgetów AcroForm, transakcyjne scalanie zachowujące nawigację i pola formularzy, stylowaną zamianę tekstu, tagowane układy tabel, opcjonalnych dostawców OCR Tesseract i kodów kreskowych oraz podpisywanie OpenSSL z dowodami OCSP.
Licencje i ceny
Płatność kartą kredytową/debetową, PayPal, AliPay lub przelewem przez 2Checkout / FastSpring — przy każdym poziomie licencji znajdziesz obie kasy, wybierz dowolną. Każda nowa licencja PDFium Delphi Component obejmuje kod źródłowy Object Pascal, rok aktualizacji i rok wsparcia e-mail.
| Licencja | Programiści | Cena | Zamów |
|---|---|---|---|
| Single | 1 programista | $350 | Zamów |
| Small Business | do 10 programistów | $700 | Zamów |
| Medium Business | do 30 programistów | $1050 | Zamów |
| Enterprise | Wszyscy programiści w jednej firmie i jej spółkach zależnych w obrębie jednego kraju | $2100 | Zamów |
| Corporate | Wszyscy programiści w jednej firmie i jej spółkach zależnych na całym świecie | $4200 | Zamów |
Dodatki źródłowe dla Enterprise i Corporate: PDFium Delphi Component Enterprise i Corporate zawierają pełny kod źródłowy dedykowanego przykładu klasy narzędziowej PDF Intake & Accessibility Review Workbench Pro. Kod źródłowy kompletnych zestawów testów używanych zwykle tylko do walidacji wewnętrznej jest dostępny na życzenie.
Odnowienie dla istniejących klientów: 40% pełnej ceny, z możliwością anulowania w dowolnym momencie. Otwórz stronę zakupu i odnowienia PDFium Delphi Component.
Dołączone przykłady
Pakiet wykracza poza odizolowane fragmenty API. Każda platforma dostaje 22 kompletne demo workflow w katalogu głównym plus dziesięć tematycznych zagadnień API w Miscellaneous: widać, jak komponenty współpracują w pełnych przepływach aplikacji, a zespoły dostają przetestowane punkty startowe do produkcyjnego UI, interakcji, wydajności, przeglądu, standardów, bezpieczeństwa i dostępności. Każde demo otwiera się z już załadowaną treścią — PDFViewer startuje na dołączonej prezentacji na sześciu stronach — więc pierwsze kliknięcie coś robi, zamiast prosić o plik.
- PDFViewer: Kompletna baza czytnika z zaznaczaniem tekstu, wyszukiwaniem, zakładkami, nawigacją po stronach, drukowaniem, linkami, trybami wyświetlania, miniaturami i paskiem doświadczeń dla wycieczek jednym kliknięciem: restart prezentacji, znajdywanie żywego tekstu, rozkładówka dwustronicowa, czytanie nocne, inspekcja dokumentu i eksploracja formularzy.
- MultiPageViewer: Zachowanie ciągłe, rozkładówkowe, z uwzględnieniem okładki i wielostronicowe dla aplikacji przeglądania dokumentów, którym potrzeba więcej niż jednej wyrenderowanej strony.
- SplitView: Dwa zsynchronizowane widoki tego samego dokumentu do porównywania, referencji i przeglądu.
- SearchAndSelect: Listy wyników wyszukiwania między stronami, opcje wyszukiwania, podgląd zaznaczonego tekstu, przepływy pracy ze schowkiem i mapowanie współrzędnych — dostępne wprost, a nie tylko przez pasek narzędzi przeglądarki.
- AccessibilityReader: Sesje czytania na głos, integracja z silnikiem mowy aplikacji gospodarza, jednostki czytania na poziomie zdań, podświetlanie czytania na poziomie słów, nawigacja po formularzach, inspekcja struktury tagowanej i tryby wyświetlania dla słabowidzących, plus konsolowy opis AccessibilityLab w Miscellaneous.
- ContentExtractionLab: Jeden przepływ pracy dla metadanych, tekstu, obiektów stron, obrazów, załączników, linków, adnotacji, zakładek, czcionek i metryk znaków z eksportem TXT / JSON.
- TableExtractionLab: Wykrywa tabele z ramkami i tabele wyrównane białymi znakami na podstawie ramek słów i przekształconych linii ścieżek, zachowuje scalone komórki i kontynuacje na kolejnych stronach, ocenia pewność i eksportuje do CSV lub JSON.
- PDFtoJpg, BatchExport, ExtractImages i ImageToPDF: Eksport rastrowy jednego dokumentu lub wielu, wyodrębnianie osadzonych obrazów, strumieniowe wczytywanie, kontrola DPI / jakości, wprowadzanie hasła, postęp i kooperacyjne anulowanie.
- MergePDF, SplitPDF, CreatePDF i WatermarkStamp: Montaż dokumentów z walidacją każdego źródła i interwałami stron, programowe tworzenie PDF za żywym edytowalnym podglądem, wielokrotnego użytku znaki wodne Form XObject, stemple narożne i etykiety numerów stron.
- FormFill i Attachment: Edycja wartości formularza i spłaszczanie oraz wyodrębnianie lub tworzenie plików osadzonych.
- StandardsLab, PreflightReport i PreflightReportCli: Przepływy pracy walidacji i zapisu PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R i PDF/VT, podglądy raportów, eksport TXT / HTML / Markdown / JSON / CSV, foldery wsadowe, posortowane podsumowania, nazwy raportów zabezpieczające przed duplikatami, dołączanie raportów i zorientowane na CI zachowanie wyjścia
failon=. - AccessibilityWorkbenchCli i IntakeWorkbenchCli: Bezokienkowe potoki przeglądu i przyjmowania dokumentów do wsadowej oceny dostępności i rejestracji dokumentów, przeznaczone do zadań harmonogramowych i CI, a nie do okna aplikacji desktopowej.
- Zagadnienia API w Miscellaneous: SecurityAudit do inspekcji zabezpieczeń w trybie tylko do odczytu, XfdfLab do przejazdów XFDF / FDF w obie strony z jawnym zapisem zaimportowanego PDF, XfaLab do statycznych pakietów XFA, plus kompaktowe opisy pełnego eksportu tekstu, metryk czcionek i znaków, zakładek i akcji nawigacji, preferencji druku N-up, diagnostyki interakcji i konsolowych jednostek czytania.
Dlaczego zespoły wybierają PDFium Delphi Component
- Podpisywanie i szyfrowanie bez drugiego dostawcy: PAdES od B-B do B-LTA, znaczniki czasu RFC 3161 i szyfrowanie PDF 2.0 AES-256 są częścią tej biblioteki. Większość zespołów Delphi dochodzi do tego punktu, dokładając osobny SDK do podpisów albo wdrożenie OpenSSL; tutaj to jeden pakiet, jedna licencja i kod źródłowy w Pascalu, który możesz samodzielnie zaudytować.
- Praca ze standardami widoczna w kodzie: Sześć rodzin standardów ISO ma prawdziwe walidatory z kodami wyników na poziomie klauzul, a nie pole wyboru. Wyjście preflight w formatach TXT, HTML, Markdown, JSON i CSV wpina się wprost w CI, a narzędzie wiersza poleceń zwraca kod błędu przy warunkach, które sam wybierzesz.
- Zapis PDF, którego silnik nie ma: Linearyzowany Fast Web View, pakowanie w strumienie obiektów i przyrostowe rewizje zmienionych obiektów zachowujące poprzedni plik bajt w bajt — dokładnie te formaty wyjściowe, których oczekują systemy archiwizacji, dystrybucja przez sieć i ścieżki audytu.
- Wrogie dane wejściowe traktowane jak wrogie: Dekodowanie strumieni, normalizacja treści i skanowanie struktury działają w ramach jawnych budżetów źródła, wyjścia, tokenów, zagnieżdżenia i współczynnika ekspansji, dzięki czemu zniekształcony lub celowo spreparowany PDF zwraca ustrukturyzowany status zamiast wywracać proces.
- Natywna integracja z Delphi: Prawdziwe komponenty VCL z kodem źródłowym w Object Pascal, a nie kontrolka ActiveX ani przeglądarka hostowana w przeglądarce internetowej.
- Jakość renderowania PDFium: Używa tej samej rodziny silników PDF open-source, która stoi za wyświetlaniem PDF w Chromium, zachowując integrację w Twoim kodzie Delphi.
- Przeglądarka i API w jednym pakiecie: Połącz dopracowaną przeglądarkę PDF na ekranie z niskopoziomowym dostępem do dokumentów, wyszukiwaniem, formularzami, drukowaniem, API walidacji i skryptowalnym raportowaniem preflight.
- Brak opłat licencyjnych runtime: Twórz aplikacje desktopowe bez opłat za dokument lub za użytkownika końcowego.
- Obsługa nowoczesnych IDE: Delphi XE5 do Delphi 13.1 Florence, C++Builder XE5 do C++Builder 13.1 Florence oraz przepływy pracy Lazarus / Free Pascal na Windows, Linux i macOS, z kompilacjami Win32 i Win64.
- Utrzymane pokrycie testami: Testy Delphi DUnitX, C++Builder GoogleTest i Lazarus FPCUnit obejmują główne przepływy pracy dokumentu, renderowania, formularzy, struktury, drukowania, miniaturek i przeglądarki.
Dokumentacja online PDFium Delphi Component
Przykład kodu
procedure TForm1.OpenPdf(const FileName: string);
begin
Pdf.FileName := FileName;
PdfView.Pdf := Pdf;
PdfThumbnailView.Pdf := Pdf;
PdfView.DisplayMode := dmSingleContinuous;
PdfView.FitMode := pfmFitWidth;
PdfView.AllowUserTextSelection := True;
PdfView.Active := True;
end;
procedure TForm1.HighlightInvoiceNumber;
begin
Pdf.PageNumber := PdfView.PageNumber;
if Pdf.FindFirst('Invoice', []) >= 0 then
PdfView.HighlightSearchText('Invoice', False, False);
end;
procedure TForm1.SaveArchiveCopy(const OutputFile: string);
begin
if not Pdf.SaveAsPdfA(OutputFile, pac1b) then
raise Exception.Create('The PDF/A archive copy could not be saved.');
end;
procedure TForm1.SignForLongTermArchive(const OutputFile: string);
var
Options: TPadesSignOptions;
begin
Options := TPadesSignOptions.Default;
Options.CertificateThumbprint := SignerThumbprint;
Options.Level := plB_LTA; // podpis + token TSA + DSS + archiwalny znacznik czasu
Options.TsaUrl := 'https://tsa.example.com/tsr';
Options.Reason := 'Approved for release';
if not Pdf.SignPades(OutputFile, Options) then
raise Exception.Create('The document could not be signed.');
end;
procedure TForm1.CheckSignatureLevel;
var
Result: TPadesValidationResult;
begin
Result := Pdf.ValidatePades;
if Result.IsCompliantAt(plB_LTA) and Result.IsCryptographicallyValid then
ShowMessage(Format('%d signature(s), %d archive time-stamp(s), verified.',
[Result.SignatureCount, Result.DocTimeStampCount]))
else
ShowMessage('The document does not reach the required PAdES baseline.');
end;
Typowe przypadki użycia
- Systemy zarządzania dokumentami z wbudowanym przeglądaniem PDF, wyszukiwaniem, drukowaniem i przepływami pracy formularzy.
- Aplikacje księgowe i fakturowe wymagające przeglądania PDF, wyodrębniania, obsługi załączników, sprawdzania gotowości do archiwizacji, wsadowych manifestów preflight i dołączania raportów.
- Oprogramowanie desktopowe dla branży prawnej, inżynieryjnej, medycznej i rządowej, gdzie użytkownicy muszą sprawdzać, drukować, walidować, raportować i zachowywać dokumenty PDF bez opuszczania aplikacji.
- Przepływy pracy z podpisanymi dokumentami w branżach regulowanych — umowy, faktury, listy przewozowe i akta, które muszą nieść podpis PAdES B-T lub B-LTA z zaufanym znacznikiem czasu i pozostać weryfikowalne przez lata.
- Poufna dystrybucja wymagająca szyfrowania PDF 2.0 AES-256 ze zdefiniowanymi uprawnieniami, zapisywanego przez samą aplikację, a nie przez zewnętrzne narzędzie w drugim przebiegu.
- Narzędzia do zgodności i pozyskiwania wymagające powtarzalnych sprawdzeń znaczników PDF/A, PDF/X, PDF/UA, PDF/E, PDF/R lub PDF/VT przed przekazaniem plików do zewnętrznych walidatorów lub systemów archiwizacji.
- Przeglądarki raportów i wewnętrzne narzędzia biznesowe wymagające szybkiego wyświetlania PDF, rasteryzacji stron, kopiowania tekstu i kontrolowanego drukowania.
Kiedy wybrać PDFium Delphi Component
- Wybierz PDFium Delphi Component, gdy aplikacja musi wyświetlać, weryfikować, podpisywać, szyfrować i dostarczać dokumenty PDF: profesjonalne podstawy czytnika, podpisywanie PAdES, szyfrowanie PDF 2.0, sześć walidatorów standardów, wyjście linearyzowane i przyrostowe, wydajność przy dużych plikach, obsługa dostępności, formularze i drukowanie — wszystko z jednego pakietu, wraz z kodem źródłowym. Renderowanie odbywa się przez dostarczaną w pakiecie bibliotekę
pdfium.dll. - Wybierz HotPDF Delphi Component, gdy aplikacja generuje dokumenty i wolisz nie dystrybuować żadnego silnika renderującego: HotPDF ma własny silnik renderowania, własne kodeki obrazów, własny silnik czcionek, generowanie kodów kreskowych, układ XFA i walidację Factur-X, a kompiluje się wprost do Twojego pliku wykonywalnego.
- Wybierz PDF Library for Delphi, gdy jeden zestaw narzędzi ma pokryć cały cykl życia dokumentu albo gdy potrzebujesz podpisywania tokenem sprzętowym PKCS#11, walidacji względem list zaufania UE, kontroli wg Arlington PDF Model lub dostępu przez DLL / ActiveX / Dylib dla kodu spoza Delphi.
Porównujesz całą rodzinę produktów? Przegląd bibliotek deweloperskich PDF zestawia PDFium Delphi Component, losLab PDF Library i HotPDF Delphi Component obok siebie.
Częste pytania
Czy PDFium Delphi Component jest tylko cienką nakładką na bibliotekę DLL PDFium?
Nie. PDFium renderuje i odczytuje; nie potrafi podpisać dokumentu, zapisać szyfrowania, zwalidować standardu PDF ani wygenerować rewizji linearyzowanych, opartych na strumieniach obiektów czy przyrostowych. Ponad 65 000 z około 154 000 wierszy Object Pascal w pakiecie znajduje się w jednostkach, które nie mają odpowiednika w API PDFium i realizują dokładnie te warstwy: podpisywanie PAdES od B-B do B-LTA, w pełni pascalowy stos kryptograficzny AES / SHA / ASN.1, szyfrowanie PDF 2.0 AES-256, sześć walidatorów standardów ISO, własny serializator PDF, XFDF, XMP oraz architekturę przeglądarki, czytnika i dostępności
Jakiego silnika używa PDFium Delphi Component?
PDFium Delphi Component używa PDFium – tej samej rodziny silników open source, która obsługuje wyświetlanie PDF w Chromium – do renderowania stron i odczytu dokumentów. Wszystko, czego silnik nie zapewnia, losLab zaimplementował w Object Pascal: model komponentów, warstwę serializacji i rewizji PDF, podpisy cyfrowe, szyfrowanie, walidację standardów, architekturę czytnika, warstwę dostępności, przykłady i testy
Czy PDFium Delphi Component potrafi podpisywać dokumenty PDF podpisem cyfrowym?
Tak. Implementuje bazowe profile PAdES B-B, B-T, B-LT i B-LTA z normy ETSI EN 319 142-1: budowę CMS / CAdES SignedData zgodnie z RFC 5652, żądania znaczników czasu RFC 3161 do urzędu TSA, zebranie łańcucha certyfikatów w Document Security Store oraz archiwalne znaczniki czasu. Klucze podpisujące są używane przez backend Windows CNG lub, poza Windows, przez jawnie skonfigurowane klucze prywatne i łańcuchy certyfikatów OpenSSL, z RSA-PSS, PKCS#1 lub ECDSA. Sam PDFium potrafi jedynie odczytać istniejące słowniki podpisów
Czy potrafi szyfrować dokumenty PDF?
Tak. SaveAsEncrypted zapisuje szyfrowanie ISO 32000-2 AES-256, łącznie z wyprowadzaniem skrótu hasła R6 według algorytmu 2.B, wpisami słownika /O /U /OE /UE /Perms oraz pełnym szyfrowaniem strumieni i ciągów znaków. Obsługiwane są ISO/TS 32003 AES-GCM oraz tokeny ISO/TS 32004 PDF MAC. Prymitywy AES, SHA-256/384/512, HMAC i ASN.1 napisano w czystym Object Pascal, bez zewnętrznej zależności od kodu C
Czy PDFium Delphi Component obsługuje Lazarus i Free Pascal?
Tak. Pakiet zawiera pliki pakietów Lazarus / Free Pascal oraz demonstracje LCL, obok komponentów VCL dla Delphi i C++Builder, i obejmuje Delphi oraz C++Builder od XE5 do 13.1 Florence dla Win32 i Win64. Natywne buildy Free Pascal / LCL działają także na Linux z Qt6 i na macOS z Cocoa
Jak szybko otwiera bardzo duże pliki PDF?
Przeglądarka używa dostępnego na żądanie, przeszukiwalnego dostępu PDFium zamiast pełnego wczytania pliku z góry. W rzeczywistych testach pliki PDF o rozmiarze 2.x GB, które powodują, że popularne czytniki PDF potrzebują 20–30 sekund przed pierwszym widokiem, stają się użyteczne w PDFium Delphi Component niemal natychmiast
Czy PDFium Delphi Component może tworzyć lub edytować dokumenty PDF?
Obsługuje składanie dokumentów: tworzenie dokumentów, dodawanie i usuwanie stron, import zakresów stron, przenoszenie stron, kompozycję N-up, znaki wodne, stemple oraz aktualizacje zawartości stron. Do intensywnego programowego tworzenia PDF lepiej pasuje HotPDF Delphi Component lub losLab PDF Library
Czy obsługuje formularze AcroForm i XFA?
Tak. Obsługuje pola AcroForm, fokus formularza i zaznaczony tekst, cofanie i ponawianie, generowane wyglądy, flagi pól oraz spłaszczanie, wykrywa stan XFA i może używać opcjonalnych bibliotek DLL runtime obsługujących V8 / XFA, gdy te funkcje są potrzebne
Jakie standardy PDF może walidować?
Sześć rodzin standardów, każda z własnym walidatorem i odpowiadającym mu helperem zapisu lub wstrzykiwania znaczników: PDF/A (ISO 19005 części od 1 do 4, łącznie z opartymi na PDF 2.0 profilami A-4 base/f/e), PDF/X (ISO 15930, łącznie z X-6), PDF/UA (ISO 14289-1), PDF/E (ISO 24517-1), PDF/VT (ISO 16612-2, łącznie z pakowaniem strumieni MIME w VT-2s) i PDF/R (ISO 23504-1). Struktura bazowa PAdES jest walidowana osobno względem ETSI EN 319 142-1. Raporty preflight eksportują się do TXT, HTML, Markdown, JSON, CSV, SARIF 2.1.0, JUnit XML i NDJSON. Walidatory obejmują poziom znaczników oraz rosnący zbiór klauzul na poziomie pliku; gdy wymagana jest formalna certyfikacja, połącz je z dedykowanym silnikiem walidacji
Czy występują tantiemy runtime lub opłaty za użytkownika?
Nie. Licencjonowane aplikacje można dystrybuować bez tantiem i bez opłat runtime za dokument lub użytkownika końcowego
Co obejmuje licencja i jak działa odnowienie?
Nowa licencja ($350 Single, $700 Small Business (up to 10 developers), $1050 Medium Business (up to 30 developers), $2100 Enterprise (one company, one country), $4200 Corporate (one company, worldwide)) obejmuje kod źródłowy Object Pascal, rok aktualizacji i rok wsparcia e-mail. Obecni klienci odnawiają dostęp do aktualizacji za 40% pełnej ceny
Odkryj więcej z Delphi PDF Component & Spreadsheet Development
Subskrybuj aktualizacje produktów
Subskrybuj, aby otrzymywać najnowsze aktualizacje na swój adres e-mail.
