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
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 aplikacji115 000 wierszy kodu Object Pascal w 55 jednostkach, 475 publicznych składowych TPdf i 152 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
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 czytnika34 gotowe do uruchomienia projekty: referencyjne profesjonalne czytniki, laboratoria interakcji, stanowiska dostępności, narzędzia standardów i preflight, laboratoria tekstu CJK i RTL
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.51.0 (2026-08-16)
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 115 000 wierszy kodu Object Pascal w 55 jednostkach. Ponad 62 000 z tych wierszy znajduje się w 36 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, 475 publicznych składowych TPdf i 152 w TPdfView, stan przeglądarki, miniatury, sesje czytania oraz 34 gotowe do uruchomienia projekty

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.

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: Podłącz dowolny silnik rozpoznawania do IPdfOcrProvider, odbieraj bitmapy stron w zdefiniowanym formacie pikseli, zwracaj czworokąty słów i pozwól komponentowi zapisać przeszukiwalną warstwę tekstową, z raportowaniem stanu dla każdej strony i pomijaniem stron z istniejącym tekstem.
  • 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.
  • 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.
  • 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 55 jednostek Object Pascal. Poza powiązaniem z silnikiem dzielą się na kryptografię (FPdfAes, FPdfAesGcm, FPdfSha256, FPdfSha512, FPdfSha3, FPdfHmac, FPdfAsn1), podpisywanie (FPdfPades, FPdfCms, FPdfTsa, FPdfCryptoWin), 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, 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

2026-08-16 Version 3.51.0: PDFium Delphi Component informacje o wydaniu | dokumentacja API. Wersja 3.51.0 udostępnia publicznie osiem wcześniej nieosiągalnych składowych TPdf zgodnie z dokumentacją i uzupełnia angielską dokumentację referencyjną tak, aby każda publiczna składowa TPdf i TPdfView miała własną stronę — 88 składowych zyskało taką stronę — wraz z typami wyliczeniowymi i rekordami osiągalnymi z publicznych sygnatur.

Licencje i ceny

Płatność kartą kredytową/debetową, PayPal, AliPay lub przelewem przez 2Checkout. 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 zawiera gotowe do uruchomienia przykłady dla Delphi, C++Builder i Lazarus dotyczące podstawowych przepływów pracy, których większość zespołów potrzebuje przed integracją komponentu z oprogramowaniem produkcyjnym.

  • PdfViewer: Pełna przeglądarka z zaznaczaniem tekstu, wyszukiwaniem, zakładkami, nawigacją po stronach, drukowaniem, linkami i trybami wyświetlania.
  • ViewerInteractionLab i SearchAndSelect: Tryby wyświetlania, tryby dopasowania, kolory stron, obrót, podświetlanie wyników wyszukiwania, listy wyników ze wszystkich stron, podgląd zaznaczonego tekstu, kopiowanie, czyszczenie i mapowanie współrzędnych.
  • MultiPageViewer: Ciągłe, rozkładówkowe, z obsługą okładki i wielostronicowe zachowanie przeglądarki dla aplikacji do przeglądania dokumentów.
  • SplitView: Dwa zsynchronizowane widoki tego samego dokumentu do porównywania i przeglądania.
  • 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.
  • PDFtoJpg, BatchExport i ImageToPDF: Eksport rastrowy, wsadowa konwersja wielu plików, strumieniowe wczytywanie, kontrola DPI/jakości, wprowadzanie hasła, postęp i kooperacyjne anulowanie.
  • MergePDF, SplitPDF, CreatePDF i WatermarkStamp: Montaż dokumentów, programowe tworzenie PDF, znaki wodne Form XObject wielokrotnego użytku, stemple narożne i etykiety numerów stron.
  • FormFill, FontProperties i Attachment: Edycja wartości formularza i spłaszczanie, indeksowana inspekcja czcionek i znaków oraz wyodrębnianie lub tworzenie plików osadzonych.
  • SecurityAudit: Inspekcja tylko do odczytu uprawnień, załączników, JavaScript, linków URI/Launch, linków internetowych, podpisów, stanu XFA, dostępności helpera runtime i raportów audytu TXT/JSON.
  • XfdfLab i XfaLab: Przenoś dane formularzy i adnotacje w obie strony przez XFDF i FDF oraz sprawdzaj wykrywanie stanu XFA z opcjonalnym środowiskiem uruchomieniowym obsługującym V8 / XFA.
  • CJKTextLab i RTLTextLab: Obsługa tekstu chińskiego, japońskiego, koreańskiego, arabskiego i hebrajskiego — wyodrębnianie, wyszukiwanie, geometria zaznaczenia i kształtowanie tekstu w pismach, w których naiwne założenia o kolejności znaków zawodzą.
  • AnnotationsLab i NavigationLab: Tworzenie i edycja adnotacji znaczników z geometrią czworokątów oraz wzorce nawigacji po zakładkach, miejscach docelowych, akcjach nazwanych i etykietach stron.
  • 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.
  • 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 zachowanie wyjścia failon= zorientowane na CI.

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, 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 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 OCR, odczytu kodów kreskowych, podpisywania tokenem sprzętowym PKCS#11, walidacji względem list zaufania UE 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 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 62 000 z około 115 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 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

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 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.