PDF Library for Delphi: automatyczny fallback czcionek CJK i emoji
Napraw brakujące glify CJK, symboli i emoji w PDF z Delphi dzięki fallbackowi czcionek PDF Library for Delphi, kształtowaniu klastrów i raportowi JSON o brakach
Blog programistyczny losLab Software
Software Development Blog
Napraw brakujące glify CJK, symboli i emoji w PDF z Delphi dzięki fallbackowi czcionek PDF Library for Delphi, kształtowaniu klastrów i raportowi JSON o brakach
PDF Library for Delphi taguje tekst, nagłówki, ilustracje i tabele w trakcie rysowania, więc dostępny PDF nie wymaga owijania każdego wywołania w BeginTag
PDF Library for Delphi osadza w PDF obrazy AVIF, HEIF i JPEG XL, zachowując kanał alfa, profil ICC i 16-bitowe kanały, które konwersja przez mapę bitową traci
Wektorowe kody kreskowe drukowane są wyraźnie w każdym rozmiarze. Zobacz, jak PDF Library for Delphi rysuje symbole QR, PDF417, DataMatrix i Code128 w Delphi
Jak PDFlibPas utwardził wbudowany dekoder TIFF w Delphi: BigTIFF o sygnaturze 43 odrzucany z nazwy, kafelki odrzucane przy parsowaniu tagów i sufit 256 MiB
Zapisuj metadane poleceń Web Capture katalogu /SpiderInfo w Delphi za pomocą PDF Library for Delphi: pośrednie słowniki, URL, poziomy i biała lista flag
PDF Library for Delphi wysyła PDF-y przez Windows CDO, a poprawna obsługa apartamentów CoInitializeEx chroni wielowątkowe wysyłki wsadowe przed awariami
Jak PDF Library for Delphi odczytuje certyfikaty podpisującego z CMS podpisu: odczyty DER ograniczone rodzicem, przycięty padding /Contents i OID-y ponad 2.47
Pięć wzorców Pascal: działają na Delphi, a padają na Free Pascal albo przy uszkodzonym wejściu. Ukryte tablice wyników, nieaktualne liczniki, krótkie odczyty
Scal przednie i odwrócone tylne skany w kolejność czytania przez CollateDocumentsEx z PDF Library for Delphi, przeplatając strony bez duplikowania czcionek
Preflight PDF/A, podpisy PAdES i audyt ByteRange w jednym warsztacie Delphi, żeby wersja, którą walidujesz, była dokładnie tą, którą potem podpisujesz
Odtwórz strumień treści PDF w Delphi: śledź CTM, macierz tekstu, granice przycinania i stos stanu grafiki q/Q dla każdego napotkanego operatora
ConvertToPDFA naprawia dokument, deklaruje roszczoną część i sprawdza wynik, a RepairDocumentMetadata uzgadnia słownik Info z pakietem XMP w Delphi
Jak CopyForeignObject w PDFlibPas kopiuje domknięcie obiektu PDF między dokumentami i dlaczego cykliczne odwołania /Parent kończyły awarią bez zabezpieczenia
Eksportuj dowolny raport TDataSet, FastReport, QuickReport lub ReportBuilder do formatu PDF w środowisku Delphi za pomocą losLab PDF Library, z podziałem tabel
Uzyskaj bajtowo identyczny PDF w Delphi dzięki deterministycznemu ID w trailerze: jak powstaje seed, dlaczego szyfrowane pliki go zachowują i co jeszcze ustalić
PDF Library for Delphi udostępnia jedno płaskie API PDF jako DLL Stdcall, obiekt ActiveX Safecall i dylib Cdecl oraz pułapki łańcuchów i uchwytów w wiązaniach
PDF Library for Delphi dołącza akcje dokumentu, takie jak WillClose i WillPrint, do Catalog /AA, a akcje strony do Page /AA w Delphi, z ograniczeniami PDF/A
Jak PDFlibPas implementuje Ed448 z RFC 8032 i trzy krzywe Brainpool z RFC 5639 w czystym Object Pascalu, bez zewnętrznej biblioteki kryptograficznej
Zgodność z PDF/A to nie zgodność faktury. Zobacz, jak e-faktury z PDF Library for Delphi przechodzą kontrolę kontenera veraPDF i reguły biznesowe Mustang
Napraw błąd preflight PDF/A 00030 w Delphi: EmbedMissingFonts w losLab PDF Library dołącza programy czcionek do istniejących PDF bez przebudowy słowników
Jak PDFlibPas zamienia rekordy EMF PolyBezier, Polyline, PolylineTo, PolyPolyline i PolyDraw na ścieżki PDF zgodnie z MS-EMF, plus pułapki parsera w Delphi
Dlaczego konwerter EMF do PDF o 6500 liniach potrzebował zmiany warunku, a nie przepisywania, i jak pole hatch ULONG_PTR rozsuwa rekordy metafilów na Win64
PDF Library for Delphi ponawia błędne hasło PDF, tworząc TPDFDocument od nowa przy każdej próbie zamiast resetować go w miejscu, i przerywa po 16 próbach
Czytaj słownik PDF /Encrypt jak audytor z PDF Library for Delphi: algorytm, długość klucza, AES-256 R5 kontra R6, bity uprawnień i pułapki filtra Identity
E-faktura to PDF/A-3 z osadzonym XML. Zobacz, jak PDF Library for Delphi buduje hybrydowe faktury Factur-X i ZUGFeRD w kolejnych profilach z poziomu Delphi
PDF Library for Delphi łączy PDF-y szybko: używa ponownie bajtów źródłowych i przesuwa referencje pośrednie obiekt po obiekcie, pomijając pełne parsowanie
Czemu importer FDF może liczyć komentarze, których nigdy nie dodaje, jak losLab PDF Library parsuje klucze, Rect i dziesiętne oraz jak sprawdzić import
Przenoś dane formularzy PDF między AcroForm a systemami biznesowymi w Delphi za pomocą losLab PDF Library: wartości FDF i XFDF, pola hierarchiczne,
Sprawdź, czy w podpisanym formularzu PDF edytowano zablokowane pole. PDFlibPas rozwiązuje pełne nazwy pól per rewizja i stosuje reguły FieldMDP w Delphi
Jak AuditDocumentSpace w losLab PDF Library dzieli rozmiar pliku PDF na 12 kategorii obiektów w Delphi, byś mierzył rozdęcie zanim zaczniesz kompresować
EnumPageContentStatesEx wchodzi rekurencyjnie w Form XObject, wykrywa cykle po łańcuchu wywołań i poprawnie zakresuje zduplikowane nazwy zasobów w Delphi
Dlaczego w PDF Library for Delphi pod FPC strumienie FlateDecode powstawały jako sklejone człony zlib ucinane przez czytniki i jak jeden stan zlib to naprawia
Free Pascal na Win32 wymaga obiektów COFF, więc PDFlibPas utrzymuje osobny zestaw obiektów, normalizuje nazwy sekcji i porzuca helpery 64-bitowe Delphi
Pliki PDF mogą przenosić układ współrzędnych mapy. Zobacz, jak PDF Library for Delphi odczytuje rzutnie GeoPDF, słowniki miar oraz ramki geograficzne w Delphi
Buduj w Delphi akcje GoToR, GoToE i Launch: zdalne skoki stron, osadzone cele PDF i uruchamianie plików, plus pułapka numeracji stron liczonej od zera
Jak PDF Library for Delphi mierzy LoadFromFile i SaveToFile przez QueryPerformanceCounter, w parach A/B, z bramką startową 25% CPU i trzema kontrolami wyjścia
PDF Library for Delphi układa HTML z display flex i grid wewnątrz stron PDF oraz dzieli przypisy dolne na kolumny i strony z ciągłym numerowaniem
Czemu renderer HTML musi dekodować encje dokładnie raz, jak PDFlibPas re-eskapuje tekst na każdej granicy i jak bezpiecznie escapować dane użytkownika w Delphi
Rozlej tekst PDF w wyważone kolumny z dzieleniem wyrazów zależnym od języka, używając DrawTextFlowColumns i SetTextFlowHyphenation z poziomu Delphi
Dlaczego PDF Library for Delphi usuwa 1 0 0 1 0 0 Tm tylko dopóki macierz tekstu i macierz linii tekstu są jednostkowe, więc peephole nigdy nie rusza tekstu
Zapisuj przyrostowe aktualizacje ISO 32000-1 w Delphi przez AppendToStream: zachowaj podpisy cyfrowe i pomiń pełne przepisywanie dużych plików PDF
PDFlibPas v3.539.36 kończy z dzieleniem instancji boxów stron, więc edycja jednej strony PDF w Delphi nie przeskaluje stron dziedziczących z tego samego węzła
TPDFlibViewer zatwierdza edycję pola formularza przez OnExit; wyzeruj FInplaceEditor najpierw, bo utrata fokusu wchodzi w zatwierdzanie ponownie i psuje dane
Akcje formularzy zmieniają statyczną stronę w aplikację. Zobacz, jak PDF Library for Delphi wiąże akcje Hide, ImportData, Named i JavaScript z polami i linkami
Zbuduj interaktywną przeglądarkę PDF w Delphi VCL z TPDFlibViewer: pięć narzędzi myszy, gotowe akcje, podświetlanie wyników wyszukiwania i obsługę adnotacji
Jak pascalowy dekoder JBIG2 w PDFlibPas czyta segmenty Tables, nadaje kanoniczne kody prefiksowe według T.88 i trzyma odczyt refinement w granicach segmentu
PDFlibPas oferuje natywny koder JBIG2 w Pascalu i opcjonalny zewnętrzny, a przeniesienie tego backendu na Free Pascal wymagało DLL, a nie plików obiektowych
Jak PDFlibPas naprawił w Delphi dwie usterki regionów halftone JBIG2: transponowaną maskę skip HSKIP i ujemne offsety siatki psute przez operator shr
Jak PDFlibPas dekoduje pliki JBIG2 random-access w Delphi: indeks nagłówków do nagłówka końca pliku, rygorystyczne kontrole długości, zero kopiowania danych
PDFlibPas statycznie dołącza backend jbig2enc do programów Free Pascal bez DLL i pokazuje, jak ObjConv usuwa COMDAT oraz błąd wewnętrzny FPC 200603061
Praktyczny przewodnik po PDF Library for Delphi i large-PDF merge and split with direct access: architektura, diagnostyka, walidacja, przypadki brzegowe i lista
Pułapki LP64 w Delphi Linux64 przy porcie PDFlibPas: 8-bajtowe Longint, sygnatury nadpisań TStream, rekordy binarne i WIN64 jako zły test szerokości wskaźnika
PDFlibPas zapisuje liczby PDF z kropką i bez wykładnika na systemach z przecinkiem i parsuje strumienie treści, SVG i łańcuchy clip bez locale Delphi
Słownik LZW enkodera wyprzedza dekoder o jeden wpis, więc obie strony potrzebują różnych progów szerokości kodu. Jak PDFlibPas robi EarlyChange dobrze
Dlaczego usuwanie stron PDF nie zmniejsza pliku i jak mark-sweep garbage collection w Delphi usuwa osierocone obiekty na podstawie zbioru korzeni z trailera
PDFlibPas mapuje wielogigabajtowe PDF-y przez jedno przesuwne okno tylko do odczytu, a LoadFromMappedFile czyta fragmenty obiektów bez seek i buforów
PDF Library for Delphi scala dokumenty AcroForm z jawną polityką pól zduplikowanych, która bezpiecznie odrzuca, współdzieli albo zmienia nazwy takich pól
PDFlibPas implementuje FIPS 204 ML-DSA 44, 65 i 87 w czystym Object Pascal dla Delphi i FPC: wspólny silnik oraz błędy próbkowania, które psuły wektory KAT
PDFlibPas porównuje dokument z wcześniejszą rewizją i sortuje każdą różnicę do białej listy, więc egzekwowanie DocMDP sprowadza się do porównania poziomów
Renderuj strony PDF do bitmap 1-bitowych i wycinaj podregion z poziomu Delphi, korzystając z halftone GDI do konwersji w dół poza samym rendererem
Kompresuj zeskanowane strony PDF w Delphi przez CompressPageAsMRC: zredukowane tło JPEG plus maska CCITT pełnej rozdzielczości dla ostrego tekstu
Przełączaj silniki wbudowany, Cairo i PDFium dla każdego pliku w PDF Library for Delphi: sondy silników, pułapki skalowania DPI i łańcuch zapasowy
Jak PDFlibPas czyta w Delphi drzewa nazw i drzewa liczb PDF: cykliczne /Kids, niezaufane /Limits, drzewa 4096 poziomów i liście z ponad 32 768 wpisów
Sprawdzaj reguły EN 16931, XRechnung i Peppol BIS w Delphi przez PDFlibPas bez Javy: wbudowany zakres, tolerancje CII kontra UBL i przypięte pakiety reguł
Jak PDF Library for Delphi powstrzymała zapis bez zmian przed przepisywaniem wspólnego CreationDate i podmianą istniejącego pakietu XMP, i jak to sprawdzić
Jak losLab PDF Library zapisuje strumienie obiektów PDF 1.5 i strumienie xref z Delphi: układ ObjStm, wpisy typu 2, szerokości pól W i zasady szyfrowania
Warstwy PDF obsługują mapy, rysunki CAD i warianty językowe. Zobacz, jak PDF Library for Delphi tworzy i odczytuje grupy OCG oraz ich konfiguracje w Delphi
Większość bibliotek PDF dla Delphi zapisuje akcje zakładek i adnotacji, lecz nie umie ich odczytać; tutaj czytasz akcje GoTo, URI, Launch i JavaScript
Twórz podpisy PAdES B-B, B-T i B-LT z poziomu Delphi: rezerwacja miejsca na znacznik czasu, budowa DSS i audyt ByteRange, zanim zaufasz gotowemu plikowi
PDF Library for Delphi dodaje etykiety stron do PDF-ów z drzewem /PageLabels na /Kids, spłaszczając korzeń wg ISO 32000-1, by nowe zakresy etykiet zadziałały
PDFlibPas wiąże pliki osadzone z pojedynczą stroną przez tablicę /AF z ISO 32000-2 14.13, trzymając samą zawartość w drzewie nazw EmbeddedFiles
Połącz strony PDF obok siebie lub nałóż je z zachowaniem wierności wektorowej, korzystając z Form XObject w losLab PDF Library i szablonów znaków wodnych
Renderuj strony PDF równolegle w Delphi z losLab PDF Library: TPDFlib wymaga osobnej instancji na wątek roboczy, CoInitialize dla GDI+ i bezpieczne logowanie
Wypełniaj nazwane bloki tekstowe, obrazowe i PDF w Delphi z PDFlibPas dla certyfikatów, biletów i mail merge, plus formatowanie, współrzędne i pułapki
Zmniejsz rozmiar PDF w Delphi z losLab PDF Library: wydzielaj podzbiory fontów, obniżaj rozdzielczość obrazów i konwertuj strumienie LZW na Flate
PDF Library for Delphi przepisuje tokeny liczb PDF jak -.25 i 007.5 na poprawny JSON RFC 8259, pisze null dla NaN i Infinity oraz jest niezależna od locale
Eksportuj strony PDF jako semantyczny Markdown albo DOCX z poziomu Delphi: wywnioskowane nagłówki, listy, tabele i zapis strumieniowy bez pakietu Office
Dlaczego CAD-owy PDF z prostokątnymi viewportami Measure nie zapisywał się z błędem 602 w PDFlibPas, jak dzielą się reguły RL i GEO i skąd przyspieszenie skanu
Uruchom preflight PDF/A i PDF/UA z poziomu Delphi: ustrukturyzowane wyniki, raporty gotowe do diffowania, poprawki przy zapisie i kontrola krzyżowa veraPDF
Faktura Factur-X nie przejdzie veraPDF, gdy jej właściwości XMP są niezadeklarowane. Zobacz, jak dodać schemat rozszerzeń PDF/A-3 dla metadanych fx
PDF/E-1 ma własną przestrzeń nazw XMP, wymaga pełnych metadanych cyklu życia i zakazuje sekcji zgodności BX, więc PDFlibPas sprawdza zawartość z limitami
Jak PDFlibPas audytuje warstwy fontów PDF/UA w Delphi: szerokości glifów przez cmap i CIDToGIDMap, konserwatywne reguły CharSet i CIDSet, skan strumieni treści
Jak PDFlibPas waliduje pliki PDF/UA-2 w Delphi: przestrzenie nazw PDF 2.0 i RoleMapNS, limity fail-closed oraz szczery raport pokrycia sprawdzeń
PDFlibPas buduje szablony zamiany PDF/VCR-1 jako gałąź StructTreeRoot, brama zapisu i manifest przechodzą każdą gałąź najwyższego poziomu, nie tylko pierwszą
Generuj pliki PDF/X-1a, X-3 i X-4 do druku w Delphi z PDFlibPas: co pozwala każda część, co zapisuje SetPDFXMode i jak zrobić preflight wyniku
PDF Library for Delphi scala wizualnie identyczne obrazy różniące się tylko kodowaniem, używając hashowania percepcyjnego z trzema progami i trybem próbnym
Dlaczego wartości Predictor od 10 do 14 nadal niosą bajt filtra PNG w każdym wierszu i jak losLab PDF Library dekoduje je dla Flate i LZW oraz strumieni xref
PDFlibPas zachowuje tekst dziesiętny, który sparsował, i zapisuje go bez zmian, więc zapis bez edycji w Delphi nie zaokrągla wartości Gamma w CalRGB
Praktyczny przewodnik po PDF Library for Delphi i print preview and device-context output: architektura, diagnostyka, walidacja, przypadki brzegowe i lista
Profiluj renderowanie PDF w Delphi: zamień liniowe skany słowników na indeksy hashowe, matematykę gammy na LUT, a sklejanie tekstu O(n²) na buildery
Jak PDFlibPas otwiera wielogigabajtowe PDF przez zakresy HTTP i magazyny obiektów: wywołania zwrotne odczytu, cache chunków, scalanie żądań i prefetch
Jak PDF Library for Delphi publikuje naprawiony QDF atomowo: wyłączny plik tymczasowy, flush, rename w tym samym wolumenie, skopiowany DACL, odrzucane awarie
Biblioteka PDF dla Delphi otwiera PDF-y AES-128 i AES-256 z heksadecymalnego klucza pliku, sprawdza /U lub /Perms i zachowuje uchwyt tylko do odczytu
Jak PDF Library for Delphi odbudowuje uszkodzoną tabelę xref jednoprzebiegowym skanerem tokenów, który pomija ciągi znaków, komentarze i bajty strumieni
RecolorDocument przenosi PDF do odcieni szarości, RGB lub CMYK bez ponownego rysowania, konwertując operatory koloru, obrazy, palety indeksowane i stopnie
Zamieniaj strony PDF w miejscu, zachowując obiekt strony i przenosząc tylko klucze wizualne, dzięki czemu zakładki, linki i pola formularza to przeżywają
Hasła PDF AES-256 spoza ASCII zawodzą w innych czytnikach bez SASLprep. Jak PDF Library for Delphi przygotowuje hasła według ISO 32000-2 i RFC 4013 w Delphi
Generuj samopodpisane certyfikaty testowe RSA w Delphi za pomocą PDF Library for Delphi i Win32 CryptoAPI, obejmując flagi długości klucza CryptGenKey i pułapki
PDFlibPas odpala SHA-3 i SHAKE256 na jednym rdzeniu Keccak-f[1600], rozdzielonych tylko bajtem domeny pad10*1 i regułą rate, plus strumieniowe XOF dla Delphi
Trzy postacie pustej implementacji zastępczej, dlaczego ta zgłaszająca sukces jest najtrudniejsza do znalezienia i jak ją diagnozować, badając bajty wyniku
PDFlibPas podpisuje PDF-y SM2 i SM3 oraz szyfruje filtrem SM4 w czystym Object Pascalu: wywołania API, OID-y, noty o współpracy i pułapki big-integer
PDF Library for Delphi tworzy maski miękkie alfa i luminancji, ustawia wpisy Matte obrazów oraz spłaszcza przezroczystość do drukowalnego pliku PDF 1.3
Twórz oznaczone pliki PDF z Delphi przy użyciu PDF Library for Delphi: drzewa struktury w trakcie rysowania, nagłówki tabel, artefakty i diagnostyka PDF/UA
Biblioteka PDF dla Delphi mapuje każdy wyodrębniony znak na instrukcję strumienia treści i bajty źródłowe, aby kod Delphi mógł edytować jeden glif w miejscu
Wydobywaj pozycjonowany tekst, oryginalne strumienie obrazów i metadane czcionek z PDF w Delphi wraz z opcjami ekstrakcji dla zadań wyszukiwania i audytu
Szukaj tekstu PDF w zakresie stron z poziomu Delphi: każde trafienie zwraca stronę i prostokąt ograniczający, a każdy blok tekstu i obraz da się wyliczyć
PDFlibPas importuje TIFF z 12-bitowym, bezstratnym i arytmetycznym JPEG w czystym Pascalu i osadza jako 8- lub 16-bitowe obrazy, które otworzy każdy czytnik PDF
Gdy strona PDF nie ma TrimBoxa, obowiązuje CropBox. Zobacz, które boxy dziedziczą z /Pages i jak PDFlibPas rozwiązuje boxy stron do impozycji w Delphi
Rzeczywista redakcja plików PDF w Delphi za pomocą losLab PDF Library: metoda RedactRegion usuwa bajty ze strumienia zawartości, a SanitizeDocument usuwa
PDF Library for Delphi dopasowuje tekst kanonicznie równoważny, więc zapytanie w NFC znajdzie treść w NFD, a trafienia trzyma na granicach klastrów grafemów
Parser PDF to powierzchnia ataku. Zobacz rzeczywiste błędy przepełnienia bufora i nieograniczonej rekurencji w dekoderach oraz ich poprawki w Delphi
PDF to pełne płótno wektorowe 2D. Zobacz, jak rysować ścieżki, krzywe Beziera i gradienty osiowe oraz kiedy wybrać wypełnienie parzyste zamiast niezerowego
PDF Library for Delphi składa tekst japoński i chiński w dół strony czcionką Type0 w trybie pionowym, używając pionowych form glifów z samego kroju
Przyspiesz przeglądarkę PDF w Delphi dzięki dyskowej pamięci podręcznej stron i obsłudze DPI na monitor: skróty FNV-1a, czyszczenie LRU i WM_DPICHANGED
PDFlibPas porównuje strony PDF w Delphi na widocznych pikselach z tolerancją koloru i obszarami ignorowania, po czym paruje strony między dokumentami
PDF Library for Delphi importuje czcionki WOFF2 i zamienia osie zmienne TrueType oraz CFF2 na statyczne kroje, które osadzają się i tworzą podzbiory normalnie
Wypełniaj powtarzające się wiersze w dynamicznych formularzach XFA w Delphi za pomocą wyrażeń ścieżek XFA 3.3 SOM w losLab PDF Library: korzenie $record,