Citirea proprietăților fonturilor PDF cu PDFium în Delphi
Inspectați fonturile dintr-un PDF în Delphi cu PDFium Component: numele familiei, numele de bază, greutatea, unghiul de italic și dacă fața este încorporată
Blog de dezvoltare software losLab
Software Development Blog
Inspectați fonturile dintr-un PDF în Delphi cu PDFium Component: numele familiei, numele de bază, greutatea, unghiul de italic și dacă fața este încorporată
Înainte de a avea încredere într-un PDF, enumerați suprafața sa de risc. Vedeți cum PDFium citește JavaScript, acțiunile de lansare și semnăturile în Delphi
Asamblați un vizualizator PDF în Delphi cu PDFium Component: legați TPdf de TPdfView, încărcați un document, apoi adăugați paginare, zoom și potrivire
Îmbinați un folder de imagini scanate într-un singur PDF cu PDFium Component în Delphi: creați documentul, o pagină per imagine, scalați și salvați
Randați paginile PDF ca imagini JPEG în Delphi cu PDFium Component: convertiți DPI în pixeli, desenați fiecare pagină pe un bitmap și codați cu TJPEGImage
Creați un PDF de la zero în Delphi cu PDFium Component folosind CreateDocument, AddPage, AddText și CreatePath, cu grijă la coordonate și fonturi încorporate
Creați adnotări de evidențiere și subliniere cu PDFium în Delphi: ordinea QuadPoints, de ce FPDFAnnot_SetAttachmentPoints eșuează și remedierea prin Append
Diagnosticați erorile de încărcare ale pdfium.dll în Delphi: corectați eroarea de arhitectură 32/64 biți ERROR_BAD_EXE_FORMAT 193, identificați un DLL învechit
Detectați formulare XFA în Delphi și extrageți pachetele template, datasets și config ca XML brut cu PDFium Component — citirea statică nu cere runtime V8
Exportați și importați date de formulare și adnotări XFDF în Delphi cu PDFium Component: flux bidirecțional ISO 19444-1, 18 subtipuri de adnotări și numere
Extrageți imaginile din PDF în Delphi cu PDFium Component: citiți BitmapCount, luați fiecare Bitmap[], tratați eșecurile tăcute și salvați JPEG sau BMP
Extrageți textul din PDF în Delphi cu PDFium Component: acces brut la glife prin Character[], structura paragrafelor prin ReadablePageContent și protecția
Consolidați o legătură PDFium Component în Pascal corectând callback-urile cdecl, trunchierea de pointeri pe FPC Win64, erorile de proprietate și alte defecte
Citiți semnăturile PDF cu PDFium Component în Delphi și Lazarus: inspectați SubFilter, ByteRange și CMS, apoi detectați nivelurile PAdES de la B-B la B-LTA
Adăugați semnături PAdES pe termen lung în Delphi cu PDFium Component: mărci temporale RFC 3161, depozite DSS și DocTimeStamps pentru B-T, B-LT și B-LTA
Îmbinați fișiere PDF în Delphi cu PDFium Component: ImportPages, intervale de pagini, poziție inserare și comportamentul câmpurilor de formular
Așezați mai multe pagini PDF pe o singură foaie, reordonați paginile sau extrageți un subset. Vezi API-urile de impunere și mutare în Delphi din PDFium
De ce căutările de chei ca subșiruri corup analiza dicționarelor PDF în Delphi: potrivirea tokenilor de nume întregi conform ISO 32000-1 și limitele de resurse
Adaptarea vizualizatorului PDF Delphi pentru cititoare de ecran: extragerea ordinii de citire, evidențierea TTS la nivel de cuvânt și fallback-uri corecte
PDFiumPas grefează câmpuri AcroForm între PDF-uri în Delphi: GraftPdfAcroForm, remaparea paginilor widget, hărți de grefare cu rollback și limite fail closed
PDFiumPas alege nuclee box, bilinear, bicubic sau Lanczos la reducerea imaginilor PDF în Delphi, cu matematică conștientă de alfa și un buget strict de memorie
Creați un panou de revizuire a adnotărilor în Delphi: indexare după pagină, gestionarea fluxurilor de aspect, recolorarea sau ștergerea adnotărilor fantomă
Mutați randările PDF lungi în afara firului de interfață cu futures anulabile în Delphi, gestionând durata de viață, anularea și actualizările sigure de UI
Cum randă componenta PDFium pentru Delphi pagini uriașe în benzi orizontale, de ce offset-ul Y negativ păstrează geometria și cum curg PNG și TIFF
O randare lentă a paginii nu ar trebui să blocheze interfața cu utilizatorul sau să ruleze până la capăt. Vedeți cum randarea progresivă a PDFium devine
Checkbox-urile se aplatizează debifate în PDFium Component când /V e citit din adnotarea widget, pentru că /V aparține dicționarului de câmp părinte, conform
PDFium Component scrie text la nivel de glifă cu un font CID Type 2 în Delphi, generând hărți CID-to-GID și ToUnicode ca textul shaped să rămână extractibil
PDFium Component sortează signedAttrs ca DER SET OF pentru că X.690 11.6 o cere, iar auto-verificarea nu prinde niciodată ce resping validatorii terți
Lanțul ordonat de căutare al componentei PDFium pentru biblioteca nativă și cum o literă mare dintr-o macrocomandă de țintă a rupt căutarea pe Linux
Patru diferențe ascunse între Delphi și FPC/Lazarus afectează același cod PDFium: durata de viață a înregistrărilor temporare, verificarea limitelor, conversia
PDFium Component adaugă undo, redo și recuperare după crash la nivel de document pentru editarea PDF în Delphi, cu instantanee verificate și delta-uri compacte
Cum încarcă PDFium Component un PDF încorporat direct dintr-un interval de octeți TBytes în Delphi, cu verificări de limite la overflow și reguli de durată
FPDFText_GetUnicode returnează un punct de cod complet pe 32 de biți, dar WideChar ține 16 biți, așa că PDFium Component în Delphi poate coborî emoji și
Componenta PDFium din Delphi refuză să corecteze un PDF criptat cu marcatori plaintext sau semnături PAdES, conform ISO 32000-1 7.5.6 despre actualizări
Cum autentifică componenta PDFium o listă de încredere europeană înainte să o parseze și înregistrează starea calificată separat de încrederea de lanț
PDFiumPas rezolvă lanțul de revizii xref activ și Adobe Extension Level pentru a salva PDF-uri Delphi la o versiune exactă de la 1.3 la 1.7 fără a rupe
Cum blochează WaitForIdle și padSynchronize thread-ul principal Delphi în PDFium Component, plus capacitatea cozii, ordinea de shutdown și limitele TPdf
FillChar pe rezultatul unei funcții Delphi sau FPC zerorizează o înregistrare gestionată fără a-i elibera șirurile, scurgând memorie de fiecare dată când
De ce formularele PDF completate par goale în Acrobat și remedierea: configurare FormFill, navigare de la tastatură și GenerateFormAppearances în Delphi
O buclă de tipărire pe trei straturi într-un vizualizator PDF Delphi și FPC continuă randarea după apăsarea Anulare pentru că Free Pascal fixează limita buclei
Un titlu PDF non-ASCII devine UTF-8 invalid în pachetul XMP pe Free Pascal; iată regula string codepage și fix-ul SetCodePage din PDFium pentru FPC
Scrie PDF-uri criptate ISO/TS 32003 AESV4-GCM în Delphi cu PDFiumPas: derivarea cheii R7, tokenuri de integritate PDF MAC proprii și verificări ValidatePdfMac
Portarea vizualizatorului PDF Delphi pe Lazarus și Free Pascal: codarea șirurilor de caractere, încărcarea binarelor PDFium și TTS pe alte sisteme decât Windows
PDFium VCL trimite interogările de timestamp RFC 3161 prin libcurl pe ținte non-Windows, cu opt simboluri legate și două setări care decid dacă se blochează
Adăugați mod întunecat și moduri de lectură adaptate în vizualizatorul PDF Delphi: inversare post-randare, două tipuri de gri și suprapuneri de culori vizibile
PDFium VCL leagă la runtime simbolurile Security, deci backend-ul de semnare Keychain macOS se compilează oriunde și numește fiecare simbol nerezolvat
Conținutul marcat este perechea BDC și EMC din spatele PDF-ului etichetat. Cum citește PDFium Component numele de mărci, listele de proprietăți tipizate și
Cum convenția vector-linie PDF face Multiply să adauge, PreMultiply să antepună în Delphi, de ce PreTranslate cere partea liniară, și cum se compun helper-ele
Cum reconstruiește PDFium Component arborii de nume și numere ISO 32000 în Delphi: noduri echilibrate, /Limits corect, rădăcină stabilă, salvări verificate
Aflați de ce FlateDecode singur lasă fluxurile de obiecte PDF diferențiate în loc de brute, și cum aplică PDFiumPas reconstrucția PNG și TIFF Predictor în
PDFium Component adaugă un strat de text OCR invizibil peste PDF-uri scanate din Delphi, mapând patrulaterele de cuvinte prin transformări dispozitiv-pagină
PDFium VCL conectează un verificator CMS OpenSSL la validarea PAdES, iar trei comportamente OpenSSL produc tăcut verdicte greșite dacă nu le tratați
Cum împarte SaveAsRedacted din PDFiumPas la nivel de operator textul, traseele și imaginile acoperite parțial, apoi curăță resursele neutilizate
Când pdfium.dll este mai vechi decât binding-ul, un singur export lipsă poate ucide încărcarea. Cum poartează PDFium Component exporturile opționale în Delphi
Cum rescrie PDFiumPas în Delphi elementele outline-ului PDF după ce paginile dispar: Count cu semn, lanțuri de frați, ApplyPageMap și salvări incrementale
De ce citesc handle-urile de obiecte de pagină PDFium coordonate vechi după FPDFPage_TransFormWithClip în Delphi, plus ordinea de reîncărcare și santinelele
PDFium Component mărginește fiecare parser PDF din Delphi cu o singură politică de snapshot: limite de recursie, token, obiect, octet, raport și deadline
Triați PDF-urile primite în Delphi cu PDFium: verificați dicționarul Info și metadatele XMP, depistați criptarea, codul JavaScript sau XFA și fișierele riscante
Creează arhive PDF/A valide în veraPDF în Delphi cu PDFium Component: SaveAsPdfA, injectarea XMP și ICC OutputIntent, conformitatea a/b/u și capcanele
De ce eșuează un fișier PDF/A pe limitele din Annex C sau pe o intrare /Encoding TrueType simbolică, și cum raportează PDFium Component ambele fără DLL
Construiește un verificator preflight PDF/A în Delphi cu PDFium Component: token-scan 29 de probleme de validare, gating bazat pe parte, fluxuri de obiecte,
PDFDocEncoding așază blocul special la $80, nu la $7F, iar un rând mutat face importul FDF în PDFium Component să decodeze fiecare simbol ca vecinul din tabel
PDF/R ține o scanare la o singură imagine-fâșie pe pagină fără text și fără fonturi. Cum validează PDFium Component ISO 23504-1 în Delphi și ce înseamnă
Parcurge arborele live al etichetelor PDF cu PDFium VCL pentru a depista erori PDF/UA pe care o scanare la nivel de octet le ratează: Alt, Formula și Note
Generează și validează fișiere de tipărire cu date variabile PDF/VT-1 în Delphi cu PDFium VCL: arbori DPart, perechea obligatorie PDF/X-4 și capcanele ISO
PDFiumPas semnează PAdES printr-un token PKCS#11 în Delphi: CK_ULONG are 4 bytes pe Windows și 8 pe LP64, iar tabelul se deplasează la alt packing
Cum direcționează componenta PDFium fiecare apel de modelare printr-un singur backend instalabil, cu Uniscribe pe Windows și un HarfBuzz dinamic pentru FPC
Automatizați preflight PDF/A și PDF/UA în Delphi cu PDFium: procese în lot, rapoarte JSON și CSV, coduri de ieșire și capcana numerotării paginilor de la 0
PDFium Component construiește un model de reflow semantic din pagini PDF în Delphi și exportă HTML autonom cu titluri, liste și tabele detectate
Semnează PDF-uri cu o cheie HSM sau cloud din Delphi folosind PDFiumPas: pregătire și completare semnătură PAdES la distanță, cu sesiuni persistente
Mențineți zoom-ul și derularea fluide în Delphi cu PDFium: chei cache corecte, gestionarea bitmap-urilor, randare progresivă și memorie pentru ecrane high-DPI
Blocajul de randare al PDFiumPas protejează rasterizarea de UnloadPage sau ReloadPage concurent, dar șase apeluri TPdf și TPdfView l-au sărit până la v2.26.0
Securizați panoul de previzualizare PDF Delphi cu PDFium: dezactivați JavaScript la încărcare, interceptați linkurile, filtrați atașamentele și permisiunile
Cum citește PDFiumPas un obiect PDF fără a încărca fișierul: descriptori sparse de secțiuni xref, object streams leneșe, XRefStm hibrid și ferestre 1 MiB
Extrage text PDF ca blocuri, linii și span-uri stilizate în Delphi cu PDFiumPas: ordine de citire, îmbogățire din tagging și buget fail-closed
PDFium Component lasă aplicația Delphi să furnizeze proprii octeți de font pentru fonturile PDF neîncorporate, în locul mapării de fonturi a sistemului gazdă
PDFium Component detectează în pagini PDF tabele cu linii și tabele aliniate prin spații albe, rezolvă celulele îmbinate și exportă rândurile ca CSV sau JSON
Dispunerea textului PDF necesită lățimi ale șirurilor înainte de a desena. Vedeți cum o legătură PDFium măsoară textul fără a atinge pagina, pentru încadrarea
PDFium păstrează un handle FPDF_TEXTPAGE în cache în Delphi; după editări AddText, SetText sau AddPath acesta devine perimat, dacă nu este reîncărcat înainte
Reparați miniaturile PDF dublu-rotite în Delphi cu PDFium: de ce parametrul de rotație al randării este aditiv și cum inversează zoom-adaptarea lățimea și
De ce portarea textului PDF în afara Windows cere implementarea UAX #9 și care sunt cele două greșeli ce corup caractere astrale sau sar peste reordonare
O pagină de text PDF nu are obiecte de rând. Vedeți cum construiește PDFium Component rânduri vizuale din geometria FPDFText_GetCharBox și partajează un singur
Cum separă PDFium Component indexul câmpului de indexul adnotării în Delphi: filtrează subtipurile Widget, mapează la marginea nativă, repară focus-ul headless
Sincronizați sinteza vocală cu evidențierea cuvintelor în Delphi folosind casete PDFium: TrackReadingWordAt, ordine de randare, derulare automată și Unicode
Componenta PDFium scrie editările câmpurilor XFA doar într-un buffer în memorie, astfel Delphi pierde valoarea la salvare: AcroForm o păstrează, XFA nu
Tipăriți PDF-uri în Delphi cu PDFium Component: randați cu RenderPage, trimiteți bitmap-uri către TPrinter prin StretchDIBits, potriviți pe pagină și rotiți
Desenați un filigran sau un logo o singură dată, plasați-l pe fiecare pagină. Vedeți cum Form XObjects din PDFium creează ștampile de pagină reutilizabile în
Rulați JavaScript AcroForm în Delphi cu PDFium Component: de ce calculele de câmpuri tac, cerințele DLL V8 și evenimentele gazdă ce resping acțiuni riscante
Adăugați o semnătură digitală PAdES B-B unui PDF în Delphi cu PDFium Component: SHA-256 propriu, CMS și un backend Windows CNG pentru semnare la nivel de octet
Împărțiți un PDF pe pagină, interval sau marcaj cu PDFium Component în Delphi, folosind TPdf.ImportPages, CreateDocument, rezultate SaveAs verificate
Un PDF de mai mulți gigaocteți nu trebuie să se încarce complet. Vedeți cum un adaptor TStream alimentează callback-ul FPDF_FILEACCESS la cerere din PDFium și
Construiți un vizualizator PDF alăturat în Delphi cu PDFium Component folosind panouri independente, TPdfView.Zoom per vizualizare și navigare sincronizată
PDF-urile moderne ascund structura în fluxuri de obiecte și xref comprimate. Vedeți cum un validator Delphi extinde ObjStm și citește trailerele fluxului xref
Validați fișiere PDF/X gata de tipar în Delphi: funcția ValidatePdfX a componentei PDFium rulează verificări ISO 15930 pentru TrimBox, Trapped, OPI, LZW și
Cum verifică PDFium Delphi Component semnăturile PDF pe macOS prin CMSDecoder și SecTrust: byte ranges unite, status mapat și reguli CFRelease
De ce resping validatoarele semnăturile PAdES: câmpuri ByteRange cu zero, prefixul D: lipsă la dată și pierderea /Encrypt după actualizările incrementale
Cum gestionează PDFium Component fișierele atașate PDF în Delphi: AttachmentCount, Attachment, CreateAttachment, DeleteAttachment, igienizarea căilor și