Odczytywanie właściwości czcionek PDF za pomocą komponentu PDFium w Delphi
Badaj czcionki w plikach PDF z poziomu Delphi za pomocą komponentu PDFium: odczytuj nazwę rodziny glifu, nazwę bazową, grubość, kąt pochylenia oraz informację,
Blog programistyczny losLab Software
Software Development Blog
Badaj czcionki w plikach PDF z poziomu Delphi za pomocą komponentu PDFium: odczytuj nazwę rodziny glifu, nazwę bazową, grubość, kąt pochylenia oraz informację,
Przed zaufaniem plikowi PDF oceń obszar ryzyka. Zobacz, jak PDFium odczytuje JavaScript, akcje uruchamiania i uprawnienia podpisów w Delphi Plik PDF to nie
Złóż działającą przeglądarkę PDF w Delphi za pomocą komponentu PDFium: połącz TPdf z TPdfView, załaduj i wyrenderuj dokument, a następnie dodaj stronicowanie,
Działający przepis w Delphi na łączenie folderu zeskanowanych stron w jeden PDF za pomocą komponentu PDFium: utwórz dokument, dodaj stronę dla każdego obrazu,
Rasteryzuj strony PDF do JPEG w Delphi za pomocą komponentu PDFium: przelicz DPI na rozmiar w pikselach, wyrenderuj każdą stronę do mapy bitowej, a następnie
Utwórz PDF od zera w Delphi za pomocą PDFium Component: CreateDocument, AddPage, AddText i CreatePath, z obsługą współrzędnych i osadzonych czcionek
Tworzenie adnotacji wyróżnienia i podkreślenia w PDFium dla Delphi: kolejność punktów QuadPoints, dlaczego FPDFAnnot_SetAttachmentPoints zwraca false
Diagnozuj błędy ładowania pdfium.dll w Delphi: napraw niezgodność 32/64-bitową ERROR_BAD_EXE_FORMAT 193, wykryj przestarzałą bibliotekę DLL i ładuj komponent
Wykrywaj formularze XFA w Delphi i wyodrębniaj pakiety szablonów (template), zestawów danych (datasets) oraz konfiguracji (config) jako czysty XML za pomocą
Eksportuj i importuj dane formularzy oraz adnotacje XFDF w Delphi za pomocą komponentu PDFium Component: zgodność z ISO 19444-1, 18 podtypów adnotacji
Wydobywaj osadzone obrazy PDF w Delphi przez PDFium Component: czytaj BitmapCount, pobieraj Bitmap[], obsłuż ciche błędy otwarcia i zapisz JPEG albo BMP
Wyodrębniaj tekst z PDF w Delphi za pomocą PDFium Component: dostęp do glifów przez Character[], ReadablePageContent i zabezpieczenie przed błędami Active
Opakowanie biblioteki C w Pascalu ukrywa ostre krawędzie. Zobacz rzeczywiste błędy powiązań PDFium, od wywołań cdecl po skracanie wskaźników Win64 w FPC
Odczytuj podpisy PDF za pomocą komponentu PDFium w Delphi i Lazarus: sprawdzaj SubFilter, ByteRange i CMS, a następnie wykrywaj podstawowe poziomy PAdES od B-B
Dodawaj długoterminowe podpisy PAdES w Delphi za pomocą komponentu PDFium: znaczniki czasu RFC 3161, magazyny walidacyjne DSS oraz DocTimeStamps dla B-T, B-LT
Łączenie plików PDF w Delphi za pomocą PDFium Component: ImportPages, ciągi zakresu stron, pozycja wstawiania oraz ciche błędy przy uszkodzonych plikach
Układaj wiele stron PDF na jednym arkuszu, zmieniaj kolejność stron w miejscu lub wyodrębniaj ich podzbiory. Poznaj API PDFium w Delphi Scalanie i dzielenie to
Dlaczego wyszukiwanie kluczy po podciągu psuje parsowanie słowników PDF w Delphi: dopasowanie całych tokenów wg ISO 32000-1 i limity zasobów na wrogie pliki
Dostosuj przeglądarkę PDF w Delphi do czytników ekranu: tagowana kolejność czytania, podświetlanie TTS na poziomie słów i rozwiązania awaryjne dla PDF bez tagów
Jak PDFiumPas przeszczepia pola AcroForm między dokumentami PDF w Delphi: GraftPdfAcroForm, przepinanie widgetów, transakcje mapy i limity fail closed
PDFiumPas dobiera jądra box, bilinear, bicubic lub Lanczos przy pomniejszaniu obrazów PDF w Delphi, z matematyką świadomą alfy i budżetem pamięci roboczej
Zbuduj panel przeglądu adnotacji PDF w Delphi: indeksuj oznaczenia po stronach, przetrwaj weto strumienia wyglądu i zmieniaj kolor lub usuwaj bez duchów
Długie renderowania PDF należą poza wątek UI. Poznaj, jak binding PDFium uruchamia pracę na wątkach w tle z anulowalnymi futures w Delphi. Renderowanie strony
Jak komponent PDFium dla Delphi renderuje strony poziomymi pasami, dlaczego ujemny offset Y zachowuje geometrię całej strony i jak strumieniować PNG oraz TIFF
Powolne renderowanie strony nie powinno zamrażać UI ani dobiegać końca: jak progresywne renderowanie PDFium staje się anulowalne przez IFSDK_PAUSE w Delphi
Checkboxy spłaszczają się jako odznaczone w PDFium Component, gdy /V jest odczytywane z widgetu adnotacji, bo /V należy do nadrzędnego słownika pola według ISO
PDFium Component zapisuje tekst na poziomie glifów czcionką CID Type 2, generując mapy CID-to-GID i ToUnicode, więc ukształtowany tekst zostaje do wyciągnięcia
PDFium Component sortuje signedAttrs jako DER SET OF, bo wymaga tego X.690 11.6, a samoweryfikacja nigdy nie wykryje tego, co odrzucają zewnętrzne walidatory
Łańcuch wyszukiwania, którym komponent PDFium znajduje swoją bibliotekę natywną, i jak jedna wielka litera w makro celu połamała całe wyszukiwanie na Linuksie
Cztery ukryte różnice między Delphi a FPC/Lazarus w tym samym kodzie PDFium: czas życia rekordu tymczasowego, sprawdzanie zakresu tablic, rzutowanie TBytes
PDFium Component dokłada do edycji PDF w Delphi cofanie, ponawianie i odzyskiwanie po awarii, oparte na zweryfikowanych migawkach i zwartych deltach
Jak PDFium Component wczytuje osadzony PDF wprost z zakresu bajtów TBytes w Delphi, z bezpiecznymi wobec przepełnienia sprawdzeniami granic i regułami czasu
FPDFText_GetUnicode zwraca pełny 32-bitowy punkt kodowy, ale WideChar mieści 16 bitów, więc komponent PDFium w Delphi może uszkadzać emoji i rzadkie ideogramy
Komponent PDFium w Delphi odmawia łatania zaszyfrowanego PDF znacznikami w zwykłym tekście lub podpisami PAdES, zgodnie z ISO 32000-1 sekcja 7.5.6
Jak komponent PDFium uwierzytelnia europejską listę zaufaną przed parsowaniem i zapisuje status kwalifikowany osobno od zwykłego zaufania łańcucha
PDFiumPas rozwiązuje aktywny łańcuch rewizji xref i poziom rozszerzenia Adobe, aby zapisywać pliki PDF w Delphi w dokładnej wersji od 1.3 do 1.7 bez naruszania
Jak WaitForIdle i odpowiedzi padSynchronize zakleszczają główny wątek Delphi w PDFium Component, plus pojemność kolejki, kolejność zamykania i granice
FillChar na wyniku funkcji Delphi lub FPC zeruje zarządzany rekord bez zwolnienia łańcuchów znaków, wyciekając pamięć przy każdym uruchomieniu w pętli
Dlaczego wypełnione formularze PDF wyglądają w Acrobacie na puste i jak to naprawić: FormFill, przechodzenie pól Tabem i GenerateFormAppearances w Delphi
Trójwarstwowa pętla drukowania w przeglądarce PDF na Delphi i FPC wciąż renderuje po kliknięciu Anuluj, bo Free Pascal zamyka granicę pętli for przy wejściu
Nie-ASCII tytuł PDF staje się niepoprawnym UTF-8 w pakiecie XMP Free Pascal. Poznaj regułę codepage łańcuchów i poprawkę SetCodePage w PDFium
Zapisuj PDF szyfrowane ISO/TS 32003 AESV4-GCM w Delphi z PDFiumPas: wyprowadzanie klucza R7, tokeny integralności PDF MAC i kontrole ValidatePdfMac
Praktyczny przewodnik po PDFium Component i Lazarus and Free Pascal viewer integration: architektura, diagnostyka, walidacja, przypadki brzegowe i lista
PDFium VCL wysyła zapytania znaczników czasu RFC 3161 przez libcurl na targetach innych niż Windows, z ośmioma bindowanymi symbolami i dwoma ustawieniami
Dodaj tryb ciemny i tryby czytania dla słabowidzących do przeglądarki PDF w Delphi: inwersja po renderowaniu, dwa rodzaje skali szarości i nakładki kolorów
PDFium VCL binduje symbole frameworku Security w runtime, więc backend podpisujący przez Keychain macOS kompiluje się wszędzie i wypisuje brakujące symbole
Oznaczona treść to para BDC i EMC za otagowanym PDF. Jak PDFium Component czyta nazwy znaczników, typizowane listy właściwości i MCID ze zwykłego kodu Delphi
Jak konwencja wektora wierszowego PDF sprawia, że Multiply dołącza a PreMultiply poprzedza w Delphi, dlaczego PreTranslate potrzebuje części liniowej i jak
Jak PDFium Component przebudowuje drzewa nazw i liczb ISO 32000 w Delphi: zbalansowane węzły, poprawne /Limits, stabilny numer korzenia i weryfikowane zapisy
Poznaj, dlaczego samo FlateDecode pozostawia strumienie obiektów PDF zróżnicowane zamiast surowych, i jak PDFiumPas stosuje rekonstrukcję Predictor PNG i TIFF
PDFium Component dokłada niewidoczną warstwę tekstu OCR do skanów PDF z poziomu Delphi, mapując czworokąty słów przez transformacje urządzenie-strona
PDFium VCL wpina weryfikator CMS OpenSSL w walidację PAdES, a trzy zachowania OpenSSL po cichu dadzą zły wyrok, jeśli nie obsłużysz ich świadomie
Jak SaveAsRedacted w PDFiumPas dzieli na poziomie operatorów zakryty tekst, ścieżki i obrazy, a następnie przycina nieużywane zasoby z dokumentu
Gdy pdfium.dll jest starsze niż wiązanie, jeden brakujący eksport może zabić wczytanie: jak PDFium Component bramkuje opcjonalne eksporty w Delphi
Jak PDFiumPas przepisuje konspekt PDF w Delphi po przeniesieniu lub usunięciu stron: podpisany Count, łańcuchy rodzeństwa, ApplyPageMap i weryfikowane zapisy
Dlaczego uchwyty obiektów strony PDFium czytają stare współrzędne po FPDFPage_TransFormWithClip w Delphi, plus kolejność przeładowania i strażnicy getterów,
Ogranicz każdy parser PDF w Delphi jedną polityką snapshotów: PDFium Component centralizuje limity rekursji, tokenów, obiektów, bajtów, ekspansji i terminu
Wstępna kontrola plików PDF w Delphi z PDFium Component: słownik Info i metadane XMP, szyfrowanie, JavaScript i XFA oraz wczesne kierowanie ryzykownych plików
Twórz archiwa PDF/A zgodne z veraPDF w Delphi z PDFium Component: SaveAsPdfA, wstrzykiwanie XMP i ICC OutputIntent, zgodność a/b/u oraz najważniejsze pułapki
Dlaczego PDF/A zawodzi na limitach kontenera z Załącznika C lub symbolicznym wpisie /Encoding TrueType i jak PDFium Component raportuje to z Delphi
Zbuduj checker preflight PDF/A w Delphi z PDFium Component: skan tokenów dla 29 problemów walidacyjnych, bramkowanie zależne od części, strumienie obiektów,
PDFDocEncoding ma blok specjalny na $80, nie $7F, a jeden przesunięty wiersz sprawia, że import FDF w PDFium dekoduje każdy znak jako sąsiada z tabeli
PDF/R utrzymuje skan na jednym obrazie paskowym na stronę bez tekstu i bez czcionek. Jak PDFium Component waliduje ISO 23504-1 w Delphi i co każde odrzucenie
Przechodź po żywym drzewie tagów PDF z PDFium VCL, by wychwytywać błędy PDF/UA pomijane przez skan na poziomie bajtów: Figure Alt, Formula i identyfikatory Note
Twórz i waliduj pliki druku danych zmiennych PDF/VT-1 w Delphi z PDFium VCL: drzewa DPart, obowiązkowe powiązanie z PDF/X-4 i pułapki normy ISO 16612-2
PDFiumPas podpisuje PAdES przez token PKCS#11 w Delphi. CK_ULONG ma 4 bajty w Windows i 8 w LP64, a tabela funkcji przesuwa się przy innym pakowaniu
Jak komponent PDFium prowadzi każde kształtowanie przez jeden instalowalny backend: Uniscribe na Windows i wiązany w czasie wykonania HarfBuzz dla FPC
Automatyzacja preflight PDF/A i PDF/UA w Delphi z PDFium Component: pętle wsadowe, kody wyjścia, raporty JSON i HTML, i dlaczego puste wyniki to nie zaliczenie
PDFium Component buduje z Delphi semantyczny model przepływowy ze stron PDF i eksportuje samodzielny HTML z nagłówkami, listami i wykrytymi tabelami
Podpisuj PDF kluczem HSM albo chmurowym z Delphi za pomocą PDFiumPas PreparePadesRemoteSignature i CompletePadesRemoteSignature z trwałymi sesjami podpisywania
Utrzymaj płynny zoom i przewijanie w przeglądarkach PDF w Delphi z PDFium: poprawne klucze cache, własność bitmap, renderowanie progresywne i budżet pamięci
Blokada renderowania PDFiumPas chroni rasteryzację przed równoczesnym UnloadPage lub ReloadPage, ale sześć wywołań TPdf i TPdfView pomijało ją aż do v2.26.0
Utwardź panel podglądu PDF w Delphi z PDFium Component: wyłącz JavaScript przy wczytaniu, przechwytuj kliknięcia linków, filtruj załączniki i czytaj uprawnienia
Jak PDFiumPas odczytuje pojedynczy obiekt PDF bez wczytywania pliku: rzadkie sekcje xref, leniwe strumienie obiektów, hybrydowy XRefStm i okna odczytu 1 MiB
Wyodrębniaj tekst PDF jako bloki, wiersze i fragmenty stylu w Delphi z PDFiumPas GetStructuredText: kolejność czytania, wzbogacenie z tagów i budżet
PDFium Component pozwala aplikacji Delphi podać własne bajty fontów dla nieosadzonych fontów PDF, zastępując mapowanie systemowe deterministycznym dostawcą
PDFium Component wykrywa w Delphi tabele liniowane i wyrównane spacjami, rozwiązuje scalone komórki oraz zakresy i eksportuje wiersze jako CSV albo JSON
Układanie tekstu w PDF wymaga szerokości ciągów przed rysowaniem. Zobacz, jak wiązanie PDFium mierzy tekst bez dotykania strony, na potrzeby zawijania w Delphi
PDFium przechowuje w Delphi buforowany uchwyt FPDF_TEXTPAGE; po edycjach AddText, SetText lub AddPath staje się nieaktualny, chyba że zostanie ponownie
Napraw podwójnie obrócone miniatury PDF w Delphi za pomocą PDFium: dlaczego parametr obrotu renderowania jest addytywny i jak dopasowanie powiększenia zamienia
Czemu przenoszenie układu tekstu PDF z Windows znaczy implementowanie UAX #9 samodzielnie i dwa błędy, które psują znaki astralne albo pomijają przestawianie
Strona tekstowa PDF nie ma obiektów linii. Zobacz, jak PDFium Component buduje linie wizualne z geometrii FPDFText_GetCharBox i dzieli jeden helper między
Jak PDFium Component rozdziela w Delphi indeks pola formularza od indeksu adnotacji: filtruje podtypy Widget, mapuje na natywnej granicy i naprawia fokus
Synchronizuj syntezę mowy z podświetlaniem słów w Delphi za pomocą ramek słów PDFium: TrackReadingWordAt, kolejność renderowania, auto-scroll i pułapki Unicode
Komponent PDFium zapisuje edycje pól XFA wyłącznie do bufora w pamięci, więc aplikacje Delphi tracą wartość przy zapisie: AcroForm ją utrwala, XFA nie
Drukuj pliki PDF z Delphi za pomocą komponentu PDFium: renderuj strony za pomocą RenderPage i rePrinting, wysyłaj mapy bitowe do TPrinter przez StretchDIBits,
Narysuj znak wodny lub logo tylko raz, umieść je na każdej stronie. Zobacz, jak Form XObjects w PDFium pozwalają na wielokrotne użycie pieczątek stron w Delphi
Uruchamiaj kod AcroForm JavaScript w Delphi za pomocą komponentu PDFium Component: wymagania dotyczące biblioteki DLL V8 oraz zdarzenia hosta
Dodawaj podpis cyfrowy PAdES B-B do PDF w Delphi za pomocą PDFium Component: własna implementacja SHA-256, CMS oraz backend Windows CNG do podpisu bajtowego
Jak podzielić plik PDF na strony, zakresy lub zakładki za pomocą PDFium Component w Delphi: TPdf.ImportPages, CreateDocument i sprawdzanie wyniku SaveAs
Wielogigabajtowy PDF nie musi ładować się w całości. Zobacz, jak adapter TStream zasila wywoływany na żądanie callback FPDF_FILEACCESS z PDFium i dlaczego
Zbuduj przeglądarkę PDF obok siebie w Delphi z PDFium Component: dwa lub trzy niezależne panele, powiększenie per-widok przez TPdfView.Zoom i zsynchronizowaną
Nowoczesne pliki PDF ukrywają strukturę w skompresowanych strumieniach obiektów i xref. Zobacz, jak walidator w Delphi rozszerza ObjStm i czyta strumienie
Walidacja plików PDF/X gotowych do druku w Delphi: ValidatePdfX z Komponentu PDFium wykonuje testy ISO 15930 dla TrimBox, Trapped, OPI, LZW oraz osadzania
Jak komponent PDFium dla Delphi weryfikuje podpisy PDF na macOS przez CMSDecoder i SecTrust: połączone zakresy bajtów, mapowanie statusów i reguły CFRelease
Dlaczego walidatory PDF odrzucają podpisy PAdES: zerowe pola ByteRange, brak przedrostka D: w dacie i utrata /Encrypt po aktualizacji przyrostowej
Zarządzaj załącznikami PDF w Delphi za pomocą PDFium Component: AttachmentCount, Attachment, CreateAttachment, DeleteAttachment i zapisy w miejscu