PDFium source-code SDK

PDFium Delphi Component dla Delphi, C++Builder i Lazarus

Twórz gotowe do użycia produkcyjnego przeglądarki PDF i obiegi dokumentów bez budowania od podstaw warstwy aplikacyjnej wokół PDFium. PDFium Delphi Component łączy natywne komponenty VCL i LCL dla Delphi, wysokopoziomowe API dokumentów, profesjonalne aplikacje czytnika jako punkt odniesienia, wydajność dla dużych plików, narzędzia dostępności i pełny kod źródłowy Object Pascal.

PDFium Delphi Component podgląd

PDFium Delphi Component w skrócie

ProduktPDFium Delphi Component — profesjonalny SDK aplikacji PDF z kodem źródłowym dla Delphi, C++Builder i Lazarus
Najlepsze zastosowanieDostarczanie wydajnych czytników PDF, narzędzi przeglądu, obiegów dokumentów i dostępnych doświadczeń czytania w aplikacjach natywnych
Obsługa IDEDelphi i C++Builder od XE5 do 13.1 Florence (Win32, Win64); Lazarus / Free Pascal LCL na Windows, Linux (Qt6) i macOS (Cocoa)
Rola silnikaPDFium — 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 aplikacji154 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 cyfrowePodpisywanie 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
SzyfrowanieObsł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
StandardyWalidatory 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 PDFWłasny serializator: linearyzowany Fast Web View, pakowanie do strumieni obiektów i xref, przyrostowe rewizje zmienionych obiektów, weryfikowane kopie naprawcze
Zasoby czytnika22 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 plikiDostę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łowyPełny kod źródłowy Object Pascal dołączony do każdej licencji
LicencjonowanieBez tantiem, jednorazowo $350-$4200 zależnie od poziomu; odnowienie za 40% ceny katalogowej
Bieżąca wersja3.137.1 (2026-10-09)
Wersja próbnaPobierz 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 funkcjonalnySilnik PDFiumZaimplementowane przez PDFium Delphi Component
Podpisy cyfroweOdczytuje wyłącznie istniejące słowniki podpisówPodpisywanie 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
SzyfrowanieOtwiera zaszyfrowane pliki, ale nie potrafi zapisać szyfrowaniaISO 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ępnianeAES-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 standardamiBrak jakiegokolwiek walidatoraPDF/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 PDFJeden sekwencyjny zapis całego plikuLinearyzowany 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 dokumentyCiche odzyskiwanie, bez raportuPolityki wczytywania strict, compatible i recovery ze strukturalną diagnostyką: ścieżka odbudowy, przesunięcia uszkodzeń, sprzeczne rewizje i stan budżetów
Wymiana danych formularzyBrak API XFDF lub FDFImport i eksport XFDF (ISO 19444-1) oraz FDF dla wartości pól i 18 podtypów adnotacji
MetadaneOdczytuje klasyczny słownik infoCzytnik i zapis pakietów XMP z typowanymi kontenerami, wykorzystywany przez każdy profil standardu
Sieć i skalaWywołania zwrotne zakresów bajtów i nic ponadtoProgresywne 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 aplikacjiUchwyty i wywołania zwrotne języka CTrzy 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ść TPdfView na 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 TPdfThumbnailView obok 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: GetStructuredText buduje 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: ExtractTables i ExtractDocumentTables łą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: BuildReflowDocument zamienia 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ą PreparePadesRemoteSignature i CompletePadesRemoteSignature — 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. TPdfStreamInspector dekoduje 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 SetPdfPrintPaperHandlingDevMode do 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 pracyObsługa PDFium Delphi ComponentOdpowiedzialność aplikacji
PDF/AValidatePdfA, 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/XValidatePdfX, 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/UAValidatePdfUa, 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/RValidatePdfE, 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 PAdESSignPades, 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 preflightFPdfPreflightReport 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.

LicencjaProgramiściCenaZamów
Single1 programista$350Zamów
Small Businessdo 10 programistów$700Zamów
Medium Businessdo 30 programistów$1050Zamów
EnterpriseWszyscy programiści w jednej firmie i jej spółkach zależnych w obrębie jednego kraju$2100Zamów
CorporateWszyscy programiści w jednej firmie i jej spółkach zależnych na całym świecie$4200Zamó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.