Linux portabel kerne

Den portable kerne kompilerer den eksisterende objektmodel, simple-object-parser, Direct File I/O-helpers, content-stream-fortolker, PDF-værdihelpers, xref- og trailer-writer, Flate-backend og AES-primitiver til native Linux-programmer med Free Pascal

HPDFPlatform leverer ægte POSIX-mappeede filer og positionslæsninger, oprettelse af midlertidige filer, worker-synkronisering og tilfældige bytes fra operativsystemet; Windows-adapteren bevarer den eksisterende native fil- og mapping-adfærd

Acceptomfang

Tests/Linux/Run-PortableCoreTests.sh bygger en native x86_64 ELF-konsol-eksekverbar, rydder desktop-displayvariabler, tjekker for GUI-biblioteksafhængigheder og kører otte regressionsgrupper med en timeout

Tjekkene dækker parser-escapes og indirekte referencer, invariante PDF-værdier og stream-filtre, mappede vinduer og sparse-fil-offsets over 4 GiB, komprimerede asynkrone spill-streams, kendte svar for Flate og AES, MD5-filhashes, operativsystemets tilfældige IV'er, gyldig klassisk xref-serialisering, Direct File-sideantal og objektopslag samt content-stream-tekst og glyfpositioner

Den genererede énsidede fixture skrives af den eksisterende writer og læses uafhængigt gennem de delte Direct File-helpers; indholdstjek bruger både den eksisterende Latin-1 identity-resolver og sidens font-resolver med encoding-forskelle og eksplicitte bredder

Fontdata og tekstdekodning

HPDFFontData adskiller den eksisterende glyfnavne-, encoding- og sfnt CMap-dekodning fra GDI; Windows' indlejrede glyf-rendering og den eksisterende HPDFTextExtraction-dekoder bruger samme implementering

THPDFTrueTypeData udstiller understøttet CMap-opslag, omvendt glyph-to-Unicode-mapping og hmtx vandrette fremskridt for et sfnt-billede med én font

HPDFBaseFontMetrics bruger kanoniske standard-font advances for tolv eksakte Helvetica-/Times-/Courier-navne og understøttede dekodede tegn, beholder Windows GDI- og Linux Fontconfig-fallback til andre skrifttyper og bevarer eksplicitte PDF-bredder

Platform- og font-helper-kontrakter

THPDFPlatformHandle er et signed handle i native bredde, og HPDFInvalidFileHandle er -1; HPDFOpenReadOnlyFile og HPDFCloseFile håndterer læse-handles, mens HPDFFileSize og HPDFReadFileAt bruger Int64-positioner, og kalderen skal håndtere korte læsninger

HPDFMappingGranularity leverer den krævede offset-justering; HPDFCreateReadOnlyMapping returnerer nul ved fejl, HPDFMapReadOnly mapper det ønskede interval, og HPDFUnmapReadOnly / HPDFCloseMapping frigiver view og mapping

HPDFCreateTemporaryFile opretter eksklusivt en fil, hvis sti og oprydning tilhører kalderen; HPDFInitializeLock / HPDFDeleteLock håndterer native critical sections

THPDFPlatformEvent aliaser TEvent; HPDFCreateEvent, HPDFWaitEvent, HPDFSignalEvent og HPDFResetEvent håndterer synkronisering, og kalderen frigiver events, efter workeren er stoppet

HPDFSecureRandomBytes fylder den ønskede buffer fra operativsystemet eller udløser en exception

HPDFGlyphNameToUnicode, HPDFUnicodeToGlyphName, HPDFStdEncGlyphName, HPDFMacExpertEncGlyphName og HPDFBaseEncToUnicode bevarer den eksisterende navne- og encoding-adfærd; HPDFBaseFontFamilyToken fjerner subset- og stylesuffikser, mens HPDFIsStandardTextFont genkender Helvetica-, Times- og Courier-aliasser

HPDFMeasureBaseFontWidths bruger kanoniske understøttede standard-font advances før Windows GDI eller Linux Fontconfig samt delte sfnt vandrette metrics; THPDFTrueTypeData og THPDFUnicodeByGID leverer det delte fontdata-API

Delte Direct File-typer

HPDFDirectFileTypes ejer de eksisterende THPDFKeyType-, THPDFProtection-, THPDFProtectOptions-, THPDFDirectXrefEntry-, THPDFDirectObjectSource- og THPDFDirectFileState-definitioner

Denne adskillelse lader HPDFDirectFileIO bruge de samme records og permission-typer uden at importere komponent- og GUI-implementeringen

HPDFDoc beholder aliasser og enum-værdikonstanter under de oprindelige navne; enum-ordinals og record-layouts er uændrede

Initialisering af Linux-programmer

Native Free Pascal-programmer skal placere cthreads først i uses-listen, før worker-tråde tages i brug; portable-core-testen indlæser også cwstring for at levere Unicode-konverteringsmanageren

Brug FPC 3.3.1 eller nyere med dets matchende FCL- og paszlib-units, et C-runtime, Fontconfig med installerede TrueType-skrifttyper samt værktøjerne file, ldd og timeout; FPC_EXE og HPDF_LINUX_OUTPUT vælger compiler og isoleret outputmappe

Den minimale understøttede FPC-version er 3.3.1 på alle platforme; ny accept registrerer den faktiske compiler-build og kildeidentitet, mens ældre compilerresultater forbliver historisk evidence

Native dokumentintegrationer

Den native headless dokument-API indlæser classic-, xref-stream-, hybrid- og komprimerede objektgrafer, opløser side- og Form-ressourcer, ekstraherer Unicode-tekst, redigerer understøttede AcroForm-felter, importerer sider og publicerer inkrementelle revisioner med bevarede kildebytes

Den versionerede Linux C ABI udstiller faktiske ELF-dokumenthandles og synkrone C-callbacks til disse native operationer; THotPDF forbliver den separate Windows-komponentintegration

Native dokumentworkflows leverer HTML-import, synlig og usynlig sidetekst, ægte Tesseract-OCR og raster-PDF/A-4-konvertering; sideimport og valideret tekst-/vektorarkiveringskonvertering bevarer originale ressourcer, og eksplicit arkiveringsfont-reparation tilføjer afgrænset substitut-indlejring

Se Tests/Linux/Readme.en-us.md for platform-adapterkontrakter, Direct File-typeejerskab, regressionsgrænser og links til native workflow- og deployment-evidence

Headless-dokumentet accepterer nu den afgrænsede Standard AES-256 R5/R6-profil, som THPDFHeadlessAES256Security beskriver, inklusive owner/user-tilladelser, komprimerede objekter og krypterede inkrementelle formular-gemninger

Se native Cairo-rendering og atomar native signaturpublicering for runtime-afhængigheder, understøttet indhold, budgetter, tilladelser, kildeidentitet og output-kontrakter

Unicode form-appearances understøtter multilinjetekst, comb-celler, rotationer, password-masker og valgfri HarfBuzz/FriBidi-shaping; separate native API'er håndterer choice- og button-felter, leverede fontfamilier og typet rich text med bevarede krypterede revisioner

Native signeringsworkflows inkluderer PEM/PFX-identiteter, nye signaturfelter, synlige appearances og certificering; eksplicit timestamp-transport, trust og valideret revocation-evidence bevarer deres dokumenterede kryptografiske og publiceringskrav

Tilbageværende capability-grænser

Sikkerhedsprofilen for headless-dokumentet understøtter Standard AES-256 R5/R6; andre security handlers forbliver uden for den profil i stedet for at blive understøttet gennem portable-core-adapteren

Bredere annotation-rendering, generel rich-text CSS/layout, komplette FDF-action- og ressourcegrafer og generel dynamisk XFA-kompatibilitet forbliver aktive i capability-fuldførelsesplanen; de implementerede native integrationer ovenfor er tilgængelige uafhængigt af det resterende arbejde