HotPDF Release Notes
Version history for HotPDF user-visible features, fixes, compatibility updates, and documentation changes
Note: Only the latest 500 change records are kept
Last release
- Latest version: 2.748.6; Release date: 2026-09-07
Version 2.748.6
Fixed
- Javítva, hogy egy cross-reference alszakasz, amely több bejegyzést deklarál, mint amennyi a táblázatban van, végigszaladt a teljes deklarált számon kiolvasnivaló adat nélkül, így egy negyven bájtos hibás fájl elutasítása másodpercekig tartott
- Javítva, hogy a job runner elvesztette az összes már elkészített eredményét, amikor egy művelet kivételt dobott, és hogy a HTML import elvesztett egy képobjektumot, amikor a körülötte lévő streamet nem sikerült létrehozni
Version 2.748.5
Fixed
- Javítva, hogy a nem ASCII jelszavú PKCS#12 fájlok nem nyíltak meg: a jelszó egy UTF-8 bájtsorozat, de egyenként egy bájttal bővítették ahelyett, hogy dekódolták volna, így a levezetett kulcs minden ASCII-n kívüli karakternél rossz volt. A modern PBES2 sémával védett fájlokat nem érintette, ezért viselkedett eltérően a kettő
- Javítva, hogy a signature batch validator és a revocation evidence cache érvénytelen opcióval való konstrukciónál access violation-t dobott a saját hibája helyett, mert a destruktor azelőtt futott le, hogy a felszabadított tagok létrejöttek volna
- Javítva, hogy az evidence letöltő task a destruktorában hibázott, amikor az argumentumait elutasították, mivel az ellenőrzések azelőtt futottak, hogy maga a szál létrejött volna
- Javítva, hogy a cloud-signature provider olyan algoritmus-azonosítót kódolt, amelynek második arcja meghaladja a 39-et, és egy hibás azonosító most a provider saját hibáját dobja konverziós hiba helyett
- A tanúsítvány- és aláíráskonténerek most elutasítják a beágyazott elemet, amely olyan hosszt deklarál, amely túlér a tartalmazó elemen, így az már nem térhet el, hogy mi kerül validálásra és mit fed le az aláírás
- A privát kulcs értékei most törlődnek a memóriából RSA-aláírás után, ahelyett hogy a heapen maradnának a következő allokációig
Version 2.748.4
Fixed
- Javítva, hogy a Type 1 betűtípusok betöltése minden tulajdonságot a betűtípusprogram első sorából olvasott: a tokenlista ürítés nélkül töltődött újra, így a verzió, család és vastagság karakterláncok, a stem hintek és a charstring kulcs hossza mind elavult tokenekből kerültek ki. A Type 1 betűtípusok mostantól saját metadatát jelentenek
- Javítva, hogy a charstring kulcs hossza egy már felszabadított karakterláncba mutató pointerként tárolódott, és range check nélkül használták; mostantól értékként tárolódik, és a formátum által engedett tartományra szorítkozik
- Javítva, hogy a nem beágyazott betűtípusok mindig a rendszer alapértelmezett betűvágására estek vissza: a kért vágásnév bájtonként másolódott a wide-character betűtípusrekordba, így egyetlen telepített család sem egyezett soha
- Javítva, hogy a beágyazott TrueType és OpenType elemzése a csonkolt betűtípusprogram végén túl olvasott glyph körvonalak, kompozit glyph argumentumok és egy OpenType konténer CFF táblájának dekódolásakor, és egy hibás karaktertérkép már nem kér negatív glyph tömböt
- Javítva a cross-reference táblák és streamek túlfolyó deklarált objektumszámai: egy egészszám-határ közelében lévő számot állító bejegyzés negatív indexbe csavarodott és a táblán kívülre íródott, és egy deklarált objektumszám vagy a fájlnál jóval nagyobb
/Sizecsak erre az állításra alapozta a loader tömbjeinek méretezését
Version 2.748.3
Fixed
- Javítva, hogy a Data Matrix érvényes bemenetet utasított el: a szimbólum méretét a számjegyek felezésével becsülték, de csak egymás melletti számjegyek tartoznak közös code wordbe, így az olyan szöveg, mint a
1a2a3a, túl kicsi szimbólumot választott saját adataihoz, és nem sikerült kódolni - Javítva, hogy a XFDF négybájtos UTF-8 karakterei, például emojik, rossz surrogate párra dekódolódtak, és egy felismerhetetlen bájt már nem nyeli el az utána következő három karaktert
- Az enhanced metafile régiórekordjai mostantól a rekord mérete alapján korlátozzák a téglalapjaik számát ahelyett, hogy a régió fejlécében szereplő számnak hinnének, amely messze a rekordon túlra olvashatott
- Azok a PNG képek, amelyeknél a deklarált szélesség szorozva a magassággal meghaladja a címezhető tartományt, a fejlécnél kerülnek elutasításra negatív hosszú pixelbuffer allokálása helyett
- A kiváló minőségű képújramintavételezés mostantól tartományon kívüli kérést jelent ahelyett hogy túlcsordulna a köztes puffer méretén
- Egy WebP meta prefix kép, amely több entropiacsoportot állít, mint amennyi pixelje van, elutasításra kerül ahelyett hogy néhány száz bájt bemenetből több száz megabyte prefix táblát allokálna
- Javítva a szivárgások az Aztec kódolás, a WebP bitmap dekódolás és az object stream dekódoló worker pool hibaútvonalain, ahol egy félig felépített objektet elhagytak, amikor egy későbbi lépés kivételt dobott
Version 2.748.2
Fixed
- Javítva, hogy a QR Code szimbólumok elvesztették az utolsó code word biteket: a modulhelpezet bejárása kihagyta a legbaloldalibb oszlopot, így az utolsó hibajavító blokk farka soha nem került a szimbólumba
- Javítva, hogy a QR terminátor az adatblokk teljes maradékát nullabitekkel töltötte, amivel nem maradt hely a 0xEC / 0x11 pad code wordeknek, amelyeket az ISO/IEC 18004 előír; egy version 1 szimbólum hat nulla code wordet hordozott helyette
- Egy új teszt visszaolvassa a generált szimbólumot a moduljaiból, így az adatblokk, a pad code wordek, a hibajavító blokk, a maszk és a helpezet mind a szabványhoz képest ellenőrzésre kerülnek, nem a kódoló saját kimenetéhez képest
Version 2.748.1
Fixed
- Javítva, hogy három parser végtelen ideig akadt hibás bemeneten a jelentése helyett: az objektum parser egy
>>-nél tömbön belül vagy]-nél szótáron belül, a CMap olvasó egy kóbor zárójelnél vagy kapcsos zárójelnél, a XFDF olvasó egy tag név nélküli konstrucciónál (például dokumentumtípus-deklarációnál) vagy attribútumok közötti kóbor bájtnál. Mindegyikük abbahagyta a kurzora mozgatását, így egyetlen váratlan bájt a parsolást végtelen ciklussá tette - Javítva, hogy a XFDF CDATA szakaszai markupként olvasódtak: tartalmuk most elemszövegként kerül felvételre, és a szakasz zárójelölését most helyesen méri ahelyett, hogy az első karaktert nyelné el
- Javítva, hogy egy 2 GB közeli WebP chunk hossz túlfolytatta a méretellenőrzést, így a payload másolása a fájlbuffer végén túl olvasott; a chunk hosszak mostantól 64 bites aritmetikában, tartomány szerint ellenőrzöttek
- Javítva, hogy egy 0xFFFFFFFF hosszú PNG chunk felszabadította a chunk buffert, miközben a chunk továbbra is a deklarált hosszát jelentette, ami miatt a későbbi olvasások felszabadított memóriára mutattak; a túl hosszú chunkok elutasításra kerülnek
- Javítva, hogy a CCITT fax dekódolás nagyon nagy deklarált oldalméreteknél túlcsordultatta a sorbuffer méretszámítását, ami a bufferen túlra írt; a sortárolás mostantól korlátos, és a dekódolás a határnál tisztán megáll
- Javítva, hogy a CCITT kódoló nyolccal osztható szélességeknél egy bájttal a scanline vége túl olvasott
- Javítva, hogy az enhanced metafile megjegyzésrekordjai 64 bites buildeken 32 bites csonkított pointeren keresztül olvasódtak, ami minden GDI megjegyzést vivő EMF-nél nem kapcsolódó címet olvasott
- Javítva, hogy a 256-nál kevesebb palettabejegyzéssel rendelkező 8 bites képek inicializálatlan memóriát publikáltak a színtáblájuk végeként, és a tábla mostantól a valódi bejegyzésszámát deklarálja
- Javítva, hogy a mélyen egymásba ágyazott, indefinite hosszúságú BER struktúrák kimerítették a vermet aláírás- vagy tanúsítványkonténer parsolása közben; a 128 szintet meghaladó egymásba ágyazás elutasításra kerül
Version 2.748.0
Fixed
- Javítva minden 2D vonalkód hibajavítása, amelyet a könyvtár rajzol: a QR Code, Data Matrix, PDF417 és Aztec a generátorpolinomot az állandó tagtól felfelé építették, de úgy osztottak vele, mintha a vezető tag jönne először, így minden szimbólum olyan check wordeket hordozott, amelyeket egyetlen, a szabványnak megfelelő olvasó sem fogad el. A check wordek most megfelelnek az ISO/IEC 18004, ISO/IEC 16022 és ISO/IEC 15438 kiszámított példáinak
- Javítva, hogy az Aztec szimbólumok elvesztették payload-jüket: a kódoló helyben osztja el a code word tömböt, és a hívó ugyanezt a tömböt emitálja, így az üzenetszavakat felülírta az osztás, és a szimbólum sem az adatot, sem érvényes mode message-t nem hordozott
- Javítva, hogy a Data Matrix generátorpolinomja a gyökeit egy hatvánnyal túl alacsonyan indította, ami egy másik polinomot adott, mint amit az ISO/IEC 16022 E melléklete előír
- Javítva a Data Matrix finder mintázatát: a tömör L mostantól a bal oldali oszlop és az alsó sor, a váltakozó clock sáv pedig a felső sor és a jobb oldali oszlop, mindegyik sötéttel indul az L-lel közös sarkában. A kettő fel volt cserélve, így az olvasók nem tudták megállapítani a szimbólum tájolását
Version 2.747.4
Fixed
- Javítva, hogy a betöltött dokumentumok szerkesztése a rendszer tizedeselválasztójával írta a PDF számokat: a page stitching, a rectangle redaction, a szöveg- és képbélyegzők, az összetett vízjel-alakzatok és az ellipszis-appearances mostantól mindig pontot írnak, így a tizedesvesszős locale-en (például német vagy francia Windows) szerkesztett dokumentumok már nem tartalmaznak olyan content streameket, amelyeket a megjelenítők elutasítanak
- Javítva, hogy a Type 1 betűtípusok betöltése a rendszer locale-jétől függött: a FontMatrix, BlueValues, stem hint és charstring valós számok mostantól ponttal írt PostScript számokként parsolódnak, így a PFB betűtípusok megőrzik metrikáikat és kontúrjaikat tizedesvesszős rendszereken, ahelyett hogy csendben szétesnének
- Javítva, hogy a default-appearance (
/DA) betűméret- és színfeldolgozása, a HTML width éssizeattribútumai, a FormCalc eredmények és a job JSON számok a folyamat locale-jét követték; mostantól minden irányban invariant formátumot használnak - Javítva, hogy a beépített vonalkódrajzolás a sáv téglalapjait locale-függő formátumon keresztül írta, ami érvénytelen content streamet eredményezett tizedesvesszős rendszeren
- A Free Pascal buildek mostantól invariant formátummal parsolják és formázzák a content stream operandusokat, a szövegkinyerési metrikákat és a JavaScript számokat, ezzel összhangban a Delphi buildekkel, ahelyett hogy a locale-függő konverzióra esnének vissza
- A számformázó mostantól nem írja felül minden hívásnál a gazdaalkalmazás globális formátumbeállításaiban a tizedeselválasztót, ami megváltoztatta, hogyan formázza a program többi része a saját számait, és nem volt biztonságos, amikor egyszerre több szál dokumentumokat állított elő
Version 2.747.3
Fixed
- Javítva, hogy a betöltött dokumentumok szerkesztése a rendszer tizedeselválasztójával írta a PDF számokat: a page stitching, a rectangle redaction, a szöveg- és képbélyegzők, az összetett vízjel-alakzatok és az ellipszis-appearances mostantól mindig pontot írnak, így a tizedesvesszős locale-en (például német vagy francia Windows) szerkesztett dokumentumok már nem tartalmaznak olyan content streameket, amelyeket a megjelenítők elutasítanak
- Javítva, hogy a Type 1 betűtípusok betöltése a rendszer locale-jétől függött: a FontMatrix, BlueValues, stem hint és charstring valós számok mostantól ponttal írt PostScript számokként parsolódnak, így a PFB betűtípusok megőrzik metrikáikat és kontúrjaikat tizedesvesszős rendszereken, ahelyett hogy csendben szétesnének
- Javítva, hogy a default-appearance (
/DA) betűméret- és színfeldolgozása, a HTMLfont sizeattribútumok, a FormCalc eredmények és a job JSON számok a folyamat locale-jét követték; mostantól minden irányban invariant formátumot használnak - A Free Pascal buildek mostantól invariant formátummal parsolják és formázzák a content stream operandusokat, a szövegkinyerési metrikákat és a JavaScript számokat, ezzel összhangban a Delphi buildekkel, ahelyett hogy a locale-függő konverzióra esnének vissza
Version 2.747.2
Added
- Hozzáadva a Free Pascal Win32 támogatást: a Lazarus package mostantól dedikált build belépési pontokon keresztül épül
i386-win32-re ésx86_64-win64-re egyaránt, a smoke suite-ok elfogadnak egy architektúra-argumentumot, és a 32 bites fordító valamint a C szimbólum-linkelés problémái javítva lettek; a PDF létrehozás és betöltés, a Flate tömörítés, az AES titkosítás és a CBZ dokumentumkezelés mindkét targeten lefedett
Version 2.747.1
Fixed
- Javítva a beépített vonalkód-dekódoló forgatott maszkos újrapróbálása, amely elavult bájtokat hagyott a forgatott maszk érintetlen celláiban, amivel fantom festéket talált ki, és olvashatlanná tette a negyed fordulattal elforgatott Code 39 szimbólumokat; a forgatott puffer most explicit nullázásra kerül, így az elforgatott Code 39 fotók és szkennelések dekódolódnak a forgatási újrapróbáláson
Version 2.747.0
Added
- Hozzáadva WebP kép importot: az
AddImageFromFilemost elfogad.webpfájlokat egy beépített, veszteségmentes (VP8L) dekódolón keresztül, amely megvalósítja az RFC 9649-et — kanonikus prefix kódokat, térbeli meta prefix kódokat, LZ77 hátrautalásokat a szomszédsági távolságtérképpel, a color cache-et és mind a négy inverz transzformációt (predictor, color, subtract-green, pixelcsomagolásos color indexing); a veszteséges VP8 képkockák egyértelmű üzenettel elutasításra kerülnek
Version 2.746.0
Added
- A beépített vonalkód-dekódoló most a nyolc tájolás bármelyikében olvas QR szimbólumokat, ahová egy lefotózott vagy beszkennelt oldal érkezhet: a finder minták azonosítják a hiányzó sarkot, a mintavételezett modulmátrix pedig forgatva vagy tükrözve kerül a várt elrendezésbe a dekódolás előtt, így negyed fordulattal elforgatott és tükrözött felvételek előfeldolgozás nélkül olvashatók
Version 2.745.0
Added
- Hozzáadva eIDAS minősített tanúsítvány értékelést a betöltött aláírásokhoz: a GetLoadedSignatureQCStatements kimutatja az aláírótanúsítvány ETSI EN 319 412-5 QCStatements értékeit — QcCompliance, QcSSCD, QcType értékek, a QcLimitValue pénznem/összeg/kitevő és a PDS helyek —, plusz a TS 119 495 PSD2 fizető és kedvezményezett szerepeket, és minősített aláírás heurisztikát jelez, amikor a QcCompliance és a QcSSCD is be van állítva (a QTSP megbízhatósági döntése a hívónál marad)
Version 2.744.0
Added
- Hozzáadva N-up tervezést a betöltött dokumentumokhoz: a ComposeLoadedPagesNUp minden oldalt rács szerint komponált, forráspapír méretű ívekre tördel át (2-up, 4-up, 6-up, egészen 16x16-ig) nyomdakész kimenethez, mindegyik oldal
/Rotate-ját az elhelyezési mátrixba olvasztva, az oldalerőforrásokat a kompozícióval megosztva, és opcionálisan hajszálvékony cellakereteket rajzolva állítható középmargóval
Version 2.743.0
Added
- A FlattenLoadedAnnotations most beégeti a megjelenési adatfolyam nélküli annotációkat csendes kihagyásuk helyett: a widgetek mezőmegjelenése először a mezőértékből generálódik (a böngészőből nyomtatott űrlapoknál gyakori
/NeedAppearanceseset), így a beírt érték átvészeli az oldaltartalomba - A
/APnélküli markup annotációk szintetizált megjelenést kapnak, amelyet saját tulajdonságaikból rajzol a könyvtár — FreeText és Stamp szöveg/DAstílusozással és/Qigazítással, Square és Circle alakzatok/C//ICszínnel és/BSvastagsággal, Line és Ink körvonalak, valamint Highlight / Underline / StrikeOut / Squiggly quad markup/QuadPointsés/CAopacitás tiszteletben tartásával - A rejtett annotációkat (a
/Fhidden flag) annotációként hagyja meg, amikor nincs megjelenésük, mert egy láthatatlan jegyzet beégetése láthatóvá tenné
Version 2.742.0
Added
- A HTML import most teljes foglaltsági rácson oldja fel a táblázatokat, így a
rowspanéscolspancellák helyesen foglalják el oszlopaikat, és a későbbi sorok kihagyják a foglalt helyeket balra csúszás helyett - A táblázat sormagasságai a cellaszöveg adott cella saját betűtípusa alatti tördeléséből származnak karakterszámlálós becslés helyett, így a vegyes keskeny és széles tartalom már nem eredményez túlcsorduló vagy túlméretezett cellákat
- Az oszlopszélességek követik a
<col>szélességi tippeket és a cellánkénti szélesség attribútumokat, és a<thead>-vel jelölt fejlécsorok (vagy az elején all-<th>sorok) minden folytatott oldal tetején megismétlődnek, amikor a táblázat oldaltörésen átmegy - Egy rowspan csoport egyben marad az oldaltöréseken át: az áthidaló cella által összekötött sorok együtt kerülnek a következő oldalra, így az áthidaló cellát sosem vágják ketté
Version 2.742.0
Fixed
- Javítva, hogy a Free Pascal package buildek 2.738.0 óta hibáztak: az LTV bizonyíték és seed value tagdeklarációk egy csak-Delphi feltételes blokkba kerültek, miközben a megvalósításaik feltétel nélküliek voltak, így a Free Pascal package már nem fordult; a megvalósítások most ugyanazt a feltételt hordozzák, és a package újra fordul
Version 2.741.0
Added
- Hozzáadva szerkezetrendű szövegkinyerés: az ExtractLoadedPageStructureText a dokumentumszerkezet fáját járja be szerzői sorrendben (ISO 32000-1 14.8.4), és MCID szerint fűzi össze egy oldal marked-content futamait, így a taggelt dokumentumok, például állami űrlapok és akadálymentes kiadványok a hiteles olvasási sorrendjüket adják vissza geometriai találgatás helyett; a fa által sosem igényelt betűjelek egy geometriai farokba esnek, és a taggelés nélküli jelentésben számolódnak
Version 2.741.0
Fixed
- Javítva, hogy a Free Pascal buildek leálltak hiba jelentése helyett, amikor egy dokumentum olyan codecet igényelt, amelyet ezek a buildek nem linkelnek: egy TIFF megnyitása, JPEG 2000 vagy JBIG2 kép dekódolása, progresszív vagy csökkentett felbontású JPEG olvasása, ICC színtranszformáció alkalmazása vagy Zopfli újratömörítés kérése azonnal befejezte a folyamatot
- Ezen műveletek mindegyike most úgy hibázik, ahogy a hívója már elvárja, így az egyiket használó dokumentum a funkció kihagyásával töltődik be, ahelyett hogy magával rántaná az alkalmazást
Version 2.740.0
Fixed
- Engedélyezve a P-384 ECDH kulcsegyeztetés: a CIOS Montgomery szorzás végső feltételes kivonása a P limb plusz borrow értékhez hasonlított, amely nullába fordul át a P-384 / P-521 prímek csupa-egyes magas limbjein, és csendben tévesen kölcsönzött; az összehasonlítás most a túlcsorduló összeadás nélkül észleli a borrow-t, és a P-384 megosztott titok bájtonként egyezik az OpenSSL referencia vektorokkal
Version 2.740.0
Fixed
- Javítva a színes betűjelek átlátszóságvesztése Free Pascal buildekben: a beágyazott színes bitmapokat egy olyan útvonalon olvasták, amely eldobja az alpha csatornát, így minden emoji vagy színes betűtípusú betűjel fedetlen téglalapként rajzolódott. A bitmapok most megtartják pixelenkénti alfájukat
Version 2.739.0
Added
- Hozzáadva CSS2.1 bekezdés-tipográfiát a HTML5 import motorhoz: text-align (a régi align attribútummal és a center-tag leképezéssel), letter-spacing és word-spacing a PDF Tc / word-space operátorokon keresztül, text-indent az első sor behúzásához, valamint text-decoration underline / line-through szabályok, így a meglévő webes és e-mail HTML importok megtartják a középre zárt címeket, a behúzásokat és az aláhúzásokat
- Kibővítette a beépített QR dekódolót az 1-es verzión túl: a szimbólum verziója most a finder geometriából, rács oszthatóságán keresztül származik (a 2-40-es verziók tiszta modulráccsal dekódolódnak), a byte-mode hosszplafon az ISO/IEC 18004 Table 7 verziónkénti kapacitását követi, a function-module térkép pedig lefedi az alignment mintákat és a verzióinformációs blokkokat a magasabb szimbólumokhoz
Version 2.739.0
Added
- A Free Pascal buildek most titkosítanak és fejtenek vissza dokumentumokat: az AES belépési pontokat a könyvtár saját FIPS-197 megvalósítása szolgálja ki unsupported-operation hiba helyett, így AES-128 és AES-256 védelmű fájlok hozhatók létre és nyithatók meg ott
- Az AES-GCM titkosítás és visszafejtés, beleértve a nagy hasznos terhekhez használt streaming kontextust, elérhető a Free Pascal buildekben
- A Free Pascal smoke test most FIPS-197 known answer alapján ellenőrzi a rejtjelet, PKCS#7 és GCM round tripeket gyakorol, valamint létrehoz és újratölt egy AES-256 védelmű dokumentumot jelszóelutasítással
Version 2.738.0
Added
- A Free Pascal buildek most natívan tömörítenek és bontanak ki dokumentumokat: a deflate codecet egy beépített backend szolgáltatja a Free Pascal-jal szállított Pascal zlib megvalósítás fölött, így a FlateDecode tartalom már nem unsupported-operation hibát jelez
- Tömörített dokumentumok hozhatók létre és tölthetők újra Free Pascal alatt az alapértelmezett tömörítési beállítással, és a kereszthivatkozás-adatfolyamok, objektum-adatfolyamok, beágyazott fájlok és tömörített oldaltartalmak mind dekódolódnak ott
- A backend lefedi a zlib és nyers deflate burkolókat, a gzip burkolót és az automatikus fejlécészlelést, így az SVG importok és a többablakméretes kibontási fallback úgy viselkednek, mint Delphi alatt
- A Free Pascal smoke test most egy wrapper és checksum önteszt plusz egy tömörített dokumentum round trip révén ellenőrzi a codecet
Version 2.738.0
Added
- Hozzáadva AIA caIssuers lánc kiegészítést: a HPDFFetchAIAIntermediates bejárja egy CMS tanúsítványkészlet access-method 1.3.6.1.5.5.7.48.2 végpontjait a hívó transzportján keresztül (csupasz DER és PEM törzsek egyaránt dekódolódnak), a FetchMissingIntermediates validációs opció pedig a lekért köztes tanúsítványokat az útvonalépítésbe táplálja, így a lone end-entity tanúsítvánnyal érkező felhős aláírók aláírásai validálódnak az útvonalépítés elbukása helyett
- Hozzáadva egyhívásos LTV engedélyezést: a PopulatePAdESLTVEvidence bejárja a betöltött összes aláírást, online lekéri a közteseit plusz az OCSP/CRL bizonyítékait, és az anyagot a dokumentum DSS-ébe írja, friss B-B aláírású dokumentumot B-LT-re emelve kézzel összerakott bizonyítéktömbök nélkül
- Hozzáadva seed value kikényszerítést az aláíráshoz: a CheckLoadedSignatureSeedValue beolvassa az aláírásmező /SV szótárát, és a jelölt SubFilter, DigestMethod, Reason és DocMDP profilt a megszorításaihoz méri az ISO 32000-1 12.7.5.5 force-bit szemantikájával, így az űrlapszerző megszorításai már az aláírás elhelyezése előtt érvényesülnek
Version 2.737.0
Added
- Hozzáadva szigorú mentésellenőrzést a VerifySavedOutput property-n keresztül: írás után egy friss olvasópéldány kereszthivatkozás-helyreállítás nélkül újratölti a fájlt, így a sérült szerializáció a hívás helyén jelentkezik, a következő fogyasztónál való felbukkanás helyett
- Kiterjesztette a ReproducibleOutput-ot titkosított dokumentumokra: az AES-CBC adatfolyamok a statikus 14*(1+i) IV konvenciót használják, a kulcsanyag és a sók determinisztikusan származnak, és a kanonikus dokumentum-ID normalizálja a változékony Info időbélyegeket, így bájt-azonos titkosított mentések születnek a regressziós pipeline-okhoz
Version 2.736.0
Added
- Hozzáadva jó minőségű újramintavételezést és monokróm ditheringet az új HPDFResample uniton keresztül: szétválasztható Catmull-Rom bicubic és Lanczos3 kernelek váltják fel a GDI nyújtási szemantikáját a képlekicsinyítésnél az ImageDownsampleKernel property-n keresztül, a RenderOutputDither pedig Floyd-Steinberg hibadiffúziót alkalmaz az oldal kompozitálása után, így a nyomtatási előnézet kimenete megőrzi a fotó részletességét tiszta fekete-fehérben
Version 2.735.2
Fixed
- Javítva a Flate kibontási adatfolyamok hibája, amely a puffer változó címét adta át a puffer helyett a forrásadatfolyamból történő újratöltéskor, így minden olvasásnál sérült a memória, és összeomolhatott a folyamat; a tömörített dokumentumok betöltését, az inflate adatfolyamosztályokat, valamint a tömörítő és kibontó adatfolyam segédeket mind érinti
Version 2.735.1
Fixed
- Javítva a növekedésre képes, adatforrás nélküli XFA mezők egyetlen sorrá összecsukása lapításkor: a magasságukat most a sablon által deklarált szövegből méri a könyvtár, ami pontosan az, amit egy ilyen mező megjelenít. Az üres adathoz kötött mező továbbra is üresként méreteződik
Version 2.735.0
Added
- Hozzáadva rajzolási idejű hiányzó betűjel észlelést: a TrackUnresolvedGlyphs property rögzíti minden olyan kódpontot, amely .notdef tofu dobozként jelenne meg az aktív Unicode face-en, OnUnresolvedGlyph eseményt dob megállapításonként, és a nem regisztrált, tisztán GDI dokumentumokat érintetlenül hagyja
- Hozzáadva örökölt kern tábla támogatást: a RegisterUnicodeTTF rögzíti az Apple/GDI-korszakbeli kern táblát, és a kerning kibocsátás a format-0 bináris párkeresésére esik vissza, amikor a betűtípus nem tartalmaz GPOS kern lookupokat, helyreállítva a klasszikus pártávolságot olyan betűtípusokban, mint a gyári Arial
- Hozzáadva futamonkénti betűtípus-fallbacket a bekezdéselrendezésben: a WideTextOutBox most minden tördelt sort szétbont azoknál a kódpontoknál, amelyeket az aktuális betűtípus nem tud leképezni, és minden futamot a feloldott fallback betűtípusával rajzol, így a vegyes latin, emoji és CJK bekezdések tofu nélkül jelennek meg, amikor fallback láncok vannak regisztrálva
Version 2.735.0
Added
- A Free Pascal buildek most a teljes könyvtárat lefedik: minden unit lefordul FPC 3.2.2 és Lazarus alatt, korábban csak az alapvető létrehozási és betöltési útvonal tette
- XPS, EPUB és CBZ tárolók importálhatók Free Pascal alatt egy beépített, csak olvasható ZIP olvasón keresztül, amely kezeli a ZIP64 méreteket, a stored és deflated bejegyzéseket, a CRC ellenőrzést és a hagyományosan titkosított bejegyzéseket ugyanazzal a jelszó-callbackgel, mint a Delphi útvonal
- Az XFA űrlaplapítás, a FormCalc számító motor, a widget futtatókörnyezet, a dokumentummegjelenítő komponensek, a Type 1 betűtípuskezelők, a HTML import, az aláírásellenőrzés és a job runner mind lefordulnak Free Pascal buildekben; a betöltött dokumentum XFA packetjeinek lapításához továbbá kell a deflate codec, amelyet ezek a buildek nem linkelnek
Fixed
- Javítva a PNG segédunit 64 bites bájtcseréje, amely hibás értékeket adott Win64 alatt, és miatta az unit egyáltalán kimaradt a buildből
Version 2.734.0
Added
- Hozzáadva az RFC 3161 időbélyeg-kérés kiszolgálóoldalát: a HPDFRFC3161BuildRequest kibocsátja a DER TimeStampReq-et friss pozitív INTEGER nonce-mal, opcionális policy OID-del és certReq-gel, a HPDFRFC3161ParseResponse pedig dekódolja a PKIStatusInfo fejlécet és kinyeri a tokent, így a TSA transzport callbackjei három sorosak egy DER tanulmány helyett
- Hozzáadva az ISO/TS 32002 developer extension deklarációt (THotPDF.EnsureISO32002Extensions), amely lefedi az EdDSA aláírási algoritmusokat és a további ECDSA görbéket PDF 2.0 dokumentumokban, idempotensen és verziókapuzottan, akárcsak a 32001-es SHA-3 deklaráció
Version 2.733.0
Added
- Hozzáadva hordozható X25519 és X448 Montgomery-ladder kulcsegyeztetést, valamint P-256 / P-521 NIST-görbés ECDH-t CIOS Montgomery szorzással, lehetővé téve a key-agreement (KARI) nyilvános kulcsú címzettek teljes egészében a folyamaton belüli létrehozását és felbontását; az RFC 7748 és az OpenSSL által generált referencia vektorok a ladder viselkedését a regressziós csomagba zárják
- Hozzáadva a HPDFUnwrapKeyAgreementRecipientEnvelope metódust az AddPubSecAgreementKeyMaterial és AddPubKeyAgreementRecipientWithSecret belépési pontokkal együtt, így az ECDH / X25519 / X448 címzettekkel titkosított dokumentumok megnyithatók a címzett privát skalárjával, és titkosíthatók külső ECDH eszközök nélkül
Version 2.732.0
Changed
- A mentések most 1 MiB-os pufferelt íróadatfolyamon vezetik át a szerializáló kimenetét, az objektumfejlécek, szótárkulcsok és xref sorok tokenenkénti Write hívásait kötegelt kiírásokká vonva össze fájl alapú céloknál
- A kereszthivatkozás-adatfolyam hasznos adatai PNG Up predikciót alkalmaznak (/DecodeParms /Predictor 12) a FlateDecode előtt, és a /Index alszakaszokon keresztül összevonják a free-list lyukakat, így az xref tárolók minden PDF 1.5+ dokumentumnál és ritka objektumtartományoknál zsugorodnak
- A CompressionLevel property most a kereszthivatkozás-adatfolyam és objektum-adatfolyam tárolók Flate erőfeszítését is kiválasztja, így a clMaximum kisebb strukturális adatfolyamokat eredményez mentés közben
Fixed
- A kereszthivatkozás-adatfolyam /W mezőszélességei most a tényleges eltolási tartományhoz alkalmazkodnak a rögzített [1 4 2] elrendezés helyett, amelynek Cardinal castja csendben levágta a 4 GiB feletti eltolásokat, károsodott kimenetet eredményezve
Version 2.731.0
Changed
- Újraépítette a beépített template-matching OCR-t összefüggő komponenses betűjelkinyeréssel, szürkeárnyalatos lefedettség-pontozással gyorsítótárazott többbetűtípusos sablonok alapján, Otsu binarizálással helyi ablakos fallbackgel, bimodális hézagon alapuló szavakra bontással, szónkénti alapvonalakkal, porszemcse-zaj elutasítással, valamint kibővített 62 karakteres ábécével, amely vegyes kis- és nagybetűs ASCII szöveget ismer fel sorszintű magasságklaszterezéssel és kis-/nagybetű kontextuspreferenciával
Version 2.730.0
Added
- Hozzáadva Win64 támogatást a Free Pascal 3.2.2-hez és Lazarus 4.6-hoz, beleértve egy futásidejű package-et, reprodukálható build szkriptet, kompatibilitási réteget és nem GUI create-and-reload smoke testet; a natív statikus codec integrációk továbbra is csak Delphi alatt érhetők el, és explicit unsupported-operation hibát jeleznek Free Pascal buildekben
Version 2.729.0
Added
- Hozzáadva gazdasemleges dinamikus XFA widget futtatókörnyezetet Unicode szerkesztéssel, fókusz- és találatteszteléssel, példányt ismerő kötéssel, atomi validációval és számítással, korlátozott reflow-val, valamint csak olvasható betöltött dokumentum factoryvel, amely megőrzi a forrás XFA-t
Version 2.728.0
Fixed
- Kijavította az XFA belső mérését és szövegfolytatását, hogy megőrizze az explicit üres és számított értékeket, használja az egyes mezőkhöz vagy ismételt sorokhoz tartozó kötési kontextust, megtartsa a breakAfter akciókat, elkerülje a szintetikus névütközéseket, és kikényszerítsen egy gyorsítótárazott globális mérési keretet
Version 2.727.0
Changed
- Az XFA elrendezés most belső minimális és maximális méreteket alkalmaz, a növekedésre képes mezőket a hozzájuk kötött szövegből méri, és atomikusan osztja szét a jogosult textEdit tartalmat tartalomterületek és oldalak között csak olvasható folytatási mezőkkel, valamint korlátozott szöveg-, töredék- és mérési keretekkel
Version 2.726.0
Added
- Hozzáadva teljes NChannel process és spot attribútumokat, mixing hinteket, korlátozott PDF 2.0 CxF/X-4 spektrális festék adatfolyamokat, valamint dokumentumszintű konzisztencia-ellenőrzéseket a spot tint definíciókhoz és a külső output-intent színezőkomponens táblákhoz
Version 2.725.0
Added
- Hozzáadva szálbiztos, determinisztikus SIMD scanline megjelenítő backendet, amely előre ellenőrzi a támogatott téglalap display listeket, a végső bitmap felületet vektorblokkokban írja köztes bitmapmásolat nélkül, és pontos, kérésenkénti elutasítási okokat ad vissza a meglévő software fallback és telemetria csővezetéken keresztül
Version 2.724.0
Changed
- Kibővítette a korlátozott natív FormCalc értékelőt általános SOM node-set aggregátumokkal, kevert skalár és node-set argumentumokkal, beágyazott numerikus és string hívásokkal, valamint determinisztikus kiválasztó, string, trigonometriai, logaritmikus és konverziós függvényekkel a meglévő művelet-, tömb-, mélység-, idő- és kimeneti keretek alatt
Version 2.723.0
Changed
- A
SubsetLoadedFontsmost biztonságosan subset-eli a beágyazott Type 1 PFB, szétvágott bináris és hex PFA programokat, megtartja a rekurzív TrueType composite függőségeket, és lezárja a COLR v0/v1 körvonalfüggőségeket, miközben megőrzi a szín-, bitmap-, variation- és shaping táblákat
Version 2.722.0
Added
- Hozzáadva korlátozott jelszó-callbackeket a klasszikus ZIP-titkosítású XPS, EPUB és CBZ bejegyzésekhez, beleértve bejegyzésenkénti újrapróbálási korlátokat, megszakítás-ellenőrzéseket, csak memóriás hitelesítéskezelést, valamint zárt hibázású elutasítást az elérhetetlen, érvénytelen vagy nem támogatott titkosításra
Version 2.721.0
Changed
- A
DownsampleLoadedImagesmost a támogatott 8 bites Separation és DeviceN képmintákat közvetlenül a komponens térben méretezi át, és megőrzi az eredeti színtér-gráfot, a tint transzformációt, a színezőkomponenseket, a/Decodetartományokat és az overprint szemantikát mentés és újratöltés során
Version 2.720.0
Added
- Hozzáadva korlátozott, beépített felismerő overloadokat nagy kontrasztú nagybetűs ASCII OCR-hez, vízszintes Code 39-hez és tiszta, tengelyigazított QR version 1 byte-mode szimbólumokhoz, lehetővé téve kereshető szövegrétegeket és betöltött oldal vonalkód-dekódolást hívó által szolgáltatott engine nélkül, miközben a kétértelmű vagy nem támogatott bemenet zárt módon hibázik
Version 2.719.0
Added
- Hozzáadva korlátozott JPEG 2000 finomítást felbontás és minőségi réteg szerint a
THPDFJpeg2000Decoder.LoadProgressiveFromByteArrayútján, plusz többrétegű kódolást aTJpeg2000Bitmap.QualityLayersútján, azonos végső pixelekkel LRCP, RLCP, RPCL, PCRL és CPRL progressziós sorrendek esetén
Version 2.718.0
Changed
- Beágyazta a teljes UniJIS, UniGB, UniCNS és UniKS UCS2 és UTF16 vízszintes és függőleges CMapeket, beleértve a kiegészítő skalárokat és a szabványos függőleges alapértelmezéseket, így a CJK szövegkinyerés és geometria már nem függ külső Unicode leképezési fájloktól vagy fél-em találgatásoktól
Version 2.717.0
Added
- Hozzáadva explicit linearizált megosztott objektum függőségtartományokat és tartományérkezés alapú újrarajzolási ütemezőt, így az oldalak már az összes opcionális függőség megérkezése előtt kirajzolódhatnak, és pontosan akkor rajzolódnak újra, amikor az újonnan elérhető adat megváltoztatja az eredményt
Version 2.716.0
Added
- Hozzáadva korlátozott objektumgráf-javítást a végrehajtható xref, trailer, katalógus, oldalfa- és névfa-preflight megállapításokhoz validált tranzakciócommittal és teljes visszagörgetéssel nem biztonságos vagy kétértelmű bemenet esetén
Version 2.715.0
Added
- Hozzáadva PDF 2.0 titkosított payload burkolókat, amelyeknél a látható dokumentumtartalom hitelesítés előtt is olvasható marad, miközben a beágyazott fájlnevek, leírások és bájtok védve maradnak explicit jelszavas feloldásig
Version 2.714.0
Changed
- A betöltött oldal SVG exportja most kibocsátja az axiális és radiális gradienseket, a Type 4-től Type 7-ig terjedő mesh árnyalatok korlátozott PNG ábrázolásait és a dekódolt inline képeket a megfelelő kihagyás-számlálók növelése nélkül
Version 2.713.0
Changed
- Az OpenType SVG színes betűjelek most a korlátozott Form XObject csővezetéket használják ívekhez, vektor gradiensekhez, opacitáshoz, geometriai maszkokhoz és helyi
#idújrafelhasználáshoz, miközben továbbra is elutasítják a szkripteket, a külső erőforrásokat, a képeket és a nem támogatott aktív tartalmat
Version 2.712.0
Changed
- A
ReplaceLoadedPageTextmost aTJstring elemeken és tömbökön átívelő egyezéseket cserél betűjel-forrástartományokon keresztül, miközben megőrzi a kerning számokat, az egyezetlen prefixeket és suffixeket, a nem kapcsolódó operandusokat és az eredeti tartalom-adatfolyam szerkezetet
Version 2.711.0
Added
- Hozzáadva a CFF FontSet
SyntheticBasefeloldását örökölt Top és Private DICT értékekkel, CharStringsekkel, charsettel, Encodinggal és Local Subrs-szal, továbbá determinisztikus felülírási szemantikával és korlátozott elutasítással az érvénytelen, ciklikus vagy túlságosan mély öröklődésre
Version 2.710.0
Added
- Hozzáadva determinisztikus, korlátozott Flate prediktorkiválasztást a
HPDFSelectFlatePredictorútján, elosztott sormintákkal, becsült bájtköltséggel, konfigurálható CPU súlyozással, valamint explicit bájt-, sor- és munkakeretekkel
Version 2.709.0
Added
- Hozzáadva opt-in natív JBIG2 Huffman szimbólumszótár- és szövegterületkimenetet a
THPDFJBIG2Options.UseHuffmanEncodingútján, beleértve a szabványos DH, DW, BMSIZE, FS, DS és DT táblákat, nyers kollektív bitmapokat, szimbólum-ID táblákat, determinisztikus natív útválasztást és pixelpontos dekódoló round tripeket, miközben megmarad az aritmetikai és MMR alapértelmezés
Version 2.708.0
Changed
- Gyorsítótárazta az arab és kombinált presentation-form fordított cmap leképezéseket regisztrált betűtípusgenerációnként, kiváltva az ismételt U+FB00..U+FDFF és U+FE70..U+FEFF bejárásokat az
ApplyArabicGSUBRefinement,ApplyArabicGSUBContextualRefinementés az általános kontextusú GSUB útvonalon, miközben megőrzi a kódpontprecedenciát és a formázott kimenetet
Version 2.707.0
Added
- Hozzáadva az Aztec 2D vonalkód kódolót (ISO/IEC 24778) a
THPDFPage.DrawAztecés a különállóTHPDFAztecegységen keresztül: dinamikus programozású magas szintű kódolás módrögzítésekkel, shift-ekkel és bináris-shift futamokkal, bit töltéssel (bit stuffing), Reed-Solomon hibajavítással GF(16)-tól GF(4096)-ig, automatikus kompakt 15x15..27x27 vagy teljes 19x19..143x143 szimbólumválasztással, valamint kényszerített rétegvezérléssel rögzített szimbólumméretekhez - Hozzáadva a függőleges oldalszöveg összeállítást: a
THotPDF.ExtractLoadedPageTextés a tartomány/adatfolyam aggregációs API-k most a WMode 1 betűjeleket oszlopokba rendezik a betűjel origó X szerint, az oszlopokat jobbról balra sorolják, és minden oszlopot fentről lefelé járnak be, ahelyett hogy a függőleges CJK szöveget betűjelenkénti sorokra szaggatnák
Fixed
- Javítva a párhuzamos sávexport hibája, amely PNG sávszélesség-eltérés miatt hibázott tört pixeles oldalakon (A4 96 DPI-nél): a raszterméret most
Ceil-lel kerekít, egységesen a sávírókkal, így a leszállított csempék mindig egyeznek a kódoló szélességével
Version 2.706.0
Added
- Hozzáadva streamelt betöltött oldal PNG exportot és sávos többoldalas TIFF exportot a
THotPDF.SaveLoadedPageToPng,SaveLoadedPageToPngStream,SaveLoadedPagesToTiffBandedésSaveLoadedPagesToTiffStreamBandedútján, amelyek a tömörített képadatokat soronként írják a sávkódolókon keresztül, így a nagyon nagy oldalakhoz nem kell teljes framebuffer; aTHPDFBandImageExportInfooldal-, sáv-, sor-, worker-, memória-, kimeneti, időzítési és megszakítási telemetriát jelent
Version 2.705.0
Added
- Hozzáadva a PDF/A finalizálást a betöltött mentési utakhoz: a
THotPDF.SaveLoadedDocumentésSaveLoadedDocumentToStreammost validálja aGTS_PDFA1OutputIntentet (a forráskatalógusból örökölve vagy frissen regisztrálva), és kibocsátja apdfaid:part/pdfaid:conformanceXMP azonosítást, amikor aPDFACompliancebe van állítva, miközben a meglévő pdfaid packetet bájtonként megőrzi újramentéskor - Hozzáadva a függőleges írás (WMode 1) feldolgozását a betöltési oldalon: a CIDFont
/W2és/DW2cellametrikák most vezérlik a szövegkinyerést és az oldal megjelenítését, oszlopokban haladva lefelé a szögtér y tengelyén a v1x/v1y pozicionáló vektorral a vízszintes/Welőrehaladások helyett
Version 2.704.0
Added
- Hozzáadva párhuzamos betöltött oldal csempe- és sávmegjelenítést a
THotPDF.RenderLoadedPageTilesParallelésTHotPDF.RenderLoadedPageBandsParallelútján, sor-főrendű hívószál-callbackekkel, kölcsönzött bitmapokkal, kooperatív megszakítással, hívó által vezérelt folyamatban lévő memóriával, csúcsmemória-felvételi szabályozással, valamint korlátozott, megváltoztathatatlan Type 3 betűjel- és halftone screen gyorsítótárral, amelyet izolált megjelenítési kontextusok osztanak meg
Version 2.703.0
Added
- Hozzáadva korlátozott CSC multisign digest tételt a
THPDFCSCSignatureProvider.SignHashBatchútján, egy hash-rögzített SAD-dal és egysignatures/signHashkéréssel rendezett, azonos algoritmusú tételhez, miközben kikényszeríti a helyi és hitelesítésimultisignkorlátokat, a szigorú válaszkardinalitást, a szinkron vagy aszinkron eredményrendezést, a SHA-256 tartalom alapú idempotenciakulcsokat és a befejezett tétel visszajátszását
Version 2.702.0
Added
- Kibővítette a
THotPDF.RenewPAdESLTATimestampmetódust hívó által szolgáltatott tanúsítvány-, OCSP- és CRL bizonyítékokkal, amelyek a meglévő DSS-be olvadnak össze az új RFC 3161 dokumentumidőbélyeg előtt, minden korábbi revíziót bájtonként megőriz, és pontosan duplikátummentesíti a validációs adatfolyamokat az egymást követő megújítások során
Version 2.701.0
Added
- Hozzáadva záradékkal címezhető PAdES baseline és kiterjesztett profil preflight a
THotPDF.PreflightLoadedPAdESútján, amely minden alkalmazandó követelményt jelent stabil szabály ID-vel, profillal, normatív szinttel, szabványzáradékkal, PDF útvonallal, objektumszámmal, aláírt vagy aktuális revízióval és megfelelési státusszal, miközben validálja a CMS kardinalitásokat, az aláírótanúsítvány ESS hivatkozásokat, az aláírás-szótár korlátokat, a bájttartomány-lefedettséget, a megbízható időt, a DSS bizonyítékokat és a dokumentumidőbélyeg-lefedettséget
Version 2.700.0
Added
- Hozzáadva végponttól végpontig terjedő ECDSA, Ed25519 és Ed448 PFX / PKCS#12 privátkulcs-betöltést és CMS dokumentumaláírást, beleértve a named-curve CNG ECDSA-t, az opcionális OpenSSL 3 PureEdDSA-t, RFC 8410 kulcsdekódolást, RFC 8419 digest és paraméterszabályokat, SHAKE256-ot 512 bites kimenettel Ed448-hoz, automatikus kulcsalgoritmus-választást és szigorú tanúsítvány-kulcs párosítást
Version 2.699.0
Added
- Hozzáadva determinisztikus többazonosságú PFX / PKCS#12 hitelesítésválasztás a
HPDFEnumeratePFXIdentities,HPDFParsePFXByLocalKeyIDésTHPDFCMSSignOptions.PFXLocalKeyIDútján, beleértve a szigorú egyértékűlocalKeyIdésfriendlyNamebag attribútumokat, nyilvános kulcs párosítást, rekurzív safe-content bageket, korlátozott kétértelműség- és ciklusdiagnosztikát, valamint automatikus, egyező köztes és gyökér tanúsítványlánc beágyazást pontos DER duplikátumeltávolítással
Version 2.698.0
Added
- Kibővítette a folyamaton belüli PFX / PKCS#12 PBES2 visszafejtést AES-128-CBC és AES-192-CBC, valamint PBKDF2 HMAC-SHA-384 és HMAC-SHA-512 PRF-ekkel, beleértve a rejtjelspecifikus opcionális
keyLengthvalidációt, valamint a korlátozott salt, iteráció, IV és padding ellenőrzéseket, miközben megmarad az AES-256-CBC és HMAC-SHA-1 / SHA-256 kompatibilitás
Version 2.697.0
Added
- Hozzáadva a szabványnak megfelelő XPS és OpenXPS Canvas
FixedPage.NavigateUriöröklődést, így a leszármazottPath,Glyphsés beágyazott Canvas vizuális elemek megkapják a hatókörrel rendelkező URI-t, hacsak felül nem írják, megőrizve a külső, mail, csomagoldal és percent-dekódoltLinkTargetakciókat transzformációkon, beágyazott vágásokon, izolált opacitáscsoportokon, újrafelhasználható vizuális elemek elnyomásán, beágyazott felülírások utáni helyreállításon, valamint a meglévő link, URI, megszakítási és nem biztonságos séma korlátokon keresztül
Version 2.696.0
Added
- Hozzáadva korlátozott natív XPS és OpenXPS Canvas átlátszósági csoportokat, így az
Opacityés a sima, gradient vagy képCanvas.OpacityMaskértékek az átfedő gyermekvizuális elemeket egyszer kompozitálják izolált DeviceRGB Form XObjecteken keresztül, összevont egységes alfával, megosztott változó alfás soft maszkokkal, beágyazott csoportokkal, transzformált vágásokkal, erőforrásátvitellel, megtartott linkekkel, valamint zárt hibázású hibás, nem támogatott, szinguláris vagy túlméretezett tartalomkezeléssel
Version 2.695.0
Added
- Hozzáadva korlátozott natív XPS és OpenXPS
Canvas.Clipkonverziót rövidített geometriához, helyi vagy távoliStaticResourcePathGeometryértékekhez, közvetlen property elemekhez, strukturált vonal-, Bézier-, kvadratikus és ív alakzatokhoz, geometriatranszformációkhoz, üres vágásokhoz, valamint beágyazottEvenOddvagyNonZerovágáshoz PDFW*vagyWútján, vágott navigációs határokkal, 100,000 érték elemzési korlátjaival és zárt hibázású hibás vagy szinguláris transzformációdiagnosztikával
Version 2.694.0
Added
- Hozzáadva korlátozott natív XPS és OpenXPS navigációt transzformált
PathésGlyphsvizuális elemekhez, amely megőrzi a HTTP, HTTPS és mail linkeket PDF URI annotációkként, és feloldja a csomaghoz relatív oldalakat, valamint a percent-dekódoltLinkTargettöredékeket előre- vagy hátrafelé mutató PDF GoTo akciókként, miután minden oldal létezik, metrikát ismerő kattintási határokkal, 65,536 linkes és 8,192 karakteres korlátokkal, VisualBrush rögzítéselnyomással, megszakíthatósággal és zárt hibázású nem biztonságos séma diagnosztikával
Version 2.693.0
Added
- Hozzáadva korlátozott natív XPS és OpenXPS
VisualBrushkonverziót inline vagy erőforrás alapúCanvas,PathésGlyphsvizuális elemekhez, hierarchikus és távoliResourceDictionarykereséssel, abszolútViewbox-szal, abszolút vagy relatívViewport-tal,None,Tileés tükrözött csempemódokkal, transzformációkkal, opacitással, újrafelhasználható Form XObjectekkel, megosztott csempemintákkal, tokent ismerő erőforrásátvitellel, valamint zárt hibázású ciklus-, hibás bemenet-, rekurzió-, tartalom-, gyorsítótár- és elhelyezési keretekkel
Version 2.692.0
Added
- Hozzáadva natív XPS és OpenXPS csomagbetűtípus-beágyazást TrueType és OpenType programokhoz, TTC tagtöredékekhez, GUID-elfedett erőforrásokhoz, közvetlen vagy cmapből származtatott glyph ID-khoz, egy-a-sokhoz Unicode klaszterekhez, explicit előrehaladásokhoz és offsztekhez, szélességben helyes RTL origókhoz, megosztott betűtípus-erőforrásokhoz, beágyazási és no-subsetting engedélyekhez, opcionális glyph subsettinghez, korlátozott
ToUnicodeleképezésekhez, valamint amortizáltan lineáris, pozicionált run kimenethez GDI face helyettesítés nélkül
Version 2.691.0
Added
- Hozzáadva korlátozott OpenXPS
GlyphsIndiceselrendezést szigorú klaszter kódegység- és betűjelszámokhoz, explicit század-em előrehaladásokhoz, vízszintes és függőleges offsztekhez, páratlanBidiLevelvisszafelé haladáshoz, sima attribútum vagy property-element kitöltésekhez, opacitáshoz, natív PDFTJkötegeltéshez, pozicionált Unicode klaszter fallbackhez, megtartott szövegkinyeréshez, zárt hibázású hibás bemenet diagnosztikához, valamint amortizáltan lineáris bufferekhez 65,536 leképezéses felső korláttal
Version 2.690.0
Added
- Hozzáadva az OpenXPS
Path.OpacityMasktámogatást sima, változó alfás multi-stop lineáris és ellipszis radiális gradient, valamint sima, csempézett vagy tükrözött PNGImageBrushmaszkokhoz összevont egységes alfán keresztül, korlátozott natív DeviceGray átlátszósági csoportokkal, megosztott árnyalatmintákkal és kép soft-maszk adatfolyamokkal, zárt hibázású nem támogatott tartalom kezeléssel, valamint az újrafelhasználhatóRegisterLuminositySoftMaskStatebuilderrel alfakép-erőforrás kötéssel
Version 2.689.0
Added
- Hozzáadva az OpenXPS
ImageBrushTile,FlipX,FlipYésFlipXYmódjait natív PDF csempemintákon keresztül, egy, kettő vagy négy egymástól függetlenül vágott elhelyezéssel, megosztott kép- és PNG soft-maszk erőforrásokkal, összeállított fixed-page, útvonal- és brush mátrixokkal, valamint a korlátozottRegisterImageTilingPatternAPI-val újrafelhasználható, képalapú mintákhoz
Version 2.688.0
Added
- Hozzáadva az OpenXPS
ImageBrush.Transformtámogatást véges hatparaméteres attribútummátrixokhoz ésMatrixTransformproperty elemekhez, amelyek a natívPathvágás után és a viewport vágás valamint képelhelyezés előtt fűződnek össze, így a brush forgathat, méretezhet, nyírhat vagy tolhat el a befoglaló vektorgeometria változtatása nélkül; a nem szabványosRelativeTransformés a feloldatlan mátrixerőforrások explicit diagnosztikák maradnak
Version 2.687.0
Added
- Hozzáadva mátrixvezérelt kép XObject elhelyezést a
THPDFPage.ShowImageMatrixútján, és kibővítette az XPS fixed-page importot csomagbeli JPEG, PNG, TIFF és JPEG XRImageBrushkitöltésekkel, abszolút vagy határokhoz relatívViewboxésViewportleképezéssel, natív útvonal- és egyviewportos vágással, kép- és útvonalopacitással, PNG soft-maszk alfával, DPI-tudatos 96 DPI méretezéssel, megosztott dekódolt erőforrás gyorsítótárazással, valamint fail-safe diagnosztikával a nem támogatott csempézéshez, transzformációkhoz, színkonverzióhoz és képkörvonalakhoz
Version 2.686.0
Changed
- Hozzáadva újrafelhasználható, korlátozott multi-stop radiális gradient regisztrációt, és kibővítette a natív vektoros XPS útvonalimportot property-element ellipszis
RadialGradientBrushértékekkel, Pad spread móddal, egységes stop alfával, brush opacitással, relatív vagy abszolút középpont-, origó- és sugárleképezéssel, natív Type 3 PDF árnyalattal, valamint koordinátavisszaállítással, amely érintetlenül hagyja az útvonal geometriáját
Version 2.685.0
Changed
- Kibővítette a rendezett natív vektoros XPS útvonalimportot idézőjeleket ismerő és korlátozott property-element elemzéssel, sima és multi-stop lineáris gradient brushekkkel, natív PDF árnyalatmintákkal, brush és stop alfával, alapértelmezett határokhoz relatív vagy explicit abszolút gradient koordinátákkal, tartományon kívüli stop interpolációval, valamint fail-safe diagnosztikával a nem támogatott transzformációkhoz, spread módokhoz, színinterpolációhoz, változó alfához és degenerált tengelyekhez
Version 2.684.0
Changed
- Hozzáadva rendezett natív vektoros XPS útvonalimport korlátozott rövidített geometriával, kitöltési szabályokkal, sima RGB és ARGB kitöltésekkel és körvonalakkal, útvonal-opacitással, körvonalvastagsággal, hatparaméteres transzformációkkal, valamint fail-safe diagnosztikával a nem támogatott rajzolási funkciókhoz
Version 2.683.0
Changed
- Megszigorította a ténylegesen kirajzolt tartalomra vonatkozó PDF/X-6 validációt definícióidejű árnyalatminta grafikus állapottal, nem stroke-olt minta ExtGState szemantikával, zárt hibázású soft-maszk altípus- és hátterellenőrzésekkel, pontos Type 3 betűjelmetrikákkal és örökölt színszabályokkal, szigorú kombináltfesték-alfa osztályozással, korlátozott JPX színkövetkeztetéssel és megjelenést ismerő annotációkompozitálással
Version 2.682.0
Added
- Hozzáadva termelő- és ellenőrzőtámogatást a
brainpoolP256r1,brainpoolP384r1ésbrainpoolP512r1ECDSA aláírásokhoz, beleértve a görbespecifikus SHA-2 és SHA3 digest mátrixot, fail-before-provider aláírásvalidációt, szigorú named-curve tanúsítványparamétereket, paraméter nélküli ECDSA algoritmusazonosítókat, kanonikus DER aláírásértékeket, Windows CNG named-curve importot, valamint determinisztikus diagnosztikát az explicit, hátrahagyott, ismeretlen vagy eltérő paraméterekhez
Version 2.681.0
Changed
- Egységesítette a nem progresszív bitmap, közvetlen DC, Form és display-list tartalomvégrehajtást a
HPDFInterpretContentTokensDeviceés az opcionális, teljesIHPDFContentOperatorDevicekiterjesztésen keresztül, operátoronként egy megszakítási ellenőrzőponttal, fordítási idejű operátorindex-gyorsítótárazással az operanduskeresés nélküli display-list visszajátszáshoz, publikusOperatorCountmetrikákkal, megőrzött semantic-device kompatibilitással, kijavított",vésyoperátor szemantikával, valamint szabályosEIlezárókezeléssel téves fallback diagnózis nélkül
Version 2.680.0
Added
- Hozzáadva korlátozott, tranzakciós
RepairPDFA4overloadokat típusos opciókkal, részletes javítási jelentésekkel, megosztott megállapítás-eredettel, biztonságos PDF 2.0 fejléc-, trailer ID, metaadat-, Catalog és megjelenítés-normalizálással, névteret ismerő PDF/A azonosításjavítással, konfigurálható részleges vagy teljesmegfelelőségű commit szabályokkal, hibaregresszió-észleléssel, bájtpontra pontos gráf- és XMP visszagörgetéssel, valamint szigorú határvonallal, amely megőrzi az oldaltartalmat, a betűtípusokat, a színeket, az átlátszóságot, a képeket, a grafikus operátorokat és a kinyert szöveget
Version 2.679.0
Added
- Hozzáadva ténylegesen kirajzolt tartalomra vonatkozó PDF/X-6 validációt választható ISO 15930-9:2020 vagy resolved-errata 2025 szabályokkal, tényleges ICC fejléc- és csatornaellenőrzésekkel, erőforrást ismerő bejárással a tartalomtömbök, Form XObjectek, csempe- és árnyalatminták, képek, Type 3 betűjelek, soft maszkok és annotációmegjelenések mentén, overprint-mode és kombináltfesték-átlátszósági diagnosztikával, stabil szabályeredettel, valamint korlátozott dekódoltbájt-, token-, objektum-, probléma-, rekurzió- és grafikusállapot-munkakeretekkel
Version 2.678.0
Added
- Mélyítette a korlátozott PDF/A-4 validációt gyorsítótárazott ICC fejléc- és komponensellenőrzésekkel, dokumentum- és oldalszintű output-intent konzisztenciával, ténylegesen kirajzolt eszközszín- és átlátszóságelemzéssel tartalomtömbök, beágyazott Form XObjectek, képek, képmaszkok, árnyalatok és annotációmegjelenések mentén, örökölt grafikus állapottal, megjelenítési betűtípus-beágyazással, CIDFont és CMap kapcsolatokkal, szigorú annotációjelzőkkel és megjelenési állapotokkal, UTF-8 XMP packet és névtérvalidációval, logikai oldalfa-helyekkel, stabil záradéktudatos diagnosztikával, valamint konfigurálható dekódoltbájt- és tartalomtoken-plafonokkal
Version 2.677.0
Added
- Befejezte a korlátozott PDF/UA-2 dokumentum-, emberi olvasásra kész szöveg-, opcionális tartalom-, annotáció-, AcroForm-, szerkezetcél-, könyvjelző-, beágyazott fájl- és beágyazott oldalcímke-validációt, beleértve a fizikai ParentTree tulajdonlást, skalár szerkezetgyermekeket, megjelenési adatfolyam korlátozásokat, névtér-URI alapú XMP tulajdonságokat, Unicode private-use észlelést és záradéktudatos diagnosztikát; a strukturált HTML, XHTML, XML és JSON export most közös, tag-első akadálymentes olvasási modellt használ nyelvvel, címmel, navigációval, oldalcímkékkel, biztonságos linkekkel, annotációkkal, nem érzékeny űrlapvezérlőkkel, marked-content helyettesítésekkel, artifactokkal, képalternatívákkal, geometriai fallbackgel, független korlátokkal, megszakíthatósággal és atomi publikációval
Version 2.676.0
Added
- Hozzáadva korlátozott minimális bájttartomány-tervezést a linearizált PDF minden oldalához a
PlanProgressiveLinearizedPageRangesútján, nyers és Flate elsődleges vagy túlcsordulási tipp dekódolással, interoperábilis bájtigazított kombinált és Annex F folyamatos split tippelrendezésekkel, pontos bootstrap, oldal-, megosztottcsoport- valamint LF- vagy CRLF-prefixű hagyományos vagy adatfolyam kereszthivatkozás-függőségekkel, szabályos short-read felhalmozással, 256 MiB alapértelmezett tervezőmemória-plafonnal zárt hibázású kódolásdiszkriminációval, átfedést ismerő összefésüléssel, szigorú strukturális keresztellenőrzésekkel, típusos korlátokkal és elérhetőségi diagnosztikával, valamint egységesített[0, /E)elsőoldal-útvonallal
Version 2.675.0
Added
- Hozzáadva független, szabványnak megfelelő crypt-filter szabályokat stringekre, normál adatfolyamokra és beágyazott fájlokra a
ConfigureCryptFilterDefaultsésSetStreamCryptFilterútján, jelszó- és nyilvános kulcsú rezervált szűrőkkel,/Identity-vel, író szempontjából helyes jelszó-biztonsági/EFFés vezető/Cryptcsővezetékekkel, zárt hibázású nyilvános kulcsú stream-specifikus címzetthatárokkal, kis-nagybetű-érzékeny külső named-filter betöltéssel és vizsgálattal,/CFM /None-nal, V2 kulcshossz-jelentéssel, vegyes szabályú Direct File fallbackgel, szétvágott objektum-adatfolyam tároló- és tagstring-szabályokkal, valamint szabályokat megőrző titkosított növekményes frissítésekkel
Version 2.674.0
Added
- Hozzáadva hitelesítést megőrző Standard és nyilvános kulcsú titkosított növekményes frissítéseket egy jelszót ismerő
BeginIncrementalUpdateoverloadon és hozzárendelt címzetti kulcsanyagon keresztül, biztonságosan megőrzött fájlkulcsokkal vagy FEK-ekkel, külön string, stream, metadata és Identity crypt-filter szabályokkal, generációt ismerő örökölt objektumkulcs-deriválással, pontos örökölt/Encrypthivatkozásokkal, bájt-azonos forrásrevíziókkal, eredeti user, owner vagy címzetti hozzáféréssel, valamint zárt hibázású elutasítással titkosítási változtatások vagy nem támogatott heterogén szűrők esetén
Version 2.673.0
Security
- Hozzáadva korlátozott JBIG2 szegmentgráf-validációt a teljes oldalas, régiós, natív vagy külső dekódolás előtt, valamint a globális szótár megosztása előtt, indexelt duplikátum- és hiányzóhivatkozás-ellenőrzésekkel, iteratív ciklus- és függőségmélység-észleléssel, beágyazott adatfolyam oldalhozzárendelés-kikényszerítésével, tiltott szegmentek elutasításával, hosszú hivatkozás- és aggregátumél-keretekkel, szimbólumszótár-foglalási védelmekkel és precíz hibatelemetriával
Version 2.672.0
Added
- Hozzáadva a PAdES E-EPES
signature-policy-identifiergenerálását és szigorú validációját explicit policy OID-ekkel, ismert vagy ETSI ismeretlen hash-ekkel, SPuri, SPUserNotice és SPDocSpecification minősítőkkel, korlátozott Unicode és gyűjteményelemzéssel, policy-dokumentum hash-eléssel, elsődleges aláíró OID és hash rögzítésével a kriptográfiai munka előtt, dedikált eltérésstátuszokkal és teljes JSON jelentéssel
Version 2.671.0
Added
- Hozzáadva determinisztikus RFC 5652 tárolókat legfeljebb 256 független elsődleges
SignerInfobejegyzéssel aHPDFCMSBuildMultiSignedDataésHPDFCMSMergeSignedDataútján, teljes tétel elővalidációval az aláírói mellékhatások előtt, aláírónkénti attribútumokkal, algoritmusokkal, tanúsítványokkal és providerekkel, szigorú definite-length tárolóvalidációval, DER szerint rendezett és duplikátummentes halmazokkal, független ellenőrzési eredményekkel, egyaláírós bájt-kompatibilitással és mellékhatásmentes aggregátum placeholder méretezéssel
Version 2.670.0
Added
- Hozzáadva opcionális RFC 5652
SubjectKeyIdentifieraláíró-azonosságokat aTHPDFCMSSignOptions.SignerIdentifierútján, kompakt IMPLICIT SID kódolással, automatikusSignerInfoésSignedDataverzióválasztással, szigorú X.509 kiterjesztéskinyeréssel, provider és placeholder-méretezési támogatással, valamint zárt hibázású SID, tanúsítvány és verzióegyeztetéssel az ellenőrzés során
Version 2.669.0
Security
- Hozzáadva fail-fast CMS digest-algoritmus konzisztencia-diagnosztikát a
SignedData.digestAlgorithms,SignerInfo, aláírásmechanizmus-paraméterek és az RFC 6211CMSAlgorithmProtectionmentén, dedikált ellenőrzési státusszal, validációs hibakóddal, időbélyeg-propagációval, részletes hibaokokkal és JSON kimenettel
Version 2.668.0
Added
- Hozzáadva a SHA3-256, SHA3-384 és SHA3-512 generálását és ellenőrzését detached CMS, RSA PKCS#1 v1.5, RSA-PSS és ECDSA provider szerződések, RFC 3161 tartalom- és aláírás-időbélyegek, PAdES-LTA megújítás, Seed Value szótárak és ISO 32001 PDF 2.0 developer-extension deklarációk esetén, korlátozott egymenetes bájttartomány hash-eléssel, amelyet a megfelelő PDF MAC szabályok is használnak
Version 2.667.0
Added
- Hozzáadva a
THotPDF.ValidatePDFMACChainmetódust legrégebbi-legújabb irányú növekményes revízióvalidációval, kumulatív klasszikus vagy xref-adatfolyam indexeléssel, pontos revízió- és xref hibahelyekkel, történelmi MAC csere észleléssel, stabilKDFSaltkikényszerítéssel, digest-erősség lefokozás elutasításával, hitelesített/Pés/Permsellenőrzésekkel, preflight jelentéssel, valamint korlátozott revízióelemzéssel ideiglenes PDF másolatok nélkül
Version 2.666.0
Added
- Hozzáadva a
THotPDF.SignPDFWithPFXAndAttachedPDFMACmetódust és az aláíráshoz kapcsolt validációt közvetlen aktív-trailerAuthCode-gal, közvetettSigObjRef-fel, teljes aláírt revízió lefedettséggel, nyers aláírás-érték digest kötéssel, SHA-2 vagy SHA-3 PDF MAC szabályokkal, egymenetes aláírási és MAC tartomány hash-eléssel, preflight jelentéssel és atomi kimenetcserével
Version 2.665.0
Fixed
- Kijavította a
THotPDF.RegisterNChannelColorSpacehívást, hogy az ISO 32000-2 öt-eleműDeviceNformát bocsásson ki/Subtype /NChannelaltípussal és process-komponens metaadatokkal, a minimálisan igényelt PDF verziót 1.6-ra emelte, és a luminositás soft maszkok most az alternate színtéren keresztül oldják fel az NChannel festéket, miközben megmarad az olvasási kompatibilitás a régi/NChannelcsalád tokenekkel
Version 2.664.0
Added
- Befejezte a PDF blend-mode megjelenítést integer hot-path megvalósításokkal a Hue, Saturation, Color és Luminosity módokhoz, és kijavította a teljes opacitású gyors utat, így minden aktív szétválasztható vagy nem szétválasztható blend mode a hátterére kompozitál
Version 2.663.0
Security
- Hitelesíti a PKCS#12 tárolókat, mielőtt a titkosított safe tartalmakat kiadná: a külső, opcionális
MacData-t ellenőrzi korlátozott PKCS#12 KDF iterációkkal, SHA-1 vagy SHA-256 HMAC-mal, konstans idejű digest összehasonlítással, valamint zárt hibázású rossz-jelszó és manipulációkezeléssel
Version 2.662.0
Added
- Hozzáadva három HotPDFCLI parancsot: a
renderminden kijelölt oldalt raszterez<prefix>-page<N>.pngfájlba a betöltött-oldal bitmap csővezetéken keresztül (--pagestartomány,--dpi10..2400, alapértelmezetten 150), atablestípusos táblázatokat exportál CSV-be vagy JSON-ba azExportLoadedTypedTablessegítségével (--json,-ofájl vagy konzol), acomparepedig két dokumentum JSON összehasonlítási jelentését írja ki aHPDFDocCompareDocumentsútján (--mode0..5: oldalszám-, oldalszöveg-, objektumszám-, megjelenített-kép-, teljes és strukturális mód)
Fixed
- Javítva a Win64 ICC transzformációs csővezeték hibája, amely 8 bites kötegelt transzformációknál (
TransformBytes) csupa-nulla kimenetet adott: a Win64 lcms2 objektumokban lévő optimalizált 1D-LUT gyors út nullákat ad vissza, miközben az általános újramintavételező csővezeték helyes, ezért a 8 bites transzformáció most csak Win64 alatt épülcmsFLAGS_NOOPTIMIZE-gal; a 16 bites egyszín út és az összes Win32 transzformáció megtartja az optimalizált gyors utat (a kötegelt sRGB elsődlegek most mindkét platformon round-trip-elnek)
Version 2.661.0
Added
- Hozzáadva valódi, keretezett Zopfli nagy-hányados Flate tömörítést a meglévő négy-stratégiás zlib alapvonal mögött, szigorú növekedés-mentes kiválasztással, bemeneti, iterációs, blokk-, kimeneti és eltelt-idő korlátokkal, részletes adatfolyam- és párhuzamos-kép telemetriával, valamint determinisztikus, rögzített korpuszos megtakarítási kapukkal
Version 2.660.0
Added
- Hozzáadva determinisztikus, XML formátumú, gép-olvasható preflight jelentéseket és ABI-verziójú, megbízható plugin-eket jellemző-kinyeréshez és egyéni validációs szabályokhoz, stabil rendezéssel, policy-bundle integrációval, megszakítás-propagációval, zárt hibázású képesség-ellenőrzésekkel, valamint véges plugin-, megállapítás-, jellemző-, sztring-, kimeneti és futásidő-keretekkel
Version 2.659.0
Added
- Kibővítette a korlátozott XFA FormCalc-ot feltételes logikával, ismételt numerikus aggregátumokkal és validált dinamikus példány-callback-ekkel, valamint hozzáadott alapból kikapcsolt, sandboxolt QuickJS űrlap-szkripteket teljes vezérlési folyamattal, natív typed array-ekkel, izolált adateléréssel, véges utasítás-, idő-, memória-, verem-, érték- és példány-műveleti keretekkel, valamint végrehajtási telemetriával
Version 2.658.0
Added
- Hozzáadva korlátozott, szerkeszthető XFA packet DOM-okat teljes XDP adatfolyamokhoz és rendezett packet tömbökhöz, local-name útvonal-lekérdezésekkel, packet és csomópont módosítással, pontos, érintetlen-bájt megtartással, packet-enkénti szelektív újraírással, determinisztikus névtér- és attribútum-kimenettel, biztonságos CDATA darabolással, entity escaping-gel, valamint véges bemeneti, kimeneti, packet-, csomópont-, mélységi, attribútum-, szöveg- és lekérdezési keretekkel
Version 2.657.0
Added
- Hozzáadva a CSC API v2 távoli aláírást a meglévő CMS provider csővezetéken keresztül, alkalmazásáltal kezelt transzporttal, OAuth token frissítéssel, korlátozott hitelesítési lánc-felderítéssel, explicit authorization és SAD kezeléssel, szinkron vagy aszinkron digest aláírással, RSA-PSS paraméterekkel, pollinggal, RFC 3161 időbélyegekkel, megszakíthatósággal, stabil idempotencia-kulcsokkal és egy véges, befejezett műveletek gyorsítótárával
Version 2.656.0
Added
- Hozzáadva opcionális, tartalom-pontszámos XPS, EPUB és CBZ dokumentumkezelőket cserélhető, szálbiztos regisztrációval, egyetlen validált archívum-vizsgálattal, fixed-page, spine és természetes kép-rendezéssel, megváltoztathatatlan PDF-konverziós gyorsítótárral, közös archívum-, erőforrás-, reflow-, oldal-, pixel-, DPI-, kimeneti és megszakítási keretekkel, valamint visszagörgetés-biztos PDF publikálással
Version 2.655.0
Added
- Hozzáadva korlátozott típusos táblázat-kinyerést és atomi CSV vagy JSON exportot kanonikus oszlopokkal, azonos oldalon belüli töredékek és egymást követő oldalak összefésülésével, összevont cella-áthidalásokkal, ismételt fejlécekkel, oldalgeometriával, megbízhatósági értékekkel, eredet-nyomonkövetéssel, valamint területi beállítás által vezérelt integer, number, boolean, dátum, dátum-idő, pénznem és százalék következtetéssel
Version 2.654.0
Added
- Hozzáadva a betöltött oldalak atomi strukturált exportját HTML, XHTML, XML és JSON formátumba egyetlen olvasási-sorrend modellel, blokkokkal, formázott span-ekkel, felismert táblázatokkal, koordinátákkal, forrássorrenddel, opcionális korlátozott PNG képekkel, Unicode-biztos escaping-gel, megszakíthatósággal és véges erőforrás-keretekkel
Version 2.653.0
Added
- Hozzáadva a betöltött oldalak atomi színátírása DeviceGray, DeviceRGB vagy DeviceCMYK színtérre, kereshető vektortartalom megtartásával, képek és összetett erőforrások veszteségmentes, színkezeléses raszter-konverziójával, forgásbiztos kimenettel, explicit megjelenítési hűségi és erőforrás-keretekkel, valamint a spot színekre vonatkozó preserve, process-convert vagy reject szabályokkal
Version 2.652.0
Added
- Hozzáadva felülvizsgálat-elvű betöltöttoldal-kitakarítás észlelést ellenőrzösszeg-alapú PII mintákkal, bővíthető entitás- és arcdetektorokkal, konfidencia-pontozású oldalterület-találatokkal, korlátozott munkatelemetriával, kötelező felülvizsgáló-identitással, atomi jóváhagyott-annotáció előkészítéssel, valamint különálló, explicit beégetési határral
Version 2.651.0
Added
- Hozzáadva korlátozott betöltött oldalas és régiós vonalkód-dekódolást bővíthető motorokkal, progresszív alacsony felbontású megjelenítéssel, fallback negyedfordulatos szkenneléssel, validált szöveges és nyers hasznosadatokkal, PDF-területi határokkal és tájolással, konfidenciaszűréssel, átfedésdeduplikációval, megszakíthatósággal és erőforrás-telemetriával
Version 2.650.0
Added
- Hozzáadva korlátozott, megszakítható, kereshető OCR szövegrétegeket bővíthető felismerő motorokkal, konfidencia- és geometria-validációval, forgáshoz igazított láthatatlan Unicode szöveggel, optional-content csoportosítással, erőforrás-telemetriával és atomi többoldalas publikálással
Version 2.649.0
Added
- Hozzáadva teljes objektumgráf oda-vissza konverziót verziózott JSON-on keresztül adatfolyamos snapshot és inkrementális exporttal, nyers vagy dekódolt beágyazott és atomi sidecar hasznosadatokkal, korlátozott séma-kompatibilis importtal, szerkezeti és adatfolyamhossz-validációval, valamint tranzakciós publikálással
Version 2.648.0
Added
- Hozzáadva korlátozott javítást a kézzel szerkesztett QDF diagnosztikai dokumentumokhoz, amely megőrzi az objektum- és adatfolyambájtokat, javítja a közvetlen, közvetett, hiányzó vagy elavult adatfolyamhosszakat, újraépíti a klasszikus kereszthivatkozás-offszeteket és trailereket, elutasítja a nem biztonságos struktúrát, és a kimenetet a normál loaderen keresztül ellenőrzi
Version 2.647.0
Added
- Hozzáadva szálbiztos egyéni adatfolyamszűrő nyilvántartást korlátozott push és pull szerződésekkel, megosztott dekódolási keretekkel, kooperatív megszakítással, explicit seek követelményekkel, izolált egyéni hibákkal és végrehajtási telemetriával
Version 2.646.0
Added
- Hozzáadva korlátozott tartalomoperátor visitor és event API-kat csak olvasható operandusnézetekkel, determinisztikus állapot-callback-ekkel, inspect, measure, replace, delete, stop és reject műveletekkel, kooperatív megszakítással, validált kimenettel és atomi betöltöttoldal-frissítésekkel
Version 2.645.0
Added
- Hozzáadva bővíthető betöltöttoldal-renderelő backend szerződést fordított display-list hozzáféréssel, natív GDI implementációval, szálbiztos párhuzamos dispatch-sel, determinisztikus fallback szabályzattal, gyorsítótár-érvénytelenítéssel és végrehajtási telemetriával
Version 2.644.0
Added
- Hozzáadva korlátozott elrendezés-átfedésészlelést, elemútvonalakat, opt-in forrásképezést, natív vektoros túlcsordulási és átfedés-átfedő rétegeket, élő diagnosztikai callback-eket és munkastatisztikákat
Version 2.643.0
Added
- Hozzáadva natív, korlátozott vektoros diagramokat vonal-, oszlop-, terület-, körcikk- és pontdiagram-sorozatokkal, automatikus vagy kézi tengelyekkel, témákkal, jelmagyarázatokkal, címkékkel, PDF/UA Figure alternatívákkal és megjelenítési statisztikákkal
Version 2.642.0
Added
- Hozzáadva korlátozott, GUI-szálas RichEdit és RTF lapozást vektoros EMF kimenettel, képekkel, opt-in támogatott OLE prezentációkkal, megszakíthatósággal, adatfolyam-pozíció megőrzésével, valamint explicit bemeneti, karakter-, oldal- és kimeneti keretekkel
Version 2.641.0
Added
- Hozzáadva korlátozott SVG 2 importot újrafelhasználható PDF Form XObject-ekként natív geometriával és ívekkel, CSS cascadel, vektoros színátmenetekkel, clip és mask támogatással, Base 14 szöveggel, opacity erőforrásokkal, elhelyezkedés-tudatos link annotációkkal és importstatisztikákkal
Version 2.640.0
Added
- Hozzáadva verziózott HTML5 paged-media importprofilt toleráns DOM elemzéssel, nyomtatási CSS cascadel, lapozott blokk- és táblázatelrendezéssel, opcionális AcroForm vezérlőkkel, korlátozott callback-vezérelt erőforrásokkal és műveletenkénti statisztikákkal
Version 2.639.0
Changed
- A nagy helyi fájlos leképezések mostantól a konfigurált leképezett-bájt keretet igazítják a nagyobb szekvenciális ablakok és legfeljebb 16 kisebb MRU véletlen hozzáférésű ablak között, megtartják az explicit rögzített geometriájú opciót, és jelentik az aktív geometriát, az átmeneteket, a hozzáférési minta darabszámait és a csúcsot jelentő leképezett bájtokat
Version 2.638.0
Added
- Hozzáadva korlátozott oldalközi JBIG2 szimbólumtranzitást külső és natív backendekkel, egyetlen megosztott globális szótárral, egzakt duplikátumoldal-újrafelhasználással, közvetlen PDF kép-köteg beszúrással, backend- és méretelemetriával, valamint a 100 oldalas regressziós korpuszon mért 78.8 százalékos tömörítési megtakarítással
Version 2.637.0
Changed
- A párhuzamos betöltöttoldal-megjelenítés mostantól a folyamat-szintű memóriakeretből csökkenti a kért worker-ek számát, lefoglal minden igényelt oldalt, a rendezett kimenet foglalásait a callback kézbesítésen át is megtartja, megszakítás vagy hiba esetén felébreszti a keretre várókat, valamint párhuzamosítási, foglalási, felvételi, késleltetési és várakozási telemetriát jelent
Version 2.636.0
Changed
- A betöltöttoldal-előolvasás mostantól a gyorsítótár-záron kívül fordít és renderel, a tokenizáláson és a lejátszáson keresztül kooperatívan szakad meg, elsőbbséget ad az előtérbeli oldalrenderelésnek, valamint haladási, hiba-, elővételi és megszakítási késleltetési telemetriát tesz elérhetővé
Version 2.635.0
Added
- Hozzáadva rendezett, adatfolyamos párhuzamos oldalrenderelést hívószál-callback-ekkel, korlátozott kész-bitmap sorral, producer backpressure-vel, kooperatív megszakítással, kölcsönzött bitmap élettartamokkal, valamint sor-, bájt-, várakozási, befejezési és kézbesítési telemetriával
Version 2.634.0
Added
- Hozzáadva kétállásos párhuzamos betöltöttoldal-pipeline-t, amely a render-gyorsítótár záron kívül fordítja a display listeket, a teljes oldalkészlet lefordítása előtt elindítja a lejátszást, dinamikusan egyensúlyozza a korlátozott worker-eket, megőrzi a bemeneti sorrendet, csökkenti a tartalom-token allokációt, valamint állapot-, gyorsítótár-, befejezési és késleltetési telemetriát tesz elérhetővé
Version 2.633.0
Added
- Hozzáadva megváltoztathatatlan, hivatkozásszámlált dekódolt bitmap handle-eket másolás nélküli gyorsítótár-találatokkal, közvetlen szálbiztos renderer rajzolással, igény szerinti izolált módosítható másolatokkal, kiürítéstől független élettartamokkal, valamint kumulatív handle- és másolási telemetriával
Version 2.632.0
Changed
- A QuickJS végrehajtás mostantól Win32 és Win64 alatt is működik statikus objektumokon és ABI-semleges bridge DLL-en keresztül, Unicode-biztos értékekkel, determinisztikus státuszjelentéssel, konfigurálható memória-, verem-, szkript-, idő- és megszakítási limitekkel, biztonságos DLL-felderítéssel, elutasított szkriptek utáni helyreállítással és reproducálható cross-platform runtime buildekkel
Version 2.631.0
Changed
- A Factur-X és ZUGFeRD üzleti szabály validáció mostantól a teljes átvizsgált XPath 2 Schematron felületet végigfuttatja külső kód-adatbázisokkal, szekvenciális bindingekkel, kvantorokkal, FLWOR összegekkel, stabil fallback szabályazonosítókkal, biztonságos korlátozott XML elemzéssel, explicit kiértékelési hiba-találatokkal, nulla csendes kihagyással és fail-closed kombinált validációval
Version 2.630.0
Added
- Hozzáadva beépített TrueType variable-font instancingot képzett tengelyekkel, megosztott és privát
gvartuple-ökkel, IUP interpolációval, egyszerű és összetett outline frissítésekkel, phantom-point metrikákkal,HVAR-,VVAR- ésMVARbakinggel, kompakt statikus glyph újraépítéssel, ellenőrzösszeg-helyes kimenettel és callback-mentes Unicode betűtípus-regisztrációval
Version 2.629.0
Added
- Hozzáadva mellékhatás-mentes CMS placeholder becslést explicit, provider vagy RSA tanúsítványos aláírásméretekből, egzakt statikus tárolóformázással, konzervatív dinamikus hasznosadat-tartalékokkal, elő-aláírási újraépítésekkel, képességfeltételes provider újrapróbálásokkal, szigorú külső aláíró egylépéses garanciákkal, korlátozott méretezéssel és részletes kísérletdiagnosztikával
Version 2.628.0
Added
- Hozzáadva elérhetőségen alapuló betűtípus-subsettinget a betöltött PDF-ekbe ágyazott betűtípusokhoz, beleértve az oldaltartalmat, a beágyazott Form XObject-eket, az annotáció appearance állapotokat, a megosztott betűtípusprogramokat, a TrueType és CFF formátumokat, a kódolt méret szerinti kiválasztást, a stabil CID és ToUnicode leképezéseket, a részletes eredményeket, valamint az alapértelmezett elutasítást aláírások jelenlétében
Version 2.627.0
Added
- Hozzáadva automatikus PDF/UA struktúragenerálást deklaratív elrendezésfákhoz, beleértve a címsorokat, listákat, táblázatokat, ábrákat, a nyelvi és alternatív szöveg metaadatokat, a lapozási artefaktumokat, a folytatásbiztos marked-content hivatkozásokat, az olvasási sorrend megőrzését, a szemantikus validációt és a struktúrstatisztikákat
Version 2.626.0
Added
- Hozzáadva deklaratív dokumentum DOM-ot öröklődő stílusokkal, újrafelhasználható komponensgyárakkal, szövegekkel, spacer-ekkel, stack-ekkel, konténerekkel, szekciókkal, ismétlődő fejlécekkel és láblécekkel, súlyozott, ismétlődő fejlécsoros táblázatokkal, korlátozott folytatási mélységgel, lapozási statisztikákkal, másolás nélküli szöveg- és táblázattöredékekkel, lineáris felsőszintű bejárással, azonnali oldalírással, valamint egymással megegyező Delphi és C++Builder felületekkel
Version 2.625.0
Added
- Hozzáadva megismételhető Win32 és Win64 statisztikai performance gate-et, amely elkülöníti a betöltést, mentést, renderelést és szövegkinyerést, warmupokat és 30 nyers mintát rögzít p50, p95, mintaszórás, RSS, folyamat-I/O, környezet és determinisztikus fixture identitás mellett, majd stabil JSON küszöböket értékel ki, és regresszió esetén hibás kilépési kóddal tér vissza
Version 2.624.0
Changed
- Átdolgozta az egyszerű szótár- és tömbelemzést megváltoztathatatlan forrásspan-ek, közvetlen numerikus konverzió, egy menetes beágyazott konténerek és indexelt szótárbeszúrás köré, publikus materializációs telemetriával; egy 30,000 páros Win32 fixture 64.7 százalékkal csökkentette az öt menetes allokációs bájtokat, az eltelt idő pedig 3,656 ms-ról 46 ms-ra csökkent
Version 2.623.0
Added
- Hozzáadva konfigurálható elemző limiteket egyedi token bájtokra, összesített tokenekre, tömb- vagy szótárbejegyzésekre és hibás tokenekre, valamint szigorú nem megbízható bemenet presetet, típusos limit kivételeket és betöltésenkénti telemetriát; a regressziós gate-ek 250 ms alatt, 37 MiB alatti folyamatcsúccsal utasítanak el egy 2 MiB-os tokent és egy egymillió tokenes konténert
Version 2.622.0
Added
- Hozzáadva explicit betöltöttoldal objektumgráf-felszabadítási és telemetria API-kat, amelyek eldobják a tiszta, oldal-tulajdonú gyökereket és a render gyorsítótárakat, miközben megőrzik a közvetett megosztott erőforrásokat és az újratöltési metaadatokat; 100,000 oldal szekvenciális feldolgozása stabil 69.3 MiB csúcson marad, a felszabadított közönséges vagy tömörített oldalak pedig eredeti objektumidentitásukkal materializálódnak újra
Version 2.621.0
Changed
- A dekódolt object-stream konténerek mostantól konfigurálható, bájtban korlátos LRU gyorsítótárat használnak azonnali konténerszintű kiürítéssel, kiürítés után forrásalapú újratöltéssel, nulla-megtartású móddal, valamint csúcsbájt-, kiürítési és újratöltési telemetriával
Version 2.620.0
Changed
- A nagy közönséges oldalfák mostantól kompakt placeholderekként nyílnak meg, a véletlenszerű oldalakat
/Count-vezérelt bejárással és közvetett objektum hash indexszel oldják fel, gyorsítótározzák a feloldott oldalakat, materializációs telemetriát és vezérlést tesznek elérhetővé, és szerkezeti módosítás vagy mentési művelet előtt automatikusan kibővülnek
Version 2.619.0
Changed
- A betöltött AcroForm mezők, minősített nevek, widgetek, annotációk és oldalak mostantól lusta, kétirányú kapcsolat-gyorsítótárat osztanak meg fordított annotációkereséssel, widgetenkénti oldalkereséssel, aktivitási telemetriával, explicit érvénytelenítéssel a nyers objektumgráf-szerkesztésekhez, valamint módosításbiztos automatikus karbantartással
Version 2.618.0
Changed
- Az oldal-objektum keresés mostantól lustán újraépített, módosításérzékeny fordított indexet használ objektumszámokra és feloldott oldalpointerekre, felváltva az ismételt oldaltábla-bejárásokat az oldalmásolás, outline-ök, named destination-ök, action-ök, űrlapok, akadálymentesítés és oldalfa-egyeztetés során, miközben érvényességi és aktivitási telemetriát tesz elérhetővé
Version 2.617.0
Changed
- A renderelt dokumentum-összehasonlítás mostantól támogatja a hívó által választott DPI-t, RGB vagy luminancia színtoleranciát, változott pixel arány és SSIM-szerű hasonlósági küszöböket, determinisztikus összefüggő változásrégiókat, opcionális PNG differencia-átfedéseket, valamint fail-closed oldal- és összesített pixelkereteket explicit megjelenítési diagnosztikával
Version 2.616.0
Changed
- A dokumentum-összehasonlítás mostantól determinisztikus, katalógusalapú útvonalakon járja be a közvetett objektumgráfokat, explicit erőforrás-kereteken belül hasheli az értékeket és adatfolyamokat, oldalakat igazít, mielőtt beszúrásokat, törléseket, áthelyezéseket és változásokat osztályozna, megkülönbözteti az áthelyezett objektumokat a hozzáadottaktól és eltávolítottaktól, és befejezetlen összehasonlításokat jelent, ahelyett hogy a keretkorlátos eredményeket azonosnak tekintené
Version 2.615.0
Changed
- A betöltött kép dekódolása mostantól 16 gyorsítótár-metaadat shardot és egzakt kulcsonkénti singleflight koordinációt használ, a független, drága dekódolásokat párhuzamosan végzi, miközben megőrzi az egy tulajdonos dekódolást a duplikált kérésekhez, minden shardra érvényesíti a konfigurált bájt- és bejegyzés-kereteket, valamint gyorsítótárazott dekódolási belépési pontokat és párhuzamosítási telemetriát tesz elérhetővé; négy független 12,000 pixeles JPEG kérés 3.72-szeresére skálázódik négy Win64 workeren, míg nyolc azonos kulcsú kérés egyszer dekódol
Version 2.614.0
Changed
- Az alacsony felbontású szürkeárnyalatos és RGB JPEG megjelenítés mostantól korlátozott 1/2, 1/4 vagy 1/8 inverz-DCT skálát választ, a skálázott sorokat fixpontos resampleren keresztül közvetlenül a pontos célbitmapba vezeti, megőrzi a dekódolási kereteket, a megszakíthatóságot és a codec-worker izolációt, valamint forrás-, skálázott, cél-, sor- és memóriatelemetriát tesz elérhetővé a
GetLastJPEGReducedDecodeInforévén; a 12,000 by 12,000-ról 300 by 300-ra csökkentő regressziós fixture 24.05-ször gyorsabb a teljes dekódolásnál, anélkül hogy lefoglalná a 432 MB-os forrásrasztert
Version 2.613.0
Changed
- A betöltött oldal
/Contentstömbjei mostantól lusta, seekelhető összefűzött adatfolyamot tesznek elérhetővé, a szűretlen szegmenseket forrásalapú tárolóban tartják, egyszerre legfeljebb egy szűrt szegmenst dekódolnak, amortizáltan lineáris token- és bájtösszegzést használnak, szerkesztéskor új szegmens hozzáfűzésével őrzik meg az eredeti adatfolyamokat, és egy 1 GiB-os, 10,000 szegmenses szekvenciát 64 MiB alatt tartanak további munkamemóriában
Version 2.612.0
Changed
- Az inkrementális frissítések mostantól írásra zárolva és fájlalapúan tartják a forrásfájlt a teljes forrásbájtok megtartása helyett, csak a változott, új és törölt objektumokat járják be és bocsátják ki ritka xref alszakaszokban, az eredeti előtagot új célra streamelik, és azonos célú mentéseknél közvetlenül fűznek hozzá rollbackkel; egy 4 GiB-os egyobjektumos revízió 128 MiB-on belül marad a további munkamemóriában
Version 2.611.0
Added
- Hozzáadva korlátozott, dokumentum-hatókörű betöltöttbetűtípus-dekódoló gyorsítótárat 32 MiB-os és 128 bejegyzéses LRU limitekkel, singleflight elemzés-újrafelhasználással oldalak, betöltött szövegkinyerés, SVG export és szövegcsere között, a
GetLoadedFontDecoderfüggetlen deep-copy eredményeivel, konfigurálható memóriakeret- és telemetria API-kkal, valamint automatikus gráf-, oldal-, újratöltési, JSON Patch és CMap konfiguráció-érvénytelenítéssel; egy megosztott közvetett betűtípus ismételt használata mostantól csak egyszer elemzi az encodingját, szélességeit,ToUnicode-,CIDToGIDMap- és leszármazott leképezéseit, amíg meg van tartva
Version 2.610.0
Changed
- Felgyorsította az oldalimportot és az objektum-graftolást a lineáris, pontosan átméretezett idegen objektum keresőtömb helyettesítésével egy művelet-hatókörű, kettő hatványai méretű, nyílt címzésű mapre, amely forrásdokumentum, objektumszám és generáció szerint kulcsol; a megosztott közvetett objektumok és a ciklikus gráfok megtartják meglévő identitás-szemantikájukat a kötegelt importok során, miközben a nagy objektumgráfok mostantól amortizáltan konstans idejű regisztrációt és várhatóan konstans idejű keresést használnak
Version 2.609.0
Changed
- Javította az SVG oldalexport hűségét: a közvetlen
w,J,j,Mésdgraphics-state operátorok mostantól megőrzik a vonalvastagságot, a nevesített cap és join stílusokat, a miter limiteket, a dash tömböket és a dash fázist; aq/Qvisszaállítja ezeket az attribútumokat beágyazott tartalomban és Form XObject-ekben; az even-oddf*,B*ésb*festőoperátorokfill-rule="evenodd"értéket bocsátanak ki; a nulla szélességű PDF hairline-ok nem skálázódó SVG stroke-okon keresztül láthatóak maradnak
Version 2.608.0
Added
- Hozzáadva QuickJS statikus linkelési infrastruktúrát: a
Lib/HPDFQuickJSStatic.pasaz öt QuickJS OMF objektumot linkeli (patchelt forrásokból bcc32c-vel fordítva){'$L'}direktívákon keresztül — DLL függőség nélkül —, és deklarálja a teljes C runtime felületet (47 szimbólum: msvcrt C99 matematika, Borland 64 bites aritmetika, méretsemleges atomic stubok, pthread stubok); athirdparty/QuickJS/build-static.batautomatizálja a patch-and-compile pipeline-t. Ismert korlát: aJS_NewRuntimesikeres, de aJS_NewContextaccess violationbe fut, mert az_Atomiceltávolítása megváltoztatja a struct inicializálás sorrendjét; a v2.607.0-s DLL build marad a működő kiértékelési útvonal
Version 2.607.0
Added
- Hozzáadva DataMatrix 2D vonalkód-generálást (
Lib/HPDFDataMatrix.pas): ASCII módú kódolás számjegypár-tömörítéssel, Reed-Solomon ECC GF(256) felett a DataMatrix primitív $12D polinomjával, 10x10-től 144x144-ig terjedő négyzetméretek, váltakozó irányú kódword-elhelyezés és L alakú finder minta; aTHPDFPage.DrawDataMatrixa kódolt mátrixot kitöltött modulnégyzetek rácsaként jeleníti meg - Hozzáadva PDF417 egymásra rakott 2D vonalkód-generálást (
Lib/HPDFPDF417.pas): szövegmódú kódolás base-30 karakterpárosítással, Reed-Solomon ECC GF(929) felett a 3-as primitívvel, szimbólumleíró kódolással, valamint sor/oszlop elrendezéssel start/stop mintákkal; aTHPDFPage.DrawPDF417megjeleníti a kódword mátrixot - Hozzáadva a QuickJS JavaScript engine bindinget (
Lib/HPDFQuickJS.pasplusz előre fordított Win32/Win64quickjs.dllathirdparty/QuickJS/bin/alatt): dinamikus DLL betöltés, runtime+context életciklus és a kiértékelési API felület (Eval/EvalInt/EvalFloat); azEvalkódútvonal ismert Win32 indítási összeomlást produkál alkalmazásba linkelve, és nyomon követendő vizsgálatként dokumentálták - Hozzáadva a
THPDFWriterarchitekturális kinyerési célt (Lib/HPDFWriter.pas): xref bejegyzésnyilvántartás (free/used/compressed), klasszikus xref tábla szerializáló és trailer szótárépítő, amelyre a THotPDF mentési útvonala inkrementálisan delegál
Version 2.606.0
Added
- Hozzáadva két HotPDFCLI parancsot: a
decryptbetölt egy titkosított PDF-et a megadott jelszóval, aDecryptLoadedDocumentsegítségével dekódolja, és titkosítatlan másolatot ment (-okimeneti útvonal, alapértelmezett<input>-decrypted.pdf); azoptimizeminden adatfolyamot újratömörít FlateDecode használatával aCompressLoadedDocumentrévén (-okimeneti útvonal, alapértelmezett<input>-optimized.pdf, titkosított bemenetet elutasít)
Version 2.605.0
Added
- Hozzáadva QR Code 2D vonalkód-generálást: az új
Lib/HPDFQRCode.pasteljes QR kódolót implementál (numerikus, alfanumerikus és bájt kódolási módok; Reed-Solomon hibajavítás GF(256) felett; 1-40-es verziók mind a négy EC szinttel, L/M/Q/H; mind a nyolc maszminta büntetés-kiértékeléssel; helyes modulelhelyezés finder, timing, alignment, formátuminformációs és verzióinformációs mintákkal). ATHPDFPage.DrawQRCodemetódus a kódolt mátrixot kitöltött modulnégyzetek rácsaként jeleníti meg bármely írás alatt álló oldalon (ModuleSizepontban, konfigurálható EC szint és szín)
Version 2.604.0
Added
- Hozzáadva a teljes MacExpertEncoding dekódolási táblát: a 128 bájtos felső fél mostantól a szakértő glyph-eket (kiskapitálisokat, old-style számokat, felső/alsó indexű számjegyeket, törteket, tipográfiai szimbólumokat) a legközelebbi Unicode kódpontra vagy Private Use Area helyettesre képezi le, felváltva a korábbi nyers bájtos identitás fallbacket, amely olvashatatlan, zavart kimenetet adott a szakértő kódolású Type 1 betűtípusokat használó dokumentumoknál
Version 2.603.0
Fixed
- Javította a
ConcurrentObjStmDecryptionMatchesSerialrégóta fellépő, szeszélyes hibáját: azFRevisionglobális elavulttá vált, miután azaes256az alapértelmezett PDF 1.6 verzió alattaes128-ra fokozódott le, félrevezetve aCreateKeys-t a V5 ágba, amely soha nem tölti ki a hagyományos/Oés/Ujelszóhasheket — a szerializált titkosítási szótár így üres vagy elavult jelszósztringeket hordozott, és a fájl nem volt megnyitható. A javítás a setterben és mindkét verziótárgyalási helyen újraszámolja azFRevision-t a lefokozottFCryptKeyType-ből, a hagyományos szótárág pedig mostantól egyértelmű diagnosztikát ad, ha a jelszósztringek nem pontosan 32 bájtosak
Added
- Hozzáadva a HotPDFCLI
htmlparancsát: egy korlátozott HTML fájlt (h1-h6, p, ul, ol, hr, inline jelölés) PDF-ké renderel aHPDFRenderHTMLDocumentsegítségével
Version 2.602.0
Added
- Hozzáadva blokkszintű HTML importot: a
THPDFHTMLImporter(és aHPDFRenderHTMLDocumentkényelmi wrapper) korlátozott HTML részhalmazt renderel egy írás alatt álló dokumentumra —h1-h6címsorok szintenkénti méretekkel,pbekezdések (a csupasz törzsszöveg implicit bekezdéssé válik),ul/ollisták behúzottlielemekkel (felsorolásjel vagy1.számozás),hrvonalak, automatikus oldaltörések az alsó margónál, valamint böngésző-stílusú helyreállítás nem lezártp/liblokkoknál; ahead/script/stylerégiók kihagyásra kerülnek, a konténer tagek átlátszóan átengednek. Az inline jelölés (b/i/u/font/a/sub/sup, entitások, szótörés) a meglévőTextOutHTMLrendererre delegálódik, így a blokkok egy oldalon belül egyben maradnak; a táblázatok, képek, CSS és beágyazott listák nem tartoznak a hatókörbe
Version 2.601.0
Added
- Hozzáadva három HotPDFCLI parancsot: a
mergea további bemenetek minden oldalát az első dokumentumhoz fűzi, és menti az egyesített fájlt (-okimeneti útvonal, legalább két bemenet, kimenet/bemenet ütközés védve); asplita dokumentum minden kijelölt oldalát saját egyoldalas fájlba írja (<prefix>-page<N>.pdf,--pagesegyalapú tartomány, az alapértelmezett prefix a bemeneti útvonalból); azexport-svgminden kijelölt oldal SVG exportját írja (<prefix>-page<N>.svg, alapértelmezett 1. oldal)
Version 2.600.0
Added
- Hozzáadva SVG oldal exportot: a
BuildLoadedPageSVGönálló SVG 1.1 dokumentumot ad vissza bármely betöltött oldalhoz, aSaveLoadedPageAsSVGpedig lemezre írja; exportálásra kerülnek az útvonalak (fill/stroke/fill-and-stroke festőoperátorok a DeviceRGB színekkel), a szövegfuttatások (karakterenként pozicionált<text>elemek, amelyek ugyanazt a betűtípus-dekódolási fallback láncot használják, mint a szövegkinyerés, tiszteletben tartva a Tf/Tc/Tw/Tz/Ts értékeket és a szövegmátrixot a forgással és skálázással együtt), a kép XObject-ek (dekódolva és base64 PNG data URI-ként beágyazva, a CTM egységnégyzetén keresztül képezve) és a Form XObject-ek (rekurzív értelmezés a form mátrixszal és a saját /Resources-szel), valamint a /Rotate 90/180/270 oldalak az elforgatott vásznalgeometriában exportálódnak - A megosztott content-stream eszközdiszpécserből örökölt ismert korlátok: nincs W/W* kivágás, nincsenek
shárnyalások, nincsenek Type 3 betűtípusok, az inline képek csak metaadatokat jelentenek, és míg az ExtGState által támogatott stroke paraméterek (LW/LC/LJ/ca/CA) érvényesülnek, addig a simaw/J/j/doperátorok nem kerülnek kiküldésre
Version 2.599.0
Added
- Hozzáadva a HotPDFCLI parancssori eszközt (
tools/HotPDFCLI): konzolos front end három paranccsal —info(PDF verzió, oldalszám és elsőoldal-méret, titkosítási módszer, linearizáció és xref struktúra, annotáció/betűtípus/kép/űrlap/aláírás számlálók, Info metaadatok),extract-text(egyalapú--pagestartományok,--outfájlkimenet,--layoutfix szélességű rácss mód, amely megfelel a vizuális olvasási sorrendnek) ésverify(aláírásmezőnkénti státusz, aláíró, ok, hash, aláírási idő, teljes dokumentumra kiterjedő lefedettség és tanúsítványállapot, nem nulla kilépés, ha bármely aláírás hibás); aBuild-HotPDFCLI.batWin32 és Win64 binárisokat készít
Version 2.598.0
Added
- Hozzáadva a
SetRenditionMediaPlayParameters-t: csatolja vagy frissíti egy média rendition/Pmédialejátszási paraméterek szótárát kötelezően tiszteletendő/MHvagy legjobb szándékú/BEcélokkal, amelyek hordozzák a hangerő-százalékot, a vezérlő láthatóságát, az autoplay jelzőt, a fit módot (meet/slice/fill/scroll/hidden), az ismétlésszámot, valamint intrinsic, végtelen vagy explicit timespan időtartamot - Hozzáadva a
SetRenditionMediaScreenParameters-t: csatolja vagy frissíti egy média rendition/SPmédialejátszó képernyőparaméter-szótárát (ablaktípus floating/full-screen/hidden/screen-annotation téglalap, DeviceRGB háttérszín, háttér átlátszatlanság, monitorindex) - Hozzáadva a
SetSoundAnnotationParameters-t: újraírja egy Sound annotáció/Soundadatfolyamának mintaformátumát (mintavételi ráta, csatornák, bit mintánként, Raw/Signed/muLaw/ALaw kódolás) a beégetett 22050 Hz-es sztereó 16 bites Signed alapértelmezéseken túl, és beállítja a/Nameikont, például Speaker vagy Mic
Version 2.597.0
Added
- Hozzáadva a
SetMovieAnnotationParameters-t: felülírja egy film annotáció/Movieszótárát (méretarány-pár, forgás 0/90/180/270, időtartam másodpercben, borítókép-láthatóság), amelyet azAddMovieAnnotationhozott létre a beégetett alapértelmezéseivel - Hozzáadva a
SetRichMediaPresentation-t: feltölti egy RichMedia annotáció/RichMediaSettingsaktiválási, deaktiválási és prezentációs szótárait (feltételnevek, mint aPOoldal-megnyitás, eszköztár / navigációs UI / helyi kattintás / átlátszóság jelzők); üres feltételnév esetén a megfelelő szótár kimarad - Hozzáadva a
ResolveIndirectObject-ot aTHotPDF-en: feloldja azokat a közvetett hivatkozásokat, amelyeket az író oldal a kiírt szótárakban tárol, így a hívók navigálhatnak a frissen épített objektumfákban; azAddRichMediaAnnotationmostantól az annotációját aLastAnnotation-ban is regisztrálja
Version 2.596.0
Added
- Hozzáadva élő visszavonási bizonyíték felderítést: a tanúsítványértelmező mostantól beolvassa az AIA OCSP responder és CRLDistributionPoints URI kiterjesztéseket, a
HPDFExtractCertificateRevocationURLstanúsítványonként teszi elérhetővé azokat, aHPDFCollectCMSRevocationRequestspedig bizonyítékkérésekké alakítja őket (GET pkix-crl terjesztési pontonként, POST ocsp-request minimális RFC 6960 SHA-256 CertID törzzsel, amelyet a tanúsítványból és a kibocsátójából építenek, az önaláírt tanúsítványok saját kibocsátójukként oldódnak fel) - Hozzáadva a
HPDFValidateCMSCertificatePathOnline-t: összegyűjti ezeket a kéréseket, a hívó által szolgáltatott transzporton keresztül hajtja végre őket a meglévő retry/worker mechanizmus felett (a könyvtár soha nem nyit socketet), és minden lekért OCSP választ és CRL-t betáplál az offline validátorba; a sikertelen lekérések az offline bizonyíték szemantikára degradálódnak
Version 2.595.0
Added
- Hozzáadva JBIG2 halftone régió dekódolást (22/23 szegmenttípus): mintaszótárak (16-os típus) MMR vagy aritmetikai kollektív bitképekkel, szürkeárnyalatos bit-sík vermek mind MMR (bájtigazított láncolt síkok), mind aritmetikai formában (egy megosztott MQ dekódoló), rácsos elhelyezés 8.8 fixpontos vektorokkal és az opcionális HSKIP üres térképpel
- Hozzáadva JBIG2 önálló generic-refinement régiókat (42/43 típus, GRTEMPLATE 0/1 TPGRON-nal), amelyek egy hivatkozott régiószegmens archivált bitmapjét vagy az oldalpuffert finomítják
- Hozzáadva
AddPubSecKeyMaterial/ClearPubSecKeyMaterials: további címzett privát kulcsok, amelyek minden/Recipientsborítékon kipróbálásra kerülnek, ha az elsődlegesPubSecKeyMaterialnem egyezik - Hozzáadva tesztadatfolyam-építőket:
HPDFJBIG2Codec_EncodeHalftoneRegionTestStreamésHPDFJBIG2Codec_EncodeStandaloneRefinementTestStream, amelyek végponttól végpontig lefedik az új szegmenttípusokat
Fixed
- Javította a nyilvános kulcsos AES-128 dokumentumbetöltést: a hagyományos objektummenet a pubsec szétválás után inicializálatlanul hagyta a
FileKey-t,StringKeyType-ot ésStreamKeyType-ot, így minden objektum szemétkulccsal dekódolódott (a Win64 betöltés teljesen elbukott; a Win32 betöltés csendben rossz nyílt szöveget adott) - Javította a titkosított sztringek oda-vissza kezelését: a titkosított szöveg mostantól mindig hex sztringként szerializálódik, mert a literális sztringek a CR-t, LF-et és CRLF-et egyetlen LF-re normalizálják, és az escape feldolgozás tetszőleges titkosított bájtokat fordíthatott meg
Version 2.594.0
Added
- Hozzáadva beépített identitás-közelítést az előre definiált CJK UCS2/UTF16 CMap-ekhez (
UniJIS-UCS2-H,UniGB-UTF16-Vés további 15): aHPDFLoadStandardCMapFilebeépített táblából válaszol, ha nincsenek CMap erőforrások a lemezen, így a Type0 szövegkinyerés már nem dekódolja bájtonként a 2 bájtos kódokat - Hozzáadva felhasználói JBIG2 Huffman táblákat (53-as szegmenttípus, B.2 melléklet leíró formája): a natív dekódoló elemzi a táblaszegmenseket, a szimbólumszótár SDHUFFDH/SDHUFFDW/SDHUFFBMSIZE/SDHUFFAGGINST és a szövegrégió SBHUFFFS/DS/DT/RDW/RDH/RDX/RDY/RDSIZE választójának 3-as értéke pedig a hivatkozott szegmensekből oldja fel őket
- Hozzáadva a
SetStructureClassMapEntry-t, amely egy osztálynév megosztott attribútumszótárát regisztrálja a StructTreeRoot/ClassMap-jában, teljessé téve aSetStructureElementClass/C API-t
Fixed
- Javította a nyilvános kulcsos többcímzettes kulcshelyreállítást: a
/Recipientsborítékok egy nem számlált listában tárolódtak, amely egy puffert aliasolt a bejegyzések között, így a két vagy több címzettes dokumentumok minden titkosításhoz rossz fájlkulcsot számoltak ki; a borítékok mostantól tulajdonolt másolatok, és a hagyományos SHA-1 útvonal a tiszta borítékbájtokat hasheli, ahogy az AES-256 útvonal
Version 2.593.0
Added
- Hozzáadva Shading Type 1 (függvényalapú) megjelenítést: a domain téglalap látható részét színhiba-vezérelt quadtree osztja fel, minden levélcella két gradiens háromszöggént festődik, csúcsszínei a 2 bemenetű függvényből mintavételezve, felváltva a korábbi "not sampled" fallback diagnosztikát
- Hozzáadva elnéző 2 bemenetű függvénykiértékelést: az csak egy bemenetet deklaráló függvény
f(x)-ra fokozódik le (konstans a második domain koordinátában) a hibázás helyett, így a Type 1 árnyalás mögötti mintavételezett és exponenciális függvények is festenek
Version 2.592.0
Added
- Hozzáadva object-stream karantént: egy sérült
/Type /ObjStmkonténer okkal kerül rögzítésre (THPDFObjStmQuarantineReason: nem adatfolyam, rossz szótár, rossz fejléc, rossz adatfolyam-méret, dekódolás sikertelen, kicsomagolás sikertelen,/Firsttartományon kívül, értelmezhetetlen fejléc vagy konténerkivétel), diagnosztikai sorral, valamint a feloldatlanul hagyott tagobjektumszámokkal, miközben a független konténerek tovább töltődnek - Hozzáadva tagszintű karantént (
osqrMemberUnparsable): egy sikeresen dekódolt konténerből értelmezhetetlen tagtörzs egyszer rögzítésre kerül a testvérei befolyásolása nélkül, aGetLoadedQuarantinedObjStmCount/GetLoadedQuarantinedObjStmInfopedig minden rekordot elérhetővé tesz; a karanténrekordok túlélik egy betöltés helyreállítási újrapróbálásait, konténerenként deduplikálódnak, és a következő betöltési belépéskor törlődnek
Version 2.591.0
Added
- Hozzáadva kereszthivatkozás-térkép lapozást: amikor a sűrű térkép túllépi a
THotPDF.XRefMapPagingThresholdbejegyzést (alapértelmezett 250000, a 0 letiltja), a betöltés-befejező menetTHPDFXRefMapPager-be csomagolja -- rendezett snapshot tömörített 24 bájtos slotokból, amelyet bináris keresés válaszol meg egy LRU-materializált, 64 bejegyzéses oldalon keresztül --, és felszabadítja a sűrű tömböt - Hozzáadva a
GetLoadedXRefMapPaged-et, amely a lapozott állapotot jelenti bejegyzésszámmal, snapshot bájtokkal, valamint ablak találat- és tévesztésszámokkal; az inkrementális mentés free-set újraépítése és a lustán materializált adatfolyamtagok közvetett/Lengthfeloldása a pageren keresztül válaszol, így a lapozott dokumentumok megtartják a teljes funkcionalitást
Version 2.590.0
Added
- Hozzáadva explicit objektum-életciklus állapotokat: a
THPDFObjectLifecycleStatekap egyolsRaw(indexelt, de nem materializált tömörített tagok),olsParsed(forrásbájtokból materializált, módosítatlan) ésolsFlushed(a kimeneti dokumentumba szerializált) állapotot; a betöltött objektumok mostantólolsParsed-ot hordoznak az általános tiszta állapot helyett - Hozzáadva
MarkRaw,MarkParsedésMarkFlushedmetódusokat aTHPDFObject-on; aGetLoadedObjectLifecycleStateolsRaw-t ad vissza azoknál a tömörített tagoknál, amelyek törzse még nem materializálódott - Hozzáadva
RawCount,ParsedCountésFlushedCountmezőket aTHPDFObjectLifecycleStatistics-hoz; minden teljes mentési útvonal (sima, csomagolt, linearizált) a kibocsátott objektumokatolsFlushed-be mozgatja, miközben azIsDirtytovábbra isolsDirty-t vagyolsMustWrite-t jelent
Version 2.589.0
Added
- Hozzáadva zero-copy object-stream tag materializációt: a tömörített tagok mostantól csak olvasható slice nézeten keresztül értelmeződnek a megosztott kicsomagolt konténerpuffer felett, duplikált részsztring és második adatfolyammásolat helyett, megtartva a pontos bájt-elrendezést a záró újsorral együtt
- Hozzáadva a
THPDFObjectStreamSliceStream-ot, egy publikus, csak olvasható nézetadatfolyamot, amely (source, offset, length) slice-eket tesz elérhetővé virtuális záró LF-fel, valamint két újTHPDFObjectStreamCacheInfomezőt, aSliceViewCount-ot és aSliceViewBytes-t, amelyek jelentik, hány tag materializálódott zero-copy nézeteken keresztül
Version 2.588.0
Added
- Hozzáadva párhuzamos object-stream konténerdekódolást az új
HPDFObjStmDecodeegységen keresztül: aTHotPDF.ObjStmDecryptWorkers(alapértelmezett 1) korlátozza azokat a worker szálakat, amelyek minden különböző AES-256 titkosított/Type /ObjStmkonténert előre dekódolnak a soros dekódolási és indexelési menet előtt; a konténerenkénti kulcsanyag kérésenként másolódik és törlődik, az eredmények megtartják a sorrendet, a hagyományos RC4 / AES-128 konténerek pedig a hívó szálon maradnak
Version 2.587.0
Added
- Hozzáadva nyilvános kulcsos titkosított dokumentum újratöltést: az
/Adobe.PPKLite//Adobe.PubSectitkosítású dokumentumok mostantól betöltődnek, ha a hívó hozzárendeli aPubSecKeyMaterial-t (HPDFParsePFX-ből); az előszkennelés kibontja a/RecipientsRSA-OAEP borítékot, visszanyeri a seedet, és újraszámolja a fájlkulcsot, így a konténer- és sztringdekódolás változatlanul fut - Hozzáadva a
PubSecRecipientQuerycallbacket, amely kiválasztja, hogy a szolgáltatott kulcs melyik címzettborítékot bontja ki,PubSecRecipientQueryContext-tel a hívói állapothoz - Hozzáadva a
HPDFUnwrapRSAOAEPRecipientEnvelope-t, amely visszanyeri a seedet és a jogosultsági biteket egy CMS EnvelopedData címzettborítékból
Fixed
- Javította az újratöltési oda-vissza teszt által felszínre hozott nyilvános kulcsos íróhibákat: a címzettborítékok egy bináris-Unicode sztring oda-vissza konverzió miatt sérültek (mostantól hex kódolással tárolódnak), a fájlkulcs digest egy bájttal eltoltan hashelte a borítékbájtokat, és a
/Recipientssztringek közönséges sztringekként titkosítódtak — mostantól egy explicitSkipEncryptionjelzővel opt-outolnak
Version 2.586.0
Added
- Hozzáadva XFA overflow cél folytatást: a
<overflow target="..."/>mostantól a túlcsordult folyó elemeket a nevesített cél subform téglalapjába irányítja, a folytatási sorokat egymásra rakva, amíg a cél megtelik, fallbackkel a normál tartalomterület-láncra, valamint figyelmeztetéssel, ha a cél hiányzik, egy elemnél kisebb vagy tele van
Version 2.585.0
Added
- Hozzáadva XFA vonalkód-megjelenítést: a
<draw><value><barcode type="...">mostantól eszközfüggetlen vonalakat bocsát ki csak olvasható szövegmezővé fokozódás helyett, az XFA szimbológianeveket (code3Of9,code128,ean13,upcA,codabarés továbbiak) a vonalkódmotorra képezve - Hozzáadva XFA transzformációs grafikát: a
rotate,<tran><scale>és<tran><translate>minden grafikafajtát (vonal, ív, téglalap, kép, szöveg, vonalkód) középpontos forgásúq ... cm ... Qtranszformációba csomagol
Version 2.584.0
Added
- Kibővítette a FormCalcot sztringfüggvényekkel:
Concat,Len,Left,Right,Substr,Replace,Lower,Upper,TrimésSpace, ideértve az idézett sztringliterálokat és a vegyes szöveg/numerikus kifejezéseket - Hozzáadva FormCalc dátumkonverziót: a
Date2Num/Num2Dateoda-vissza konvertálja az ISO dátumokat az 1900-as korszakú sorozatnapszámlálón keresztül, plusz aDate() - Hozzáadva a FormCalc pénzügyi könyvtárát:
Pmt,FV,PV,RateésNPera cash-flow előjelegyezménnyel, numerikus függvényekkel komponálhatóan, mint aRound
Version 2.583.0
Added
- Befejezte az XFA SOM feloldást közbülső, csupasz
*wildcard szegmensekkel, amelyek minden gyermekágba leereszkednek, valamint valódi osztálytokenekkel: a#subform/#dataGroupkonténerosztályú csomópontokat választ ki, a#fieldmezőszerűeket, a többi#nametoken pedig egyéni adatcsomópontokra illeszkedik - Az osztálytokenek mostantól indexeléssel is komponálódnak (a
#subform[2]az osztály minden csomópontját megszámolja dokumentumsorrendben), és részt vesznek a leszármazotti..keresésekben
Version 2.582.0
Added
- Hozzáadva rádiógomb- és jelölőnégyzet-appearance állapotegyeztetést: a gombérték írása a
SetFormFieldValuevagy aSetLoadedFormFieldValueByNamekeresztül mostantól minden widgetben kiválasztja a megfelelő/ASállapotot, a laposítás pedig az appearance-ök generálása előtt egyeztet, így egy elavultOffállapot soha nem győzheti le az importált értéket - Hozzáadva regenerációs stabilitást a gomb appearance-ökhöz: az
EnsureLoadedFieldAppearanceStreammegőrzi egy állapotszótár meglévő on-state nevét, a rádiógomb-gyermekek on-state neveit pedig a saját/Texportértékükből származtatja
Version 2.581.0
Added
- Hozzáadva elforgatott mező appearance-öket: a
/MK /Rwidgetek mostantól a forgást/Matrix-ként hordozzák a generált appearance-ön, miközben megtartják a forgatás nélküli űrlapteret, így a comb, multiline és listbox megjelenítés változatlan marad, a laposítás pedig a transzformált dobozt a/Rect-re képezi le - Hozzáadva rich-text appearance támogatást: a sima
/Vnélküli, de/RVtörzzsel rendelkező mezők a karaktertartalmat renderelik, az inline XHTML jelölést eltávolítva - Hozzáadva teljes szavas tördelést a többsoros szövegmezőkhöz: a túl hosszú sorok szóhatárokon törnek a karakterenkénti szélességbecsléssel, a szavak épségben maradnak a levágás helyett
Version 2.580.0
Added
- Hozzáadva CID betűtípusos mező appearance-öket: az
EnsureLoadedFieldAppearanceStreama/DAbetűtípust az AcroForm/DRszótáron keresztül oldja fel, és újracsatolja a dokumentum font objektumot az appearance erőforrásokba, így a Type0 betűtípusok a CJK értékeket UTF-16BE hex szövegként renderelik Helvetica helyettesítés helyett - Hozzáadva appearance lefedettséget minden AcroForm mezőosztályhoz: a checkbox és rádiógomb widgetek mostantól
Offés on-state appearance-öket is kapnak (vektoros pipa és kitöltött kör, ZapfDingbats függőség nélkül), a push gombok feliratot renderelnek, a listboxok pedig soronként egy/Optsort festenek a kijelölt sor kiemelésével - Hozzáadva karakterenkénti szélességbecslést, amely a CJK és full-width tartományokat teljes em-mel méri, javítva a quadding és comb elhelyezést a több bájtos értékeknél
Version 2.579.0
Added
- Hozzáadva szigorú űrlapszkript-kereteket a
THotPDF.FormScriptBudgetsproperty-n keresztül: valós idejű CPU leállítás, kumulatív memóriakeret és generált kimeneti korlát mostantól mindenEvaluateLoadedFieldJavaScriptfutást és minden újraszámolási menetet korlátoz - Hozzáadva a
THPDFScriptBudgetsrekordot, amely lefedi a szkript hosszát, utasításait, rekurziós mélységét, műveleteit, CPU idejét, értékenkénti és kumulatív memóriáját, valamint a kimeneti bájtokat; a nulla bármely mezőben az adott konkrét limitelemet emeli fel - Hozzáadva kiértékelési telemetriát: a
THPDFJavaScriptEvaluationResultmostantólElapsedMillisecondsésValueBytesértékeket is jelent a műveletszám mellett
Version 2.578.0
Added
- Hozzáadva űrlapmező számítási függőséggráfot a
THotPDF.BuildLoadedFormCalculationGraphrévén: minden/CO-regisztrált Calculate szkript statikus elemzésen megy keresztül, és topológiai kiértékelési sorrendbe fűződik - Hozzáadva a
THotPDF.RecalculateLoadedFormFieldsIncremental-t, amely csak azokat a számításokat számolja újra, amelyek tranzitívan olvasnak egy változott mezőt, így a részösszegből összegbe mutató láncok egy menetben terjednek tovább a nem kapcsolódó számítások érintése nélkül - Hozzáadva dirty mező követést: a
SetFormFieldValueés aSetLoadedFormFieldValueByNamekeresztüli írások dirty halmazt halmoznak fel, amelyet a paraméter nélküli inkrementális overload, az explicit változottmező-listás overload és a teljes újraszámolási menet fogyaszt - Hozzáadva a
HPDFFormCalcGraphegységet, amely érintett-lezárás lekérdezéseket, a teljes célsorrendet, ciklusszámokat és feloldatlan forrásneveket tesz elérhetővé eszközök előnézetéhez - Hozzáadva a
HPDFExtractSafeJavaScriptFieldReferences-t, amely kinyeri azokat a mezőneveket, amelyeket egy biztonságos részhalmazú szkript olvasAFSimple_Calculateargumentumokból ésgetFieldhozzáférésekből, a sztringliterálokat kihagyva
Changed
- A függőségciklusok mostantól megtartják a
/COdokumentumsorrendet, és egy változott mező soha nem számolja újra a saját szkriptjét, így a ciklikus dokumentumok egymenetes újraszámolásként viselkednek, a felhasználó által írt értékek pedig mindig fennmaradnak
Version 2.577.0
Added
- Hozzáadva kötegelt aláírásvalidációt az új
THotPDF.ValidateLoadedSignatureBatchmetóduson keresztül: minden betöltött aláírás bájtszinten ellenőrzött és tanúsítvány szerint validált egyetlen menetben, strukturált aláírásonkénti eredményekkel - Hozzáadva a
HPDFSignatureBatchegységet megosztott tanúsítványútvonal-gyorsítótárral: az ugyanazt az aláíróláncot ismétlő aláírások újrahasználják az előző útvonalítéletet az újraszámolás helyett - Hozzáadva megosztott időbélyeg-gyorsítótárazást a kötegen belül: az azonos RFC 3161 dokumentum-időbélyegek és beágyazott aláírás-időbélyeg tokenek kihagyják az újraellenőrzést a
THPDFCMSVerifyOptions.SkipSignatureTimestampVerificationrévén - Hozzáadva visszavonási bizonyíték megosztást az aláírások között: egy validáció során látott OCSP válaszok és CRL-ek tárolódnak a
THPDFRevocationEvidenceCache-ben, és a későbbi aláírásokba injektálódnak az újvesCachebizonyítékforrás alatt - Hozzáadva a
THPDFSignatureValidationBatch-ot önálló kötegfuttatásokhozFailFast-tal, worker párhuzamosítással, megszakítási tokenekkel és megosztott külső visszavonási gyorsítótárral - Hozzáadva a
HPDFSignatureBatchResultToJSON-t, amely a teljes köteg kimenetelét rendereli gyorsítótár-statisztikákkal, gépi olvasású JSON-ként
Version 2.576.0
Fixed
- Javította a Showcase demo access violation összeomlását indításkor: a
THPDFViewera konstrukció és az újrakötés során is elsütötte azOnPageChange-t, így az első galériagenerálás mostantól azOnShow-ból fut (miután léteznek az ablakhandle-ek), és minden eseménykezelő védekezik a mégnilvezérlők ellen - Javította, hogy a Showcase galéria teljes TrueType betűtípusokat ágyazott be a Unicode mintáihoz: a font subsetting mostantól engedélyezett, a tízoldalas dokumentum kb. 3.9 MB-ról kb. 336 KB-ra zsugorodott
Version 2.575.0
Added
- Hozzáadva algoritmus-rugalmas PDF MAC előállítást és validációt SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-384 és SHA3-512 algoritmusokhoz, beleértve az adatfolyamos tartományhashelést és a CMS algoritmusvédelmi konzisztencia-ellenőrzéseket
- Hozzáadva explicit
THPDFPDFMACOptionscompatibility, modern, high-assurance és custom profilokat generálási algoritmusokkal, validációs allowlistákkal, opcionális AES-256-GCM kikényszerítéssel, policy diagnosztikával és forrás-kompatibilis alapértelmezett overloadokkal
Security
- A PDF MAC validáció mostantól a nagy bájttartományok hashelése előtt fedezi fel a kódolt digestet, és a hitelesítés előtt elutasítja a nem engedélyezett algoritmusokat vagy titkosítási módokat, miközben a HMAC-SHA-256, HKDF-SHA-256 és AES-256 key wrap a dokumentumformátum által rögzített marad
Version 2.574.0
Added
- Hozzáadva a
SaveIncrementalUpdateAuthenticated-t kriptográfiai integritású és megbízható tanúsítványos módokkal: a metódus azonos könyvtárbeli jelöltet ír, minden policyt hordozó aláírást hitelesít, DocMDP, FieldMDP, UR vagy UR3, Identity és ismeretlen transzformációs döntéseket kényszerít ki a későbbi revíziókra, és csak minden policy sikere után helyettesíti atomikusan a célt
Security
- A revízióelemzés mostantól az egzakt aláírt snapshotból rekonstruálja a transzformációs policyket, és az eredeti aláírásobjektumhoz, bájttartományhoz és CMS értékhez köti őket, ahelyett hogy az aktív objektumgráf későbbi átdefiniálásaira hagyatkozna, miközben az elutasított jelöltek törlődnek a meglévő cél változatlanul hagyásával
Version 2.573.0
Added
- Hozzáadva a zászlóshajó
Showcasedemót aDemo\Delphialatt: indításkor tízoldalas funkciógaléria PDF-et generál (gradiens borító, tipográfia inline rich texttel, vektoros gradiensek / minták / átlátszóság, egyTHPDFTableszámla, vonalkód-szimbológiák, futásidőben festett képek, annotációk és linkek, optional-content rétegek, valamint PAdES aláírás-appearance), és a beágyazottTHPDFViewer-ben rendereli szinkronizált témalistával - Hozzáadva egykattintásos
Encrypt AES-256műveletet a Showcase demóhoz, amely újraépíti a galériát AESV3 (R6) titkosítással, felhasználói jelszóval és csak nyomtatás engedéllyel aHotPDF-Showcase-Encrypted.pdffájlba - Hozzáadva könyvjelző-navigációt minden Showcase galériaoldalhoz a
BeginDoc(True)és azOutlineRoot.AddChildrévén, így a generált dokumentum feltöltött outline panellel nyílik meg
Version 2.572.0
Added
- Kibővítette az aláírás-transzformáció vizsgálatát és az inkrementális változások osztályozását minden standard módszerre: a
GetLoadedSignaturePermissionsmostantól jelenti aDocMDP-t,UR-t,FieldMDP-t,Identity-t, az ismeretlen módszereket, a Catalog/URés/UR3kapcsolatot, minden standard használatjog-bitet, valamint a korlátos tranzitívIdentity /Dataobjektumhatókört; a revízióelemzés megkülönbözteti az űrlapkitöltéseket, az aláírásokat, az annotáció- és beágyazottfájl létrehozási/törlési/módosítási műveleteket, valamint függetlenURCompliant,IdentityCompliantés összesítettTransformCompliantdöntéseket tesz elérhetővé
Fixed
- Alkalmazza a standard alapértelmezett
DocMDP /P 2jogosultságot, amikor az opcionális bejegyzés hiányzik, és elutasítja a hibás, duplikált, nem egyező vagy ismeretlen transzformációs struktúrákat, ahelyett hogy csendben átugraná őket
Version 2.571.0
Added
- Hozzáadva MacExpertEncoding támogatást: a PDF 1.7 D.3 mellékletéből átírt glyph-névtábla mostantól táplálja a
HPDFBaseEncToUnicode-t, így az expert-készletű Type 1 betűtípusok valódi Unicode-ra dekódolódnak szövegkinyeréskor a nyers bájt identitás helyett; az Adobe Glyph List megkapta a tizenhárom ékezetessmallvariánst (Acutesmall-től Tildesmall-ig) azokkal a térköz-ékezet kódpontokkal - Hozzáadva a tizenegy szétválasztható blend módot (ISO 32000-1 11.3.5): a
HPDFBlendComponentimplementálja a Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference és Exclusion módokat; a renderer a/BM-t az ExtGState-ből a graphics-state snapshotba dolgozza be, és a festett pixeleket a háttérrel kompozitálja az alpha súlyozás előtt - Engedélyezte a beágyazott GSUB kontextusos lookupokat: a SequenceLookupRecord mostantól célzhat kontextusos (Type 5), láncolt-kontextusos (Type 6) és vissza-láncolt (Type 8) lookupokat, a megosztott formátumonkénti alkalmazókon keresztül diszponálva a meglévő rekurziómélység-korlát alatt
Version 2.570.0
Added
- Hozzáadva a
THPDFRevocationEvidenceCache-et, egy szálbiztos LRU gyorsítótárat időbélyeg / OCSP / CRL bizonyítékokhoz, kibocsátó, sorozatszám és responder azonosítók szerint kulcsolva (nem esetérzékeny). A bejegyzések érvényességi ablakot hordoznak, a keresések a legkésőbb kezdődő, az értékelési időt tartalmazó intervallumot választják, a találatok felfrissítik a frissességet, a bejegyzésszám- és bájtkeretek egyaránt FIFO kiürítést váltanak ki teljes találat / tévesztés / kiürítés / csere számlálókkal aGetInforévén - Hozzáadva oldalszintű
SaveState/RestoreStatemetódusokat aTHPDFPage-en, amelyek aq/Qgraphics-state operátorokat bocsátják ki, így a hívók keretezhetik a clip, ExtGState és szövegkörvonal szekciókat a tartalomépítő megérintése nélkül
Fixed
- Javította, hogy a hagyományos táblás free bejegyzések elvesztek a betöltéskor az összevont kereszthivatkozás-térképből: a klasszikus tábla type-0 bejegyzései mostantól úgy rögzítésre kerülnek, mint xref-stream társaik, így a második
SaveIncrementalUpdatemenet a megőrzött free láncot látja aSourceFreeObjectCount=0és az elveszett generációk helyett - Javította, hogy a
THPDFSignatureEvidenceTaskkonstrukciókor "Cannot call Start on a running or suspended thread" kiváltást dobott: a task mostantól azAfterConstruction-ban indul, miután az objektum teljesen felépült, ahelyett hogy a konstruktorból versenyzene az RTL szálállapot-ellenőrzéssel
Version 2.569.0
Added
- A
THPDFCertificateValidationOptions.TrustPurposekorlátozatlan, dokumentum-aláírási, kód-aláírási, e-mail-védelmi, időbélyegzési, OCSP-aláírási vagy egyéni EKU policyt választ, miközben az útvonalvalidáció megtartja a teljes engedélyezett és kizárt név-subfa kikényszerítést, a tanúsítvány-policy leképezést és gátlást, valamint jelenti a kiválasztott purpose OID-t aTHPDFCertificateValidationInfo-ban
Version 2.568.0
Added
- A
THPDFSignatureEvidenceTaskidőbélyeg, OCSP és CRL bizonyítékokat szerez korlátozott háttérworkereken keresztül stabil eredménysorrenddel, exponenciális újrapróbálással és korlátos késleltetésekkel, kooperatív megszakítással, válaszméret-limitekkel, transzportkivétel-izolációval, élő snapshotokkal, valamint jól elkülönülő végleges, kimerült, megszakított és túlméretes kimenetekkel
Version 2.567.0
Added
- A
THPDFWindowsKeyStorageSignatureProvidersmart-card, TPM és gyártói CNG kulcstároló providereken keresztül ír alá privát kulcsok exportálása nélkül, támogat perzisztált kulcs keresését vagy kölcsönzött és tulajdonoltNCRYPT_KEY_HANDLEértékeket, opcionális hardveres kikényszerítést, csendes hozzáférést, RSA PKCS#1 v1.5 és RSA-PSS aláírást, korlátozott kimenetet, valamint provider-státusz osztályozást a meglévő PKCS#11 adapter mellett
Version 2.566.0
Added
- A
HPDFNormalizeContentStreamGraphicsStateés aHPDFCompareContentStreamsSemantica dekódolt content streameket korlátozott kanonikus eseményeken keresztül hasonlítja össze, kiküszöbölve a szám- és sztringírásmód-beli különbségeket, a redundáns graphics és text-state beállítókat, az üresq/Qhatóköröket és az ekvivalens összefűzött mátrixokat, miközben megtartja a hatályos állapotot, az operátor operandusait és a SHA-256 inline-kép identitásokat
Version 2.565.0
Changed
- A
SaveIncrementalUpdatemostantól újjáépíti a teljes aktív free-objektumláncot destruktív szerkesztések után, megőrzi a korábban free generációkat, az újonnan felszabadított generációkat 65535 telítéssel növeli, megtartja a nem nulla generációkat az újraírt objektumoknál, determinisztikus objektumszám-sorrendben bocsátja ki a bejegyzéseket, és az eredményt aGetLastIncrementalXRefRebuildInforévén teszi elérhetővé
Version 2.564.0
Added
- A
THPDFPage.TextOutOutlinea hívó által kiválasztott Unicode szöveget a jelenlegi TrueType face-en keresztül formázza, a GDI move, line, köbös Bézier és path-záró rekordokat natív PDF útvonalakká alakítja át betűmérettel, vízszintes skálázással, baseline pozícióval és forgással, majd a meglévő kivágási, szín-, blend-mód, alpha és soft-mask graphics state alatt tölti ki őket szövegoperátorok beágyazása nélkül
Version 2.563.0
Added
- A
FlattenLoadedPageComplexGraphicsfelismeri a mesh shadinget és az összetett Pattern erőforrásokat, növekvő raszterfelbontásokat értékel ki egy korlátozott, 16 régiós, nagy felbontású referencia alapján luma-súlyozott perceptuális hibametrikával, megőrzi a spot színű oldalakat, és a kiválasztott eredményt a varratmentes, korlátos CalRGB tile író adja ki
Version 2.562.0
Changed
- A
FlattenLoadedPageTransparencymostantól a megosztott rendereren keresztül oldja fel a forrás ICC, CIE, eszköz, soft-mask, blend-tér, megjelenítési szándék és feketepont-kompenzációs színeket, majd varratmentes, Flate-tömörítésű D65 CalRGB tile-okat bocsát ki hívó által vezérelt teljes raszter- és tile-onkénti pixelkeretekkel, csúcs-memóriatelemetriával
Version 2.561.0
Added
- A
ScrubLoadedRedactionRemnantseltávolítja a Redact és fájlcsatolmány annotációkat, a dokumentuminformációkat, az XMP és privát metaadatokat, a társított és beágyazott fájlokat, valamint minden kitakarítás után elérhetetlenül maradt közvetett betűtípust, képet, hasznosadatot vagy egyéb objektumot, majd tömöríti az objektumszámokat, és teljes újraírást kényszerít ki, amely nem tarthat meg inkrementális revízióbájtokat
Version 2.560.0
Changed
- Az
ApplyLoadedRedactionsmostantól even-odd kivágási határt helyez a teljes oldaltartalom köré, így a metsző szövegek, útvonalak, képek, minták, inline képek és Form XObject-ek pontosan kivágódnak, miközben a közvetlen szövegoperandusokat és az egyesTJelemeket glyph négyszögekkel üríti ki, az átfedő kitakarító téglalapokat pedig konzervatívan egyesíti
Version 2.559.0
Changed
- Az oldalimportok mostantól újrahasznosítják az ekvivalens közvetett képeket, Form XObject-eket, Pattern-eket, beágyazott betűtípusprogramokat, Font szótárakat és ExtGState szótárakat oldalak és forrásdokumentumok között kanonikus, függőségtudatos SHA-256 ujjlenyomatokkal, cél átfogó találat-, tévesztés- és bejegyzésstatisztikákkal
Version 2.558.0
Added
- A
AnalyzeLoadedPageSemanticTextés azExtractLoadedPageSemanticTextstabil olvasási sorrendet épít glyph négyszögeiből, ismétlődő oszlopsávokkal, igazított táblázatsorokkal és cellákkal, listaszintekkel, címsorokkal, ábra- és táblázatfeliratokkal, valamint teljes szélességű függőleges zónákkal, korlátozott O(n log n) csoportosítást használva az adatfolyam-sorrend helyett
Version 2.557.0
Added
- A betöltöttoldal-kinyerés mostantól megőrzi a több skálát lefedő
/ToUnicodecélokat, és karakterrekordokat ad vissza transzformált négyszögekkel, alapvonalakkal, forrásfürtökkel és explicit ligatúra-komponens tagsággal, miközben jelenti, hogy a betűtípus-szélességek és a vertikális metrikák teszik-e pontosá a geometriát
Version 2.556.0
Changed
- A betöltöttoldali szövegkinyerés mostantól rekonstruálja a hiányzó vagy hiányos
/ToUnicodeleképezéseket beágyazott sfnt cmap 0, 4, 6 és 12 formátumokból, AGL-alapú/Encoding /Differencesglyph nevekből, helyesen dekódolt bináris/CIDToGIDMapadatfolyamokból és Adobe CID gyűjteménytáblákból, ugyanazokkal a fallbackekkel, amelyek a fordított szövegcsere számára is elérhetők
Version 2.555.0
Changed
- A produkáló oldali shaping újrahasznosítás mostantól hashelt keresést, stabil betűtípus-tartalom identitásokat, egzakt 64 bites feature maszkot, valamint vertikális, szkript, nyelv és irány kulcsokat használ, emellett kontextushoz kötött szó-slice bejegyzéseket, amelyek ismétlődő, egyenlő hosszúságú transzformációkat képesek összeállítani változó szövegfuttatások között, miközben megtartja a korlátos LRU memóriát és a részletes slice telemetriát
Version 2.554.0
Changed
- A vegyes, jobbról balra irányú szöveg kezelésénél a párosított zárójelek feloldása mostantól a bezárt és a megelőző erős írásrendszerekből történik, a zárójelek és a gyakori irányoperátorok csak RTL futásokban tükröződnek, a kiegészítő síkbeli surrogate párok és a kombináló jel klaszterek megmaradnak az LTR részfutások megfordítása során, a nyers glyph-ID futások pedig elkülönülnek a Unicode írásjelkezeléstől
Version 2.553.0
Changed
- A függőleges írás mostantól a TrueType glyph origókat a
vmtxfelső oldaltávolságaiból és aglyfhatáraiból származtatja, avrt2elsőbbséget élvez avert-tel szemben a teljes, hosszmegőrző GSUB futás során, és az írásjelekhez a hozzárendelt Unicode függőleges megjelenítési glyphokat használja a kinyert forrásszöveg megőrzése mellett
Version 2.552.0
Added
- A regisztrált OpenType színes betűtípusok mostantól a legközelebbi, korlátos
sbixvagy CBDT/CBLC bitmap striét választják ki, biztonságosan oldják fel asbixduplikált glyph rekordokat, felismerik a PNG, JPEG és TIFF eszközöket, a PNG-t és a JPEG-et natívan dekódolják, és minden bitmapot a strike ppem és alapvonal-origó metrikái alapján helyeznek el
Version 2.551.0
Changed
- A regisztrált OpenType SVG szín-glyphok mostantól alapvető útvonalakat, alakzatokat, örökölt solid kitöltéseket és körvonalakat, affin transzformációkat és gzip-tömörített dokumentumokat rajzolnak közvetlenül PDF vektorokként, korlátozott elemzéssel és fail-closed elutasítással a szkriptek, entitások, külső erőforrások, aktív linkek, nem támogatott opacity és túlzott bemenet esetén
Version 2.550.0
Changed
- A regisztrált OpenType betűtípusok mostantól korlátos COLR v1 paint DAG-okat elemeznek, és rétegzett solid, lineáris, radiális és sweep kitöltéseket rajzolnak glyph kivágásokon, affin paint transzformációkon, újrahasznosítható szín-glyphokon, source-over sorrendezésen és PDF blend kompozitokon keresztül, miközben a ciklikus, túlméretezett és tartományon kívüli gráfok fail-closed módon meghiúsulnak az oldalra írás előtt
Version 2.549.0
Added
- A
BeginLoadedPageProgressiveRegionRendermostantól korlátos, felhasználói térbeli ablakot jelenít meg folytatható operátor-sliceken keresztül, újrahasznosítja a gyorsítótárazott display listeket, konzervatívan kiszűri a nem kapcsolódó paint objektumokat a grafikai és szöveghaladás megőrzése mellett, a memóriafoglalásokat a ROI-hoz igazítja, és jelenti a látható valamint a kiszűrt paint számokat
Version 2.548.0
Changed
- Az overprint proofing mostantól megőrzi azokat a céllemezeket, amelyek hiányoznak a DeviceGray, Separation és DeviceN paintekből, egzakt DeviceCMYK
/OPM 1nulla-komponens védelmet alkalmaz, lecseréli az explicit nevű process lemezeket, és a spot festékeket a tint transzformációikon és alternatív színtereiken keresztül kombinálja
Version 2.547.0
Changed
- A betöltöttoldal-megjelenítés mostantól korlátos 768 pixeles csempékben dolgozza fel az isolated és knockout transparency groupokat, megőrzi az abszolút eszközkoordinátákat a beágyazott csoportok és csempén belüli lágy maszkok esetén, mindegyik Formot csak egyszer dekódolja és tokenizálja, és a
GetLastTransparencyGroupTileStatsrévén közzéteszi a csoportszámot, a csempeszámot, a csúcscsempetárolást, valamint a becsült csempézés nélküli tárolást
Version 2.546.0
Fixed
- A luminosity lágy maszkok mostantól feloldják és ellenőrzik a transparency group blending színterüket, kolorimetrikus CIE Y-t származtatnak az ICCBased és Lab tartalmakhoz, a Separation és DeviceN painteket teljes alternatív színtér-transzformációkon keresztül konvertálják, egzakt komponensszámú háttereket alkalmaznak a vektor-, árnyalat-, háló- és képútvonalakon, és a lefordított maszkokat csak egyező transzformációk és rendering intentek esetén használják újra
Version 2.545.0
Added
- A betöltöttoldal-megjelenítés mostantól Type 6, Type 10 és Type 16 küszöbhalftoneokat hajt végre kompakt periodikus geometriával, egzakt 8 bites vagy big-endian 16 bites összehasonlítással, független Type 5 RGB képernyőkkel és transfer felülírásokkal, korlátos 64 MiB-os lefordított képernyő-gyorsítótárral, valamint atomi continuous-tone fallbackkel a hibás vagy túlméretezett adatok esetén
Version 2.544.0
Added
- A betöltöttoldal-megjelenítés mostantól teljes
/TRés/TR2tömböket hajt végre független identity csatornákkal, és a gyorsítótárazott Type 0 mintavételezett függvényeket kiértékeli egy-négy bemeneti és kimeneti dimenzióban, minden szabványos csomagolt mintamélységben, explicit encode és decode leképezésekkel, lineáris interpolációval, többdimenziós köbös interpolációval és egydimenziós természetes köbös spline-okkal a 64 MiB-os függvény-gyorsítótár keretén belül
Version 2.543.0
Added
- A betöltöttoldal-megjelenítés mostantól a dekódolt és tokenizált Type 3 CharProc display listeket gyorsítótározza betűtípus, glyph, lineáris mátrix és színállapot szerint egy 256 bejegyzéses, 131,072 tokenes LRU-ban, megőrzi a transzlációt és a teljes
d0/d1végrehajtási szemantikát, és aGetLastType3GlyphCacheStatsrévén találat-, tévesztés-, kiírási, méret- és túlméret-átugrási telemetriát közöl
Version 2.542.0
Added
- A színes és szín nélküli tiling minták mostantól szülői alapértelmezésű koordinátájú pattern mátrixokkal, mindhárom ISO tiling típussal, előjeles lépésekkel, izolált cellaútvonalakkal, konzisztens fill és stroke alapszínezetekkel, beágyazott erőforrás transzformációkkal, korlátos rekurzióval és csempévégrehajtással jelennek meg, miközben a
RegisterTilingPatternés aTHPDFTilingPatternBuilderellenőrzött mátrix- és tilingtípus-választást ad
Version 2.541.0
Added
- A betöltött JPEG és JPEG 2000 képek mostantól determinisztikus újratömörítési minőséget választhatnak korlátos kódolási kísérletekből az
OptimizeLoadedImagesByVisualCostrévén, amely a mintavételezett, lumina-súlyozott perceptuális hibát kombinálja a relatív kódolt bájtköltséggel, explicit hiba- és megtakarítási határokkal, megszakítás-ellenőrzésekkel, stabil döntetlenfeloldással és részletes kiválasztási telemetriával
Version 2.540.0
Added
- A JPEG 2000 régiódekódolás mostantól párhuzamosan rekonstruálja a független, metsző kodestream-csempéket workerenkénti codec állapottal, determinisztikus sor-fő kompozícióval, megszakítás-ellenőrzésekkel, automatikus CPU- és felhasználói worker limitekkel, csúcsmemória-keret fallbackkel, valamint a
JPEG2000ParallelTileDecoding,JPEG2000TileWorkerLimitésGetLastJPEG2000ParallelDecodeStatsrévén közzétett dekódolási telemetriával
Version 2.539.0
Added
- A JPEG 2000 dekódolás mostantól támogatja az ellenőrzött, közvetlen kodestream-csempa-hozzáférést, a forrásrégió és a kettő hatványán értendő érdeklődési felbontás együttes rekonstruálását, dekódolt kimeneti kereteket, felbontási kéréseket crash-elkülönített codec workereken keresztül, valamint a látható célképpixeleken alapuló automatikus betöltöttoldal-renderer választást a
DecodeLoadedImageRegionAtResolutionrévén
Version 2.538.0
Added
- A progresszív betöltöttoldal-megjelenítés mostantól a megfelelő
DCTDecodeképeket korlátos folytatásonként egy JPEG scannel dekódolja, közzéteszi a scan- és képszámlálókat, valamint megszakítható scan callbackeket, kimeneti és scanszám-kereteket alkalmaz, és teljes képi útvonalra vált inkompatibilis paint állapot, letiltott dekódolás, codec izoláció vagy hibás bemenet esetén
Version 2.537.0
Added
- A betöltött
CCITTFaxDecodeképek mostantól dekódolják a T.4 és T.6 tömörítetlen kiterjesztési módokat, megkülönböztetik az EOFB-t a nem támogatott kiterjesztésektől, tiszteletben tartják azEndOfLine,EndOfBlockésDamagedRowsBeforeErrorbeállításokat, és a sérült Group 3 sorokat korlátos EOL reszinkronizációval, valamint a specifikáció által előírt sorpótlással állítják helyre
Version 2.536.0
Added
- A JBIG2 kép-régiókérések mostantól korlátos függőségi lezárást építenek, és csak a kért csempével metsző oldalrégiókat dekódolják, a kivágott pixeleket a deklarált operátorokkal komponálják, kihagyják a független, ablakon kívüli régiókat, megőrzik a láncolt globális szótárakat, és a
THPDFJBIG2Decoder.LoadRegionFromByteArrayrévén közlik a dekódolási statisztikákat
Version 2.535.0
Added
- A natív Pascal JBIG2 útvonal mostantól elfogadja a korlátos, hosszú formájú, hivatkozott szegmenstáblákat egy-, két- és négybájtos azonosítókkal, feloldja a többszintű globális szótárláncokat, elutasítja az érvénytelen függőségeket, és a
HPDFJBIG2SplitSymbolDictionaryGlobalssegítségével függőségeket megőrző adatfolyam-szétválasztást tesz lehetővé
Version 2.534.0
Added
- A natív Pascal JBIG2 dekódoló mostantól megőrzi és újrahasznosítja a generikus és refinement aritmetikai valószínűségkontextusokat a függő szimbólumszótárak között, beleértve a láncolt és fan-out hivatkozásokat, sablontudatos kontextusméretezéssel, deep-copy izolációval és hibás forrás elleni védelemmel
Version 2.533.0
Added
- A natív Pascal JBIG2 dekódoló mostantól kezeli az aritmetikai és standard-Huffman refinement és aggregátum szimbólumokat a szimbólumszótárakban, valamint a refinement példányokat a szövegterületeken, megosztott refinement kontextusokkal, korlátos aritmetikai részfolyamokkal, adaptív refinement sablonokkal és hibás hivatkozás elleni védelemmel
Version 2.532.0
Added
- A nagy memóriaigényű dokumentumbetöltés, oldalmegjelenítés, adatfolyam-optimalizálás és párhuzamos képoptimalizálás mostantól egy tisztességes, folyamatszintű csúcsmemória-ütemezőt oszt meg konfigurálható bájtkerettel, FIFO és túlméretes felvétellel, megszakítástudatos várakozással, foglalásmentes, versenymentes útvonallal, kumulatív nyomásstatisztikával, valamint műveletenkénti foglalási és várakozási telemetriával
Version 2.531.0
Changed
- Az ideiglenes spill tárolás mostantól önállóan tömörített 256 KiB-os blokkokat használ, a tömöríthetetlen blokkokat bővítés nélkül tartja meg, az írásokat korlátos aszinkron soron keresztül kötegeli, támogatja a véletlen felülírást és átméretezést, valamint logikai, fizikai, blokk-, köteg- és backpressure statisztikákat jelent
Version 2.530.0
Changed
- A nyers tömörített tartományok, dekódolt képek, lefordított display listek és megjelenített raster oldalak mostantól a legkevésbé nemrég használt sorrendet korlátos frekvenciasketccel kombinálják, megakadályozva, hogy az egymenetes átvizsgálások kiszorítsák a bejáratott forró bejegyzéseket
- Az
AdaptiveAdmissionrétegenként visszaállíthatja a tisztán recency alapú felvételt, miközben a frekvenciafelvételek, elutasítások és öregedési ciklusok a gyorsítótár-statisztikákon keresztül válnak láthatóvá
Version 2.529.0
Added
- A
THPDFCacheAdmissionPolicyés aSetCacheAdmissionPolicyfüggetlen bejegyzésszám-, összbájt- és bejegyzésenkénti határokat ad a nyers tömörített tartományok, dekódolt képek, lefordított display listek és megjelenített raster oldalak számára - A
GetCacheAdmissionStatisticsminden rétegre jelent foglaltságot, találatot, tévesztést, felvételt, elutasítást és kiírást, miközben a túlméretezett display listek és raster oldalak kikerülik a megtartást anélkül, hogy az aktuális művelet meghiúsulna
Version 2.528.0
Changed
- A betöltött dokumentumok mostantól dokumentum-hatókörű poolban internálnak minden ismétlődő PDF nevet, tartalom-adatfolyam operátort és 64 bájtig változatlan karakterláncot, csökkentve a duplikált karakterlánc-tárolást a feldolgozott objektumok és tartalom-műveletek között
- A
GetDocumentStringInternStatisticskategóriánkénti kéréseket, találatokat, tévesztéseket, átlépéseket, megtartott tárolást és újrahasznosított bájtokat jelent, miközben a 65,536 bejegyzéses és 4 MiB-os kemény határértékek kordában tartják a rosszindulatú dokumentumokat
Version 2.527.0
Changed
- A PDF betöltés mostantól megtartott blokk-arenát használ a rövid életű parser tokenekhez és pufferekhez, csökkentve az allokátorforgalmat, miközben a tartós dokumentumobjektumok önálló tulajdonban maradnak
- A szótárkulcsok közvetlenül, ideiglenes névobjektumok felépítése nélkül kerülnek feldolgozásra, és a
GetLastParserArenaStatisticsmegtartott tárolást, csúcshasználatot, allokáció-újrahasznosítást, tokenforgalmat és ideiglenes objektum elhagyást jelent
Version 2.526.0
Changed
- A
HPDFTransferStreammostantól memória, mapped-file, lazy-file, adaptive-cache és range-cache forrásokat ír tárolástudatos útvonalakon keresztül, köztes, teljes adatfolyamra kiterjedő puffer lefoglalása nélkül - A titkosítatlan PDF adatfolyam szerializáció, a szűrőmentes dekódolt kimenet, a nyers betöltöttkép-exportálás, a lazy-stream materializálás és az ideiglenes adatfolyam spill automatikusan közvetlen átvitelt használ, mapped-file és range-cache bájtszámlálókkal a diagnosztikához
Version 2.525.0
Changed
- A random-access parser előolvasása mostantól adaptívan növekszik 1, 2, 4 és 8 blokkra tartós előrefelé olvasás során, a konfigurált gyorsítótár-kapacitás alatt marad, és véletlen vagy hátrafelé seek után azonnal elnyomódik
- Az
AdaptiveReadAheadEnabled, aMaxReadAheadBlocksés aSequentialReadToleranceBytesházirend-vezérlést ad, miközben a range-cache statisztikák jelentik a hozzáférés-osztályozást, valamint az aktuális vagy csúcs előolvasási ablakokat
Version 2.524.0
Added
- A
THPDFCoalescingRandomAccessSourcea szomszédos parser olvasásokat konfigurálható, gyorsítótárazott tartományokká vonja össze, korlátos, legkevésbé nemrég használt bájtkeretet tartat be, és forrás-, gyorsítótár- valamint előolvasási statisztikákat közöl - A
LoadFromRandomAccessSourcemostantól automatikusan alkalmaz tartomány-összevonást és aszinkron, következő tartományra irányuló előolvasást, miközben az előtérben zajló seek-ek lemondják a nem kapcsolódó munkát, és aReadAtCancellablelehetővé teszi, hogy a távoli transzportok kooperatívan megszakítsák a folyamatban lévő kéréseket
Version 2.523.0
Changed
- A Type 3 radiális árnyalatok mostantól hibakorlátos adaptív Gouraud tesszelláción keresztül jelennek meg a rögzített, 48 oldalú, egyszínű korongok helyett
- A nagy DPI-jű és transzformált körhatárok 0.35 eszközpixeles húrtűrést használnak, a nemlineáris színfüggvények adaptívan tagolódnak, a kiterjesztetlen kezdőkör belsője pedig festetlenül marad
Version 2.522.0
Fixed
- A V=4 jelszavas betöltés mostantól független
StrFésStmFalapértelmezéseket old fel, együtt a közvetlen vagy tömb formájú, adatfolyam-szintűCryptfelülírásokkal - Az adatfolyam crypt paraméterei választhatnak
Identity,V2vagyAESV2között, és a felhasznált szűrőbejegyzések eltávolításra kerülnek, mielőtt a megmaradó adatfolyam-dekódoló pipeline elindulna
Version 2.521.0
Added
- A betöltött
DCTDecode,JPXDecodeésJBIG2Decodeképek mostantól crash-elkülönített Win32 vagy Win64 worker folyamatokban dekódolódnak korlátos megosztott memórián keresztül - A
CodecIsolationMode, a worker útvonal, a timeout és a memórialimit vezérlők támogatják a kompatibilis automatikus telepítést vagy a fail-closed kezelést a nem megbízható dokumentumok esetén, strukturált állapot-, folyamat-, kilépési kód- és időzítési telemetriával
Version 2.520.0
Added
- A
THPDFDeterministicReplayLogkorlátos, rendezett döntéseket rögzít a megszakítási ellenőrzőpontok, a random-access tartomány elérhetősége és a logikai vagy egész callback kimenetelek számára, stabil JSON exporttal és importtal - A szigorú visszajátszás ellenőrzi az eseményidentitást, az argumentumokat és a sorrendet, miközben a progresszív betöltés, annotációszűrés és csempe-callback megszakítási döntéseket függetlenül reprodukálja az aktuális külső állapottól
Version 2.519.0
Added
- A
BuildLoadedObjectDependencyGraphmostantól korlátos közvetett objektum csomópontokat és referencia-slot éleket tár fel egzakt objektumidentitásokkal, útvonalakkal, feloldási állapottal, életciklus-állapottal és Catalog elérhetőséggel - Az objektumcsomópontok hordozható, sekély memóriabecsléseket és dominátor alapú megtartott bájtokat jelentenek, így a megosztott erőforrások ahhoz a legközelebbi objektumhoz íródnak, amely kizárólagosan megtartja őket
Version 2.518.0
Added
- A korlátos kereszthivatkozás-helyreállítás mostantól strukturált eseményadatfolyamot tár fel, amely lefedi a jelöltek elfogadását és elutasítását, a kiválasztott xref szakaszokat, az újraépített offseteket, a limithibákat és a végső kimeneteleket
- Minden helyreállítási esemény hordozza az inkluzív-exkluzív forrásbájttartományt, adott esetben az indirect objektumidentitást, explicit megbízhatósági szintet és korlátos, angol nyelvű diagnosztikát, konfigurálható megtartással és az eldobott események elszámolásával
Version 2.517.0
Added
- Az egységes műveleti telemetria mostantól az aktuális szál CPU-idejét, a csúcstovábbi élő Delphi allokációkat, a mintavételezett folyamat working setet, a folyamat I/O bájt-deltákat, a gyorsítótár-tévesztéseket és a dekódolt adatfolyam tágulását jelenti a meglévő eltelt idő és komponensmemória metrikák mellett
- A dekódolási elszámolás mostantól megkülönbözteti a kódolt bemenetet, az összesített szűrőmunkát és a végső kimeneti bájtokat, a tágulás ezrelékben kerül közzétételre, ahol a
1000annyit jelent, mint1x
Version 2.516.0
Added
- A hibás PDF regressziós esetek mostantól folyamatosan újraérvényesíthetők és újraminimalizálhatók konfigurálható kísérleti és bájthatárok alatt, miközben a legkisebb, aláírással egyenértékű bemenet folyamatbiztos zárolással és atomi cserével megőrzésre kerül
- A korpusz PDF-ek stabil hibaaláírású esetazonosítókat és determinisztikus
hotpdf.corpus.case.v1sidecar fájlokat használnak, amelyek tartalmazzák a tartalom SHA-256-os ellenőrzőösszegét és a bájtszámot
Version 2.515.0
Added
- A kereszt-engine regressziós szondák mostantól lefedik a parse, render, text és save tartományokat korlátos, beépített HotPDF SHA-256 ujjlenyomatokkal, ismételt futású stabilitásellenőrzésekkel, izolált kivétel-eredményekkel, elnevezett engineekkel, bemeneti határokkal és determinisztikus, verziózott JSON jelentésekkel
Version 2.514.0
Added
- Egy verziózott, lapos C ABI mostantól 64 bites random-access callbackeken keresztül, közvetlenül a parser pufferekbe tölti be a PDF-eket, és újrapróbálható, szekvenciális írási callbackeken keresztül menti őket, anélkül, hogy Delphi-kezelt típusok átlépnék a határt
- A
HotPDFABI.dllstabilcdeclexportokat, átlátszatlan, ellenőrzött handlokat, rögzített állapotkódokat, explicit bájthosszokat, megszakítást, haladást, diagnosztikát, Win32 és Win64 build automatizálást, import könyvtárakat, valamint az elrendezés-ellenőrzötthotpdf_abi.hfejlécet szállítja
Version 2.513.0
Added
- A PDF/UA-2, PDF/A-4 és PDF/X-6 validátorok mostantól egyetlen közös, géppel olvasható finding modellt adhatnak vissza profillal, súlyossággal, stabil szabályazonosítóval, szabványos záradékkal, objektumútvonallal, objektumszámmal és nulla alapú oldalhellyel
- A részletes PDF/UA-2 javítási findingek megkülönböztetik az alkalmazott, megoldatlan, visszagörgetett és meghiúsult műveleteket javításszámokkal, miközben a
ComplianceFindingsToJSONdeterminisztikus, verziózott JSON-t bocsát ki CI és audit pipeline-ok számára
Version 2.512.0
Added
- A PDF/UA-2 tranzakciós javítás mostantól visszaállítja a hiányzó alternate szöveget meglévő szemantikus szövegből vagy címkézett oldaltartalomból, öröklésre alkalmas, érvényes dokumentumnyelvet léptet elő, kezeli a címsorszint-hiányokat, és összehangolja az Artifact struktúraszerepeket a marked-content címkékkel a produkáló és a betöltött dokumentumok esetén
- A javítási beállítások explicit alapértelmezéseket és korlátos fallback házirendeket tárnak fel, miközben a javítási jelentés megkülönbözteti a sikeres alternate szöveg-, nyelvi, címsor- és artifact módosításokat a szerzői áttekintést igénylő, megoldatlan szemantikától
Version 2.511.0
Changed
- A betöltött kép újratömörítés és az effektív DPI alapú leskálázás mostantól átszínezi a támogatott ICCBased, CalGray és CalRGB bemeneteket explicit, kalibrált RGB-re, miközben a nem támogatott kalibrált, Separation és DeviceN képek változatlanok maradnak, és jelentik a megtartási döntésüket
- Az áttetszőség-laposítás mostantól kalibrált RGB-t bocsát ki, rekurzívan észleli a spot színezőanyagokat az oldal és a beágyazott erőforrások között, és vektortartalomként őrzi meg a Separation vagy DeviceN paintet tartalmazó oldalakat strukturált állapotdiagnosztikával
- A CalRGB megjelenítés mostantól tiszteletben tartja a PDF mátrix elemsorrendjét, és a helyes XYZ–sRGB inverz transzformációt alkalmazza a vektor- és rasterszínekre
Version 2.510.0
Changed
- Az ICC színtranszformációk mostantól egy szálbiztos, 64 MiB-os, korlátos LRU gyorsítótáron keresztül hasznosulnak újra, amelyet a teljes source, proof és output profiltartalom, az effektív rendering intent és a black-point kompenzációs beállítás kulcsol, elkerülve az ismételt profilfeldolgozást és transzformációépítést a vektor-, kép-, oldal- és párhuzamos megjelenítési útvonalakon
Version 2.509.0
Changed
- A betöltöttoldali ICC megjelenítés mostantól mind a négy PDF rendering intentet és a valódi black-point kompenzációt alkalmazza a source, proof, output és sRGB transzformációkban a vektor- és képszínekre egyaránt, miközben a platformi színszolgáltatás kompatibilitási fallbackként megmarad
Version 2.508.0
Changed
- Az LZW kódoló (
TPDFLZWCompressor) kapott egyCompress(Input, Parms)túlterhelést, amely a tömörítés előtt alkalmazza az előre irányú PNG/TIFF prediktort, ezzel szimmetrikussá válik a dekódolóDecompress(Input, Parms)útvonalával, így az LZW+Predictor adatfolyamok mindkét irányban előállíthatók - A tartalom-adatfolyam értelmező mostantól követi a grafikai
cmoperátort, és minden kibocsátott glyphhoz elmenti az aktív CTM-et (THPDFGlyphRecord.CTMA..CTMF), így a hívók a valódi felhasználói térbeli origót számíthatjákCTM * Tmútján, amikor transzformációs mátrixok előzik meg a szöveget. A glyph X/Y szövegtérben marad (az identity CTM a gyakori eset), így a meglévő viselkedés változatlan - A
ReplaceLoadedPageText/ReplaceLoadedDocumentTextmostantól kezeli azokat a találatokat, amelyek két vagy több egymást követő egyszerű karakterlánc-operandusra terjednek ki (pl.(Hel) Tj (lo) Tj): a kezdő operandus kapja a teljes csereszöveget (a saját betűtípusán kódolva, a nem egyező előtag megőrzésével), a találati tartomány minden további operandusa pedig üresre íródik. Korábban az ilyen operandusokon átnyúló találatok dokumentált korlátozásként csendben kihagyásra kerültek; az egy operandusos csere viselkedése változatlan
Version 2.507.0
Added
- Szelektív adatfolyam-titkosítás érkezett: az új
THPDFStreamObject.SkipEncryptionzászlót, amelyet az író titkosítási átjárója tiszteletben tart, egy adott adatfolyam plaintextben tartja akkor is, amikor a dokumentum-szintű titkosítás aktív (ISO 32000-1 7.6.4 szelektív crypt filter /Identity). Ez az alapja a vegyes, titkosított/plaintext adatfolyamoknak egyetlen dokumentumban
Version 2.506.0
Added
- Örökölt RC2 PFX dekódolás érkezett: a
DecryptPKCS12EncryptedBytesmostantól kezeli apbeWithSHA1And40BitRC2-CBC(OID 1.2.840.113549.1.12.1.6) és apbeWithSHA1And128BitRC2-CBC(1.2.840.113549.1.12.1.5) eseteket, a 3DES CryptoAPI útvonalat klónozva úgy, hogy aKP_EFFECTIVE_KEYLENparaméter 40 / 128 értéket kap, így az importált RC2 kulcsanyag a helyes effektív erősségen olvasódik be, nem teljes hosszon - Beégetett kitakarítás (burn-in redaction) érkezett: az
ApplyLoadedRedactionsvégigmegy minden/Subtype /Redactannotáción, üresre írja azokat a szöveget megjelenítő karakterlánc-operandusokat, amelyek glyphjai az annotáció/Rectterületén belül esnek (a bájtok szóközök lesznek, így a szöveg tényleg eltűnik a kinyerésből, nem csak takarás alá kerül), minden régióra átlátszatlan téglalapot fest, és visszaadja a kivonolt operandusok számát. Támogatja az oldal-tartomány argumentumot (''= minden oldal). Emellett hozzáadja azAddLoadedRedactAnnotationhívást, amellyel/Redactannotációk hozhatók létre betöltött oldalon. A TJ-tömb elemek kivonolása és a vektor/kép kivágás e körön kívül esik (az egyetlen karakterláncos Tj /'/"operandusok kivonolódnak; az érintett TJ karakterláncok kitöltött téglalapos fallbackkel kerülnek kihagyásra)
Version 2.505.0
Changed
- A szövegértelmező mostantól minden glyph vízszintes advance értékét a betűtípus valódi
/Widthstáblájából oldja fel (PDF 1.7 9.6.3) az újIHPDFFontResolver.Advancemódszerrel, a korábbi lapos0.5 * fontSizeközelítés helyett. AHPDFBuildFontDecoderbeolvassa az egyszerű (nem CID) betűtípusok/FirstChar,/LastCharés/Widthsszámtömbjét; ha nincs elérhető szélesség, a resolver 0-t ad vissza, és az értelmező megtartja a fél em fallbacket, így a szélesség nélküli betűtípusok viselkedése változatlan. Ez javítja a glyph X pozicionálás pontosságát a szövegkinyerés, az oszlopérzékelés és az olvasási sorrend elemzése számára
Version 2.504.0
Added
- Érkezett a
SetLoadedAcroFormCalculationOrder, amely újjáépíti az AcroForm/COszámítási sorrend tömböt a hívó által megadott mezőnév-sorrendben (a fel nem oldható mezők kihagyásra kerülnek), így a számítási lánc explicit módon felépíthető, nem csak hozzáfűzhető - Érkezett a
RegisterNChannelColorSpace, egy DeviceN-változatú színtér-segédfüggvény, amely/NChanneljelölést bocsát ki (PDF/X-6 / PDF 2.0) azokhoz a színterekhez, amelyek colorantjai között process festékek is szerepelhetnek - Érkezett a
SetStructureElementClass, amely a struktúraelem/Cosztálynév-tömböt írja (PDF 1.7 14.9.2.2) a megosztott attribútumosztályokra hivatkozva - Érkezett az
AddLoadedPagePieceInfo, amely oldal-darab szótárat ír (PDF 1.7 14.5) a/PieceInfo/<Application>alatt/LastModifieddátumbélyeggel és a hívó által megadott kulcs/érték párokkal
Version 2.503.0
Added
- A kis- és nagybetűket nem megkülönböztető szövegkeresés mostantól Unicode szerint hajtja össze a karaktereket, nem csak ASCII szerint: a közös glyph matcher (
HPDFMatchGlyphs) az A-Z kisbetűsítésétTCharacter.ToLower-re cseréli (Unicode Simple_Lowercase_Mapping), így az ékezetes latin (À-ý), görög (Α-Ω) és cirill (А-Я) nagybetűk egyeznek kisbetűs alakjukkal aSearchLoadedPageText/SearchLoadedDocumentTextsorán. A XE2 előtti buildek megtartják az ASCII fallbacket - Inline-kép callback érkezett a tartalom-eszköz absztrakcióba: az
IHPDFContentDevice.ProcessInlineImagemindenBI/ID/EIblokkra meghívódik, amikor az eszköz deklarálja acdcNeedImagesjelzést, és hordozza a normalizált szélesség / magasság / színtér / képmaszk összegzést, amelyet a lapos tokenizáló már rögzített a BI tokenen. A szövegkinyerő, útvonalfelsoroló és audit eszközök mostantól számolhatnak az inline képekkel, ahelyett hogy csendben kihagynák őket; az oldalrenderer a callbacket no-opra irányítja, mert az inline képeket a saját gyártási ciklusán keresztül rajzolja
Fixed
- Javítva, hogy a
SaveLoadedDocumentcsendben eldobta a betöltött dokumentumhoz adott PDF/A OutputIntentet: azAddPDFAOutputIntentfeltöltötte a memóriabeli intent listát, de a betöltött dokumentum mentési útvonala soha nem csatolta a katalógushoz, így a kimenet elbukott a veraPDF-en a hiányzó/OutputIntentsmiatt. Az újEnsureLoadedPDFAOutputIntentslépés mostantól a betöltött katalógus/OutputIntentstömbjére akasztja aFOutputIntentslistát, és mentés előtt dirty-nek jelöli, kikényszerítve az újraszerializálást az intenttel együtt
Version 2.502.1
Fixed
- Javítva, hogy a laposított AcroForm mezőértékek vastag körvonalasként jelentek meg normál kitöltött szöveg helyett: az
EnsureLoadedFieldAppearanceStreammostantól explicit0 Tr-t (fill) bocsát ki közvetlenül aBTután minden generált widget appearance streamben, így a szövegkirajzási mód determinisztikus, függetlenül a környező oldaltartalom állapotától. Korábban a grafikai állapoton szivárgó1 Tr(stroke) öröklődött aDoútján felhasznált Form XObjectbe, és 2 pontos piros körvonallal rajzolta ki a mezőértéket, ami félkövérnek és elszíneződöttnek tűnt - Eltávolításra került egy örökölt alapállapot-visszaállító blokk a
THPDFPage.CloseCanvasvégéről, amely1 0 0 RG/rg+1 Tr+2 wértékeket írt közvetlenül az oldaltartalom-adatfolyamba aGStateRestoreután (vagyis bármely q/Q páron kívül), anélkül, hogy útvonal-operátor fogyasztotta volna őket. Ez a maradék grafikai állapot mindarra átszivárgott, amit utána rajzoltak a szerkesztéssel készült oldalakon, és a fenti vastag körvonalas szöveg tünetének upstream forrása volt; a vászon lezárása mostantól tisztán hagyja a tartalom-adatfolyamot, mert a metafájl-visszajátszást körülvevő q/Q már izolálja a visszajátszási állapotot
Version 2.502.0
Added
- Érkezett egy LZW kódoló (
TPDFLZWCompressor), amely szimmetrikus a meglévőTPDFLZWDecompressor-ral, így az adatfolyamok LZW-vel írhatók, és a PDF szűrőkészlet mostantól mindkét irányban teljes; a kódoló tükörben követi a dekódoló Clear / EOI elhelyezését, a változó szélességű kódnövekedést és az EarlyChange konvenciót, és átmegy a dekódolón oda-vissza, a szótár-teljes 12 bites telítést is beleértve - Teljes CSS / X11 névvel jelölt színtámogatás érkezett a HTML szövegszín-elemzőbe, a felismert palettát az örökölt 16 VGA színről a teljes CSS Color Module Level 4 készletre bővítve (aliceblue-tól yellowgreen-ig, a gray/grey, aqua/cyan és fuchsia/magenta álnevekkel együtt) bináris kereséses táblán keresztül
- Optional Content Membership Dictionary létrehozás érkezett az
AddLoadedOptionalContentMembershiprévén, amely/Type /OCMDobjektumot épít, amelynek/OCGslistája és/Pházirendje (AnyOn / AllOn / AnyOff / AllOff) a meglévőEvaluateLoadedOCVisibilitykiértékelőt táplálja, így a komplex rétegláthatósági kifejezések mostantól felépíthetők, nem csak fogyaszthatók - Rich-text FreeText annotáció belépési pont érkezett, az
AddLoadedFreeTextAnnotationRichText, amely a/RCrich-content XML töredéket és az opcionális/DSalapértelmezett stílust csatolja egy FreeText annotációhoz (PDF 1.5 12.5.6.16), kiegészítve a mezőszintű/RVútvonalat - Katalógus
/Requirementsíró érkezett, azAddLoadedDocumentRequirement(ISO 32000-1 7.7.4), amely/S-t és a hívó által megadott kulcs/érték párokat hordozó követelményszótárakat fűz a katalógus/Requirementstömbjéhez - Type 16 halftone (küszöbmaszk) felismerés érkezett az oldalrendererbe: a maszk
/Widthértéke ekvivalens screening frekvenciát hajt, így az oldal megtartja a halftone ritmust az operátor csendes eldobása helyett, a közelítést jelző diagnosztikával
Changed
- Az ASN.1 BER/DER dekódoló kibővült, hogy elfogadja a magas tagszámú hosszú formát (tag >= 31), a konstruált csomópontok BER határozatlan hosszúságú formáját (a 00 00 End-of-Contents jel zárja, rekurzióbiztos beolvasással), valamint az X.690 8 bájtos plafonig terjedő hosszú formájú hosszakat, így az ezeket a formákat használó külső CMS csomagok feldolgozásra kerülnek kivétel dobása helyett; az új
IsIndefiniteésExtendedTagNumberrekordmezők rögzítik, melyik formát használta a feldolgozott csomópont - Élesebb renderer fallback diagnosztika: a Type 1 függvényalapú árnyalás mostantól konkrét üzenetet jelent az általános "unsupported shading type" helyett, és a nem támogatott halftone típusok megnevezik a tényleges típusszámot a diagnosztikában
Version 2.501.0
Added
- PDF 2.0 struktúracélpontok és marked-content adatokból generált oldaltartalom-linkek érkeztek, amelyek között van a konstans idejű
FindStructureElementForMCIDvisszirányú keresés, amely a (page, MCID) párt a dokumentum ParentTree-n keresztül visszavezeti a tulajdonló StructElemhez; a lokálisAddStructureDestinationLink, amely GoTo akciót bocsát ki a kötelező oldal-koordináta/Dfallbackkel és a PDF 2.0/SDtömbbel, amely indirect hivatkozással nevezi meg a cél StructElemet; valamint a távoliAddGoToRStructureDestinationLink, amelynek/SDelső eleme a külső fájlban lévő célelem bájt-karakterlánc/ID-ja, így a PDF 2.0 nézők a struktúratartalomra ugranak, az örökölt nézők pedig a megnevezett oldalra esnek vissza
Version 2.500.0
Added
- Korlátos PDF/UA-2 validáció és tranzakciós javítás érkezett a teljes PDF 2.0 listaszámozásra és folytatási láncokra, a szabályos táblázatrácsokra és sori csoportokra, a táblázaton belüli fejléc-társításokra és ciklusokra, az egzakt Ruby és Warichu gyermeksorrendekre, az elemenkénti kiejtési javaslatokra, valamint a rendezett, beágyazott PLS kiejtési lexikonokra vonatkozóan, új szerkesztői segédfüggvényekkel, stabil diagnosztikával, szemantikus javításszámlálókkal és rollbackkel a kétértelmű struktúrahibák esetén
Version 2.499.0
Added
- PDF/X-6, PDF/X-6p és PDF/X-6n generálás és korlátos validáció érkezett PDF 2.0 dokumentumokhoz, beleértve a beágyazott, külső, katalógus- és oldalszintű output intenteket; a külső profil ellenőrzőösszegeit, ICC verzióit, színtér-aláírásait és N-colorant tábláit; az örökölt oldalbox validációt; a csereakció, annotáció-megjelenés, betűtípus, űrlap, grafikai állapot és erőforrás megszorításokat; a stabil, záradéktudatos diagnosztikát; valamint a fail-closed generálási validációt
Version 2.498.0
Added
- Korlátos, nem módosító PDF/UA-2 validáció és tranzakciós névtér- valamint struktúraattribútum-javítás érkezett produkáló és betöltött dokumentumokhoz, beleértve a kanonikus névtér-regisztrációt, a duplikált és érvénytelen névterek takarítását, a role-map ütközések észlelését, a standard struktúranévtér javítását, az explicit egyéni attribútum-névtereket, a revízió normalizálását, a strukturált jelentéseket, a független objektum- és módosítási limiteket, valamint az automatikus rollbacket arra az esetre, amikor a validáció továbbra is megbukik
Version 2.497.0
Added
- Korlátos PDF/A-4, PDF/A-4e és PDF/A-4f generálás és betöltött dokumentum validáció érkezett profilfüggő annotáció, akció, beágyazott fájl, metaadat, output intent, betűtípus, űrlap és optional content szabályokkal; strukturált diagnosztikával stabil kódokkal, záradékokkal, valamint objektum- vagy oldalhelyekkel; fail-closed
EndDocvalidációval; a trailerInfoelhagyásával; kötelező PDF/A-4fEmbeddedFilesnévfával; valamint teljes csatolmánygráfokkal
Version 2.496.0
Added
- A korlátos AcroForm JavaScript kiértékelő kibővült típusos boolean, number, string, null, undefined és array értékekkel; short-circuit logikai, összehasonlító, egyenlőségi, unáris és feltételes kifejezésekkel; determinisztikus dátumfüggvényekkel; string és array metódusokkal; megőrzött numerikus mezőkompatibilitással; valamint explicit szkript, utasítás, mélység, művelet, argumentum, kollekció, string és értékmemória limitekkel
Version 2.495.0
Added
- Natív CFF2 változó betűtípus instancing és glyph subsetting érkezett fvar és avar 1.0/2.0 koordinátafeloldással, VariationStore blend kiértékeléssel, rekurzív szubrutin-laposítással, megőrzött multi-FD szótárakkal és hint adatokkal, HVAR/VVAR/MVAR metrikák beégetésével, korlátos fail-closed elemzéssel és automatikus RegisterUnicodeTTF integrációval
Version 2.494.0
Added
- Beágyazott copy-on-write objektumgráf tranzakciók érkeztek első íráskor készített indirect-gyökér pillanatképekkel, helybeni rollbackkel, hozzáfűzött objektumok és objektumszámok helyreállításával, korlátos ideiglenes fájl spillel a nagy adatfolyamokhoz, automatikus konténermutáció-követéssel, explicit nyers írás előkészítéssel és élő memóriastatisztikákkal
Version 2.493.0
Added
- Korlátos, tokeneket megőrző tartalom-adatfolyam AST érkezett minden-bájtos lexémákkal, összelinkelt művelet- és konténercsomópontokkal, nem átfedő szerkesztési overlayekkel, bájtpontos no-op oda-vissza átalakításokkal, adatfolyamos szerializációval és veszteségmentes, célzott szövegcserével
Version 2.492.0
Added
- Korlátos, ablakos memórialeképezés érkezett nagy helyi PDF betöltésekhez megosztott lazy-stream hozzáféréssel, konfigurálható küszöbbel és LRU ablakgeometriával, automatikus adatfolyam fallbackkel, ablakok közötti olvasásokkal, atomi csere alapú megosztással és leképezési diagnosztikával
Version 2.491.0
Security
- A jelszavak, a származtatott fájl- és objektumkulcsok, a gyorsítótárazott AES kulcsütemezések, a PKCS#12 privát kulcs plaintext, a hitelesített dekódolás scratch területe és a közvetlen fájlstreamelés plaintext pufferei mostantól explicit módon felülíródnak minden sikeres és kivétel útvonalon
Version 2.490.0
Changed
- A késleltetett Standard-biztonsági dekódolás mostantól a betöltés során az authoritatív xref offseten keresztül ragadja meg a korlátos nyers titkosítási objektumot és a trailer ID-t, megőrizve az egzakt bináris kulcsbejegyzéseket, és megszüntetve a későbbi, teljes forrásra irányuló olvasásokat az érvényes dokumentumoknál
Version 2.489.0
Changed
- A jelszavas betöltés mostantól korlátos trailer, xref, dokumentum-ID és authoritatív titkosítási szótár tartományokból nyeri vissza az RC4 és AES fájlkulcsokat, elkerülve a teljes forrásra irányuló kéréseket az érvényes random-access dokumentumoknál, miközben megtartja a kompatibilitási fallbacket
Version 2.488.0
Added
- Betöltöttoldal-megjelenítés érkezett a Shading Types 4–7 típusokhoz bájtigazított mesh dekódolással, folytatási él újrahasznosítással, függvénytudatos Gouraud színekkel, korlátos adaptív Coons és tenzorszorzat tesszellációval, kötegelt háromszög-kitöltésekkel, kivágással, háttérrel és hibás bemenetre vonatkozó keretekkel
Version 2.487.0
Changed
- A PFX, külső aláíró és aláírás-szolgáltató munkafolyamatok mostantól korlátos 256 KB-os pufferekkel másolnak, adatfolyamosan hashelik a javított bájttartományokat, és seek-patchelik a rögzített szélességű
/ByteRangeés/Contentsmezőket, beleértve az azonos adatfolyamon belüli aláírást is, teljes második PDF megtartása nélkül
Version 2.486.0
Added
- Natív standard-Huffman JBIG2 dekódolás érkezett
SDHUFFszimbólumszótárakhoz ésSBHUFFszövegterületekhez, beleértve mind a 15 Annex B táblát, a nyers vagy MMR kollektív bitmapokat, a régiónkénti szimbólum-ID táblákat és a korlátos, hibás bemenet elleni védelmeket
Version 2.485.0
Added
- RC4-128 és AES-128 titkosított objektum-adatfolyam írás és jelszavas újratöltés érkezett korlátos, pre-parse kulcsvisszanyeréssel, helyes objektumszám-kulcsszármaztatással, lazy tömörített tag kezeléssel, valamint a sikeres kulcsvisszanyerés utáni teljes fájl újraolvasás elhagyásával
Version 2.484.0
Added
- Tranzakciós űrlapszerkesztési sessionök és korlátozott eseményakciók érkeztek, teljes mező, annotáció és állapot FDF interchange, determinisztikus XFA specializált widget fallbackek és fejlett lapozás, adatfolyamos beágyazott fájl validáció, fejlett Portfolio nézetek, rendezés, mappák, navigáció és sémaszerkesztés, ötdimenziós JSON műveleti keretek, callback alapú integrációs ABI, valamint hibamegőrző korpuszminimalizálás differenciális regressziós szondákkal
Version 2.483.0
Added
- Stabil, teljes objektumgráf JSON export és validált patchelés érkezett, nem materializáló objektum-adatfolyam vizsgálattal, korlátos linearizációs validációval, kanonikus, tartalomból származtatott dokumentumazonosítókkal a reprodukálható kimenethez, explicit elérhetetlen objektum házirendekkel, korlátos, egyeztetett többforrásos oldalösszeállítással, egymástól függetlenül ciklikus overlay és underlay kompozícióval, geometriailag teljes oldalrotáció-laposítással, valamint oldal-bélyegkép olvasási, írási és érvénytelenítési támogatással
Version 2.482.0
Added
- Tartalomtudatos inline-kép externalizáció érkezett, örökölt és megjelenésbiztos erőforrás-takarítás, tartalom-adatfolyam összevonás, kanonikus Form XObject és beágyazott betűtípus deduplikáció, házirendvezérelt JPEG és JPEG 2000 újratömörítés, egzakt egyezésű JBIG2 globális megosztás, színkezeléses, effektív DPI alapú leskálázás lágy maszk koordinációval, valamint adaptív, lokalitás-tudatos objektum-adatfolyam csomagolás
Version 2.481.0
Added
- Újrahasznosítható oldal display listek és térbeli indexek érkeztek, korlátos csempés és sávos megjelenítés, determinisztikus párhuzamos oldalmegjelenítés, áttetszőség-laposítás, festék- és trapping diagnosztika, process és spot separation lemezek, végrehajtható halftone és transfer függvények, valamint intenttudatos source, proof és output ICC pipeline-ok black-point kompenzációval
Version 2.480.0
Added
- Szabványtudatos szöveg- és dokumentumelrendezés érkezett Unicode sortöréssel és elválasztással, optimális bekezdésösszeállítással, kiegyensúlyozott oszlopokkal, lábjegyzet- és végjegyzetlapozással, táblázatméretezéssel és lapozással, float kizárással, strukturált beágyazott listákkal, keep csoportokkal és korlátos shaped-run gyorsítótárazással
Version 2.479.0
Added
- Névteretudatos PDF/UA-2 struktúraépítés érkezett korlátos, egymenetes validációval a hierarchia, attribútumok, annotáció-tulajdonlás, társított fájlok, címsorok, listák, táblázatok, képletek és MathML számára
Version 2.478.0
Added
- Szabványalapú offline trust validáció érkezett delta és indirect CRL-ekkel, szigorú OCSP házirenddel, X.509 név- és tanúsítványházirend-megszorításokkal, kiértékelésidejű algoritmusházirenddel, determinisztikus több aláírásos és beágyazott ellenjegyzés ellenőrzéssel, valamint strukturált JSON validációs jelentésekkel
Version 2.477.0
Added
- AES-256 nyilvános kulcsú titkosítás érkezett explicit RSA-OAEP hash házirendekkel, ECDH és X25519 vagy X448 kulcsmegegyezéssel, CMS ellenjegyzésekkel, valamint inkrementális PAdES-LTA időbélyeg-megújítással, amely minden korábbi revíziót megőriz
Version 2.476.0
Added
- Korlátos memóriájú AESV4 közvetlen fájl titkosítás és hitelesített dekódolás érkezett, plusz ISO/TS 32004:2024 standalone PDF MAC gyártás, ellenőrzés, diagnosztika, atomi kimenet és preflight validáció
Version 2.475.0
Added
- ISO/TS 32003:2023 AESV4 jelszavas titkosítás és hitelesített betöltés érkezett AES-256-GCM-mel, egyedi 12 bájtos IV-kkel, 16 bájtos hitelesítési címkékkel, PDF 2.0 developer extensionökkel, beágyazott karakterlánc-lefedettséggel, objektum-adatfolyam támogatással és manipuláció-elutasítással
Version 2.474.1
Fixed
- A CMS aláírás többé nem bukik meg fordításkor, amikor egy anonymous method aláíró callback rögzíti a sign options rekordot Delphi Win32 alatt
- A rendszer-tanúsítványos aláírás többé nem bukik meg fordításkor, amikor a digest callback rögzíti a sign options rekordot Delphi Win32 alatt
- Az E-Invoice demo mostantól lefordul, miután a validation-issue felsorolás további PDF/A-3 csatolmány és XMP ellenőrzésekkel bővült
Version 2.474.0
Added
- JSON feladatkonfiguráció feldolgozó, amely merge, split, optimise, encrypt és validate műveleteket támogat strukturált, műveletenkénti eredményekkel
- Opaque-handle C ABI kiemelt értékű dokumentumműveletekhez, beleértve a create, load, oldalszám, save és feladatvégrehajtást más nyelvekbe ágyazáshoz
- Dokumentum-összehasonlítás oldalszám, oldalszöveg, objektumszám és megjelenített-kép módokkal, strukturált JSON különbségjelentést adva vissza
Version 2.473.0
Added
- Az újrahasznosítható validációs házirendek mostantól lefedik a WTPDF újrahasznosítást, az akadálymentességet és a validált deklaráció bevitelt, közlik a deklarációs claim metaadatokat és a forrástudatos hibákat, rendezett kötegeket futtatnak korlátos worker és sor limitekkel, valamint független inspect, add-missing és synchronize módokat adnak az XMP metaadat javításhoz
Version 2.472.0
Added
- A CMS ellenőrzés mostantól támogatja az Ed25519-et és az Ed448-at egy dinamikusan kiválasztott platformszolgáltatón keresztül, valamint az ML-DSA-44, ML-DSA-65 és ML-DSA-87 algoritmusokat explicit PDF 2.0 developer extension mögött, miközben egy közös, korlátos szolgáltatói szerződés lehetővé teszi a callback, távoli és PKCS#11 RSA aláírást újrapróbálással, megszakítással, kulcsazonosítókkal és algoritmusfüggő paraméterekkel
Version 2.471.0
Added
- A betöltöttoldal-megjelenítés mostantól közös eszközabsztrakciót céloz a saját bitmapok, a nyomtatóhoz hasonló külső eszközkontextusok és az enhanced metafájlok számára, miközben az opcionális CMYK overprint proofing értelmezi a
/OP,/opés/OPM 1jelzéseket, hogy a kombinált process festékeket előnézetbe hozza a meglévő transparency-group knockout megjelenítés mellett
Version 2.470.0
Added
- A változó OpenType betűtípusok mostantól közzéteszik a tengely- és named-instance metaadatokat validált, tengelyenkénti kiválasztással és static-instance szolgáltató integrációval, miközben a COLR és CPAL rétegek, az SVG glyph dokumentumok és a CBDT bitmap striék natív vagy hívó által szolgáltatott raszterezési útvonalakon vizsgálhatók és jeleníthetők meg
Version 2.469.0
Added
- A TrueType és OpenType betűtípus subsetting mostantól újrahasznosíthatja a validált, tartalomcímezett eredményeket egy perzisztens lemezes gyorsítótárból atomi írásokkal, sérülés utáni helyreállítással, hozzáférés alapú bájtkeret-kiírással, kompakt CID leképezés megőrzésével, valamint megfigyelhető találat, tévesztés, írás, elutasítás és kiírás statisztikákkal
Version 2.468.0
Added
- Az újrahasznosítható elrendezési elemek mostantól mellékhatásmentes mérést adnak, saját tulajdonú, elhelyezett és túlcsordulási töredékeket a bekezdés, sor, konténer és egyéni lapozáshoz, valamint deklaratív háttér-, fejléc-, lábléc- és előtérrétegeket, amelyek stabil oldal-összeállítási sorrendben alkalmazódnak
Version 2.467.0
Added
- A linearizált random-access források mostantól korlátos elsőoldali és fő-xref elérhetőséget jelentenek, a betöltött adatfolyamok determinisztikus, négystratégiás, magas arányú Flate újratömörítést használhatnak, a független képadatfolyamok pedig párhuzamosan optimalizálhatók hívó által vezérelt workerekkel és forrássorrendű commitokkal
Version 2.466.0
Added
- A betöltött dokumentumok mostantól közzéteszik a clean, dirty, released és must-write objektumállapotokat, a mentés utáni biztonságos objektum-adatfolyam gyorsítótár-felszabadítást, az xref free-list és generáció validációt korlátos árnyékdefiníciós részletekkel, a determinisztikus szótárkimenetet, valamint a tartalommegőrző, QDF stílusú diagnosztikai mentést
Version 2.465.0
Added
- Az ASCII85 és ASCIIHex szűrők mostantól korlátos adatfolyam-dekódolókat tesznek elérhetővé szigorú zárójelölőkkel, páratlan nibble diagnosztikával és megőrzött záró bemenettel; a betöltött dokumentumok zero-copy, csak olvasható forrásszeleteket nyithatnak, és preflight valamint adatfolyam-optimalizálás révén szűrőnkénti pipeline statisztikákat jelenthetnek
Version 2.464.0
Added
- A betöltött űrlapok biztonságosan kiértékelhetnek korlátos számítási és validációs szkripteket aktív JavaScript engine nélkül; a RichMedia annotációk közzéteszik a named-asset metaadatokat, a bájt-kinyerést és a célzott tisztítást; az XFA laposítás támogatja az indexed, wildcard, class és leszármazott SOM kötéseket, valamint korlátos numerikus FormCalc függvényeket; az XFDF annotáció oda-vissza forgalom pedig minden támogatott annotációs altípust lefed egyetlen szimmetrikus leképezéssel
Version 2.463.0
Added
- Az RSA-PSS CMS aláírás mostantól támogatja a konfigurálható saltot és a belső, külső vagy Windows CNG aláírókat; a PDF/X kimenet validálja a produkciós feltételeket, az ICC komponenseket és az overprint vezérléseket; a betöltött, címkézett oldalak geometriai olvasási sorrend diagnosztikát adnak; a PDF Portfolio-k pedig összeállíthatják és vizsgálhatják a collection sémákat és a fájlonkénti metaadatokat
Version 2.462.0
Added
- A betöltött AcroFormok mostantól kiértékelik a
/COszámítási sorrendet, újragenerálják a multiline, quadded, automatikusan méretezett és comb megjelenéseket, feloldják a normal, rollover és down annotáció-megjelenési állapotokat, és a kiválasztott mezőket kizárólag a tulajdonló oldalukra laposítják; az aláírás-tudatos laposítás elutasítja a DocMDP vagy FieldMDP házirendek megsértését
Version 2.461.0
Added
- A betöltöttoldal-megjelenítés mostantól alkalmazza az isolated és knockout transparency groupokat, az alpha és luminosity lágy maszkokat háttérszínekkel és transfer függvényekkel, a teljes Type 3 CharProc-okat aktuális erőforrás-hatókörükben, a Form mátrixokat teljes grafikai állapot-visszaállítással, valamint a kivágott képek látható régió dekódolását, benne a natív JPEG 2000 régióbővítést; a
DecodeLoadedImageRegionegzakt, téglalap alakú raster dekódolást ad a hívók kezébe
Version 2.460.0
Added
- A betöltöttoldal-megjelenítés mostantól külön gyorsítótárazza az optional-content és az ICC színintent állapotokat, ignore, korlátos jelentés és szigorú fallback házirendeket kínál a kihagyott operátorokra vagy objektumokra, és egységes telemetriát közöl az eltelt idő, csúcsmemória, dekódolt bájt, gyorsítótár-találat, gyorsítótár-tévesztés, objektumszám, siker és megszakítás mutatóiról a betöltés, megjelenítés, progresszív slicek és adatfolyam-optimalizálás esetén
Version 2.459.0
Added
- A
BeginLoadedPageProgressiveRenderfolytatható oldalmegjelenítést ad hozzá eltelt idő- és tartalomoperátor-keretekkel, részleges bitmap hozzáféréssel, progress callbackekkel, valamint explicit szüneteltetett, befejezett és megszakított állapotokkal; a hívó tulajdonában lévőTHPDFCancellationTokenpéldányok mostantól kooperatívan megszakítják a dokumentum betöltését, a szinkron és progresszív megjelenítést, az adatfolyam-optimalizálást, a preflight validációt, a PFX aláírást és a Windows tanúsítványtárolós aláírást
Version 2.458.0
Added
- Az
ImmediateFlushLayouta befejezett oldal-adatfolyamokat fájlalapú tárolóba helyezi át a korlátozott jelentéskészítés érdekében; a bekezdés-elrendezés most támogatja a keep-with-next, az árva- és az özvegysor-korlátozásokat, az első-erős bidi irányt explicit felülírásokkal, a korlátozott koordináta-diagnosztikát, az öröklött oldal-méreteket, a szemantikus/Psegédfüggvényeket, valamint a típusos lapozási artefaktumokat fejlécekhez, láblécekhez, vízjelekhez és oldalszámokhoz
Version 2.457.0
Added
- A
SetFontFallbackChainés aTextOutWithFallbackrendezett, szkript-tudatos betűtípus-kiválasztást ad hozzá Unicode-skalár lefedettségi ellenőrzésekkel és perzisztens, fel nem oldott betűjel-diagnosztikával; a függőleges szöveg most teljesIdentity-Vfutásokat bocsát ki/DW2és/W2metrikákkal, amelyeket az OpenTypevhea,vmtxésVORGtáblákból származtat, amikor elérhetők
Version 2.456.0
Added
- Az
HPDFEncodePredictorszigorú TIFF valamint fix vagy adaptív PNG-prediktor kódolást ad hozzá csomagolt, 8 bites és 16 bites raszter-sorokhoz; azExtractLoadedImageToStreamelkerüli a teljes méretű bájttömböket a natív vagy általánosan dekódolt képadatok esetén; azOptimizeLoadedStreamsszelektíven újratömöríti a támogatott szűrőcsaládokat memóriából-lemezre történő kiömlési puffereken keresztül, és csak azokat az adatfolyamokat cseréli ki, amelyek elérik a pozitív megtakarítási küszöböt
Version 2.455.0
Added
- A
DecodeLoadedStreamToStreammost a betöltött PDF-szűrőket egy korlátozott csővezetékbe állítja össze, amelynek utolsó fázisa közvetlenül egy hívó-adatfolyamba ír; aDocumentDecodeBudgetBytesegy 1 GiB alapértelmezett felső határt ad hozzá a független láncokon át, miközben a szűrőszám-, beágyazási mélység-, ciklikus hivatkozás- és rekurzív adatfolyam-védelmek strukturált csővezeték-diagnosztikát tesznek közzé
Version 2.454.0
Added
- A nagy betöltött adatfolyamok most a forrásfájl-tartományokon maradnak a módosításig, és a túlméretezett változásokat a
LoadedStreamMemoryThreshold-en keresztül saját ideiglenes fájlokba öntik ki; a tömörített objektum-adatfolyam-tagok indexeltek és első használatkor objektumszám szerint anyagiasítódnak; aLoadFromRandomAccessSourceHTTP-tartomány és egyéni tároló integrációt ad hozzá, adatfolyam- és objektum-gyorsítótár-diagnosztikával
Version 2.453.0
Changed
- A növekményes mentések most minden revíziónál megőrzik az állandó trailer-azonosítót, csak a módosítási azonosítót forgatják, nem bocsátanak ki hozzáfűzött revíziót, ha a betöltött objektumgráf változatlan, és a hibrid-hivatkozás egyesítési döntéseit a
GetLoadedXRefMergeInfo-n keresztül teszik közzé explicit xref-adatfolyam-, tábla-átfedés- és legújabb revízió-előbbi számlálókkal
Version 2.452.0
Added
- Hozzáadva natív PDF 2.0 kimenet plusz PDF/A-4, PDF/A-4e, PDF/A-4f és PDF/UA-2 szerkesztés, revízió-tudatos XMP-azonosítással, PDF 2.0 szerkezeti szerepekkel, névtér-regisztrációval a
RegisterStructureNamespaceésAddStructureElementNSsegítségével, szigorú PDF/UA-2 szerkezet-ellenőrzéssel, és profil-semleges társított fájlokkal azAddPDFAssociatedFile-on keresztül
Version 2.451.0
Added
- A
DetectFacturXInvoicemost közzéteszi a dekódolt elsődleges melléklet MIME-típusát és a kötött XMP-névtér URI-ját, míg aValidateFacturXInvoiceellenőrzi a Catalog/AFés az EmbeddedFiles névfa által megosztott pontos FileSpec-et, a/Fés/UFneveket, az XML MIME-típust, az XMPDocumentType-ot és a profil-specifikus Factur-X vagy ZUGFeRD névteret négy dedikált probléma-jelölőn keresztül
Version 2.450.0
Added
- A Preflight JSON-, HTML- és veraPDF-stílusú megállapítások most stabil névteres
ruleIdértékeket hordoznak, valamint gép-olvasható helyeket logikai hatókörrel, útvonallal, PDF-kulccsal és pontos objektumszámmal, oldalindexszel vagy bájt-eltolással, amikor elérhetők; a JSON-jelentések a dokumentált ISOspecleképezéseket is kibocsátják, és érvényesek maradnak, ha a tömbök több megállapítást tartalmaznak
Version 2.449.0
Added
- A
SanitiseLoadedDocumentmost csak-JavaScript-, aktív tartalom- vagy szigorú nem megbízható dokumentum-házirendeket alkalmaz egy betöltött PDF-re, jelenti az eltávolított műveleteket és hasznos adatokat, zárt módon hibázik az ismeretlen művelettípusok esetén, a közel-lineáris, ciklus-biztos bejáráson keresztül távolítja el az elérhetetlen objektumokat, tömöríti az élő objektumszámokat, és atomi módon cseréli a forrást, ha a mentés helyben történik
Version 2.448.0
Added
- A betöltött oldal-megjelenítő most végrehajtja a színezett és színezetlen csempe-mintákat valamint tengelyes és sugár-zöld árnyalat-mintákat kitöltésekhez és körvonalakhoz, beleértve a minta-mátrixokat, színöröklést, útvonal-vágást, gyorsítótárazott tartalom-tokenizálást, beágyazott grafikus-állapot helyreállítást, valamint korlátozott rekurzió- és csempe-számokat az ellenséges erőforrásokhoz
Version 2.447.0
Added
- Hozzáadva egy konfigurálható lánconkénti 256 MiB
DecodeBudgetBytesfelső határ, amely a beágyazott Flate, LZW, ASCIIHex, ASCII85, RunLength és képprediktor-fázisok kimenetét összegezve, még a memóriába jutás előtt, aGetLastDecodeBudgetInfodiagnosztikával és a nulla mint explicit korlátlan mód
Version 2.446.0
Added
- Hozzáadva opcionális
LinearizeOutputgyors webes megtekintéshez, amely a linearizációs paraméter-szótárt az első 1024 bájton belül bocsátja ki, első-oldal és megosztott-objektum tipp-táblákkal, függőség-sorrendbe állított oldal-szekciókkal és két kompatibilitási kereszthivatkozás-táblával, miközben megőrzi a közvetlen fájl- és adatfolyam-kimenetet és a megbízható újratöltés-észlelést
Version 2.445.0
Added
- A betöltött PDF-ek most korlátozott kereszthivatkozás-helyreállítást használnak sérült
startxrefdeklarációk vagy használhatatlan xref-adatok után, először egy érvényes táblát vagy adatfolyamot keresnek, majd érvényesített közvetlen-objektum eltolásokat építenek újra legújabb-definíció előbbséggel, beágyazott-objektum hamis-pozitív szűréssel, konfigurálható vizsgálati és objektum-költségvetésekkel, korlátozott xref-horgony-kísérletekkel, strukturált diagnosztikával és teljes-újraírásos mentéssel
Version 2.444.0
Added
- Az
AnalyzeLoadedSignatureRevisionsmost minden növekményes revíziót osztályoz egy kiválasztott aláírás után, mint hosszú távú érvényesítés, űrlap-kitöltés és aláírás, megjegyzések vagy egyéb változások, jelenti a módosított és felszabadított objektumokat és mezőneveket, és egymástól függetlenül értékeli a DocMDP és FieldMDP megfelelőséget a hagyományos, adatfolyam-, hibrid és tömörített-objektum xref-előzményeken át
Version 2.443.0
Added
- A
VerifyLoadedSignatureWithTrustés aHPDFValidateCMSCertificatePathmost az aláíró tanúsítvány-útvonalakat hívó által megadott bizalmi horgonyokig építik, és ellenőrzik a tanúsítvány-aláírásokat, érvényességi időszakokat, Basic Constraints-t, útvonal-hossz-korlátozásokat és Key Usage-t - Az offline visszavonás-ellenőrzés most ellenőrzi az OCSP és CRL aláírásokat, a válaszadó hatóságot, a tanúsítvány-azonosságot, az állapot-frissességet és a visszavonási időket, miközben az aláírásonkénti VRI-bizonyítékot preferálja a dokumentum-szintű DSS, a hívó bizonyítéka és a CMS CRL-ek előtt
- A
THPDFSignatureInfo.CertificateValidationa bizalmat, az útvonal-hosszt, a bizalmi horgonyt, az értékelési időt, a visszavonási állapotot és forrást, a visszavonási időt és az ellenőrzési problémákat a kriptográfiaisvValid-től függetlenül jelenti
Version 2.442.0
Added
- A betöltött-aláírás ellenőrzése most kriptográfiai módon érvényesíti az RFC 3161 dokumentum-időbélyegeket a PDF
/ByteRangeellen, és az aláírás-időbélyeg tokeneket a szülő CMS-aláírás értéke ellen, miközben aTHPDFSignatureInfo.Timestampközzéteszi az időbélyeg fajtáját, állapotát, házirendjét, üzenet-lenyomatát, sorozatszámát, generálási idejét, pontosságát, rendezését, nonce-át, TSA-azonosságát és token-aláíró tanúsítvány-részleteit
Version 2.441.0
Added
- A betöltött-aláírás ellenőrzése most támogatja a CMS RSA-PSS aláírásokat SHA-1, SHA-256, SHA-384 vagy SHA-512 használatával, és érvényesíti az explicit hash-, MGF1 hash-, sóhossz- és trailer-mező-paramétereket
- A
THPDFSignatureInfomost jelenti aSignedRevisionLengthésUnsignedTrailingBytesértékeket, és azsvInvalidByteRangeazonosítja a strukturálisan nem biztonságos PDF-aláírás-tartományokat
Changed
- Az aláírás-ellenőrzés most visszaállítja a hívó adatfolyam-pozícióját, biztonság-érzékeny bájtszekvenciákat korai kilépések nélkül hasonlít össze, és a teljes RSA-PSS algoritmus-paramétereket jelenti
Fixed
- A CMS-ellenőrzés most elutasítja az átfedő, határon kívüli, csonkolt vagy kétértelmű bájttartományokat, és a teljes RSA PKCS#1
DigestInfoalgoritmus-azonosítót érvényesíti ahelyett, hogy bármilyen digest-méretű oktett-sztringet elfogadna
Version 2.440.0
Fixed
- A Unicode betűtípus-regisztráció most a teljes betűjel-előrehaladási puffert lefoglalja a betűtípus-metrikák beolvasása előtt, elkerülve a hozzáférés-megsértéseket az OpenType formálási és betűtípus-részletesítési munkafolyamatokban
- A
GetWideTextWidthmost em-egységekben értelmezi a gyorsítótárazott Unicode előrehaladásokat, és platformos mérésre áll vissza, ha egy betűjel-metrika nem érhető el, helyreállítva a helyesen skálázott szélességeket a sortöréshez és az elrendezéshez - A
BeginIncrementalUpdatemost a betöltött objektumokat tisztaként jelöli meg a hívó módosításainak követése előtt, így a változatlan objektumok nem kerülnek újraírásra, és az árva titkosítási szótárak helyesen felszabadításra kerülnek a hozzáfűzött kereszthivatkozás-szekcióban
Version 2.439.0
Added
- Az
HPDFDecodePredictorés azHPDFTryDecodePredictorkorlátozott dekódolást biztosít a TIFF 1, 2, 4, 8 és 16 bites predikcióhoz és mind az öt PNG-szűrőhöz, szigorú sor-ellenőrzéssel és végrehajtható diagnosztikával - A
TPDFLZWDecompressorközvetlen adatfolyam-kimenetet, újrahasználható nem-kivételdobó dekódolási metódusokat, konfigurálható kimeneti korlátokat és adatfolyam-végjel-követelményeket, valamint dekódolásonkénti kódszélesség-, szótár-, visszaállítási, bővítési és kimeneti statisztikákat ad hozzá
Changed
- Az LZW dekódolás most egybefüggő kifejezés-arénát használ, mindkét PDF
EarlyChangemódot és mindkét bitfeltöltési sorrendet támogatja, szigorúan kezeli a törés-visszaállításokat és aKwKwKbővítést, és mértani sorozatban növeli a karakterlánc-kimenetet - A betöltött Flate és LZW képkivonás most tiszteletben tartja a
DecodeParmsprediktor-geometriát és azEarlyChangeértéket, túlcsordulás-biztos raszterméretezést használ, és ugyanazt a prediktor-implementációt osztja meg, mint az xref-adatfolyam dekódolása
Fixed
- A Flate dekódolás prediktorparaméterekkel most a dekompressziós adatfolyamból olvas, ahelyett, hogy a tömörített bemeneti bájtokat a prediktor-fázisba másolná
- A hibásan formázott LZW kódok, csonka sorok, érvénytelen PNG-sorcímkék, lehetetlen prediktor-geometriák és túlzott bővülés most determinisztikusan meghiúsulnak ahelyett, hogy részleges vagy még mindig tömörített képadatokat adnának vissza
Version 2.438.0
Fixed
- A
THPDFViewermost lefordul Delphi XE2-től XE8-ig, ahol aWM_DPICHANGEDhiányzik aWinapi.Messages-ből; a monitoronkénti DPI-üzenetállandó most helyileg van definiálva a Delphi 10 Seattle-nél régebbi eszközláncokhoz, visszaállítva a RAD Studio XE2..XE8 TRIAL könyvtár DCU-buildjeit, amelyekE2003 Undeclared identifierhibával megszakadtak
Version 2.437.0
Changed
- A
GetWideTextWidthmost a betűtípus hmtx táblájából egyszer feltöltött kódpontonkénti előrehaladási-szélesség gyorsítótárából méri a Unicode szöveget a minden hívásnál végzettCreateCompatibleDC+GetTextExtentPoint32Woda-vissza út helyett -- 10-100-szoros gyorsulás a szótördeléshez, az igazításhoz és a táblázatcella-méréshez hosszú Unicode dokumentumokon, átlátható visszaeséssel a hagyományos GDI útvonalhoz, ha nincs Unicode betűtípus regisztrálva
Version 2.436.0
Fixed
- A beágyazott betűtípus
/FontDescriptor /CapHeightértéke most a betűkép valósotmsCapEmHeightmetrikáját használja egy hardcoded állandó helyett, és olyan betűképeknél az emelkedés ~70%-ára esik vissza, amelyek nullát jelentek
Version 2.435.0
Fixed
- A beágyazott Unicode betűtípusok megtartják az OpenType formálás által előállított betűjeleket (arab megjelenítési formák, ligatúrák, kontextusfüggő alternatívák) részletesítéskor -- a
MarkUnicodeGlyphUsed/EnableShapingFeatureForSubsetáltal rögzítettFUnicodeExtraUsedGlyphshalmazt rögzítették, de a részletesítő soha nem használta, így ezek a betűjelek a kimenetben.notdefértékre estek vissza
Version 2.434.0
Added
- A
THPDFWeightedCachenem-előléptető vizsgálatot, logikai keresést, explicit eltávolítást és tulajdonjog-átadást, azonnali költségvetés-csonkolást, találati arány- és életciklus-statisztikát, valamint folyamatos SHA-256 tartalomkulcsokat ad hozzá
Changed
- A nagy rendezett ToUnicode és CID CMap-ek most logaritmikus karakter- és tartomány-keresést használnak, pontosan megőrzik az egybájtosól négybájtosig terjedő kódtérket, erőforrás-gyökér szerint elkülönítik a megosztott feldolgozott térképeket, és mértani sorozatban növelik a feldolgozó tárolóját
- A tartós renderelt oldalas gyorsítótár most atomi módon írja a PNG- és indexadatokat, követi az oldalszintű frissességet, azonnal alkalmazza a csökkentett korlátokat, és helyreállítja az elavult indexeket, az elhagyott ideiglenes fájlokat, a hiányzó mappákat és az index nélküli dokumentummappákat
Fixed
- A CMap-elemzés most helyesen kezeli a páratlan hexadecimális félbájtokat, és elutasítja a hibásan formázott hexadecimális adatokat, az érvénytelen vagy túlcsorduló tartományokat, a negatív CID-célokat és a korlátlan explicit leképezéseket, miközben determinisztikusan helyettesíti az érvénytelen UTF-16 helyettesítő szekvenciákat
- A súlyozott gyorsítótár cseréje többé nem szabadít fel egy objektumot, ha ugyanazt a példányt a meglévő kulcsa alatt szúrják be újra, és a sérült lemez-gyorsítótár PNG-bejegyzések eltávolításra kerülnek egy sikertelen dekódolás után ahelyett, hogy minden későbbi keresésnél meghiúsulnának
Version 2.433.0
Added
- A betöltött aláírás-ellenőrzés most támogatja az ECDSA P-256, P-384 és P-521 CMS-aláírásokat SHA-1, SHA-256, SHA-384 vagy SHA-512 használatával, beleértve a kibocsátó-és-sorszám és SubjectKeyIdentifier aláíró-kiválasztást, a szigorú DER-aláírás-ellenőrzést és a kiterjesztett algoritmus- és görbe-diagnosztikát
- Az ICC színkezelés most ellenőrzi az ICC v2/v4 profilokat, kikövetkezteti és ellenőrzi a komponensszámokat, deduplikálja a regisztrált profilokat, ICCBased vektor- és nyers képmintáit sRGB-re konvertálja renderelési szándék-támogatással, és a PDF Alternate színteret szabályozott visszaesésként megtartja
Version 2.432.0
Added
- A
THPDFTableCellmost támogatja a képcellákat (azImageIndex+ImageAspecta regisztrált képet az oszlopszélességre skálázza H/V igazítással) és a HTML-cellákat (azIsHTMLa cellaszöveget aTextOutHTML-en keresztül rendereli a beágyazott félkövér/szín/hivatkozás/al-/felülrészkódoláshoz), megfelelve annak a cellatartalom-különféleségnek, amelyet egy rács-exportnak várhatóan hordoznia kell
Version 2.431.0
Added
- Az új
THPDFTableelrendezési és renderelési motor (HPDFTableegység) táblázatokat rendez a deklarált oszlopszélességekből és sorokból, cellánkénti szöveggel, igazítással, szín- és betűtípus-felülbírálattal,ColSpan/RowSpanösszevonással, automatikus szótördeléssel mért sormagasságokkal, fejléc- és zebracsík-hátterekkel, valamint automatikus oldaltörés-folytatással, amely minden oldalon megismétli a fejlécsávot -- mindezt a meglévőTHPDFPagerajzprimitíveket hajtja, így a előállítók többé nem rajzolnak kézzel cellákatRectangleésTextOutsegítségével
Version 2.430.0
Changed
- A tartalomfolyam-feldolgozás és a betöltött oldalas szerkesztés most hatékonyabban skálázódik a nagy szöveg- és útvonal-munkaterheléseken, megőrzi a kiegészítő sík Unicode és PDF útvonal-szemantikáját, érvényteleníti az oldalas gyorsítótárakat a mutációk után, és befejezi a részleges puffereket elfogadó adatfolyamok írásait
Version 2.428.0
Added
- A
THPDFPage.TextOutHTMLszósortörés-túlterhelést kap, amely felvesz egyMaxWidth-et, és a hosszú sorokat szóhatárokon töri, plusz beágyazott hivatkozás (<a href>) és alsó/felső index (<sub>/<sup>) címkéket; a hivatkozások kékkel és aláhúzva rajzolódnak, és regisztrálnak egy kattintható URI-jegyzetet
Version 2.427.0
Changed
- Az azonos betűtípust és méretet megosztó egymást követő szövegfolyamatok többé nem bocsátják ki újra a
Tfoperátort minden hívásnál, csökkentve a tartalomfolyamokat a betűtípus-gazdag dokumentumokban (táblázatok, bekezdések), miközben még mindig kibocsátják egy grafikus állapot visszaállítása (Q) után, ahol a PDF megkívánja - A
THPDFPageellipszis-közelítése most a standard köbös-Bézier-kappa állandót0.5522847498használja, egyezve a egység minden más ellipszis- és körimplementációjával és eltávolítva azt a kis sugárfüggő eltérést, amelyet a korábbi11/20közelítés okozott
Version 2.426.0
Added
- A megjelenítő most előmelegíti a megjelenített oldalak gyorsítótárát az éppen megjelenített oldal melletti oldalakhoz, egy háttérszálat használva ugyanazon DPI-n, hogy a következő lapozás a gyorsítótárba találjon szinkron újra-megjelenítés helyett; az új
PrefetchRadiustulajdonság szabályozza, hogy mindkét oldalon hány oldal előmelegedjen (0 kikapcsolja)
Version 2.425.0
Added
- A betöltött oldalak megjelenítője most dekódolja és rajzolja a beágyazott képeket (
BI/ID/EI) ahelyett, hogy kihagyná őket, kibontva a rövidített beágyazott kép kulcs/érték párokat és a nyers bájtokat a tokenizálás időpontjában, és elhelyezve az eredményt ugyanazon az egységnégyzet-CTM-leképezésen, amelyet a kép-XObjectekhez használnak
Version 2.424.2
Changed
- A megjelenített oldalak lemezgyorsítótára most egyetlen könyvtár-átvizsgálásban gyűjti össze az összes oldalfájlt, és egyetlen menetben kizárja a túlcsorduló farokot, felváltva a korábbi kizárás-onként-újravizsgál ciklust, amely négyzetes időben futott a dokumentumonkénti oldalszám fölött
- A kép-deduplikáció most megjegyzi minden tárolt képfolyam SHA-256-át, és a bájtok bejárása előtt hasonlítja össze a hash-eket, így ugyanannak a nagy képnek a sok oldalhoz adása többé nem olvassa újra az összes korábban tárolt folyamatot minden beszúrásnál
Version 2.424.1
Changed
- A dekódolt képek és részhalmaz-betűtípusok súlyozott gyorsítótára most egy hash-indexen keresztül oldja fel a kereséseket, és index-alapú duplán láncolt listán tartja fenn a legutóbb használt sorrendet, minden
Get,Putés frissesség-előléptetést egy O(n) tömbeltolásból O(1) munkává alakítva, így a nagy többképes dokumentumok megjelenítése többé nem romlik, ahogy a gyorsítótár megtelik
Version 2.424.0
Changed
- A
CompressLoadedDocumentmost tiszteletben tartja aCompressionLevel-t, a forrásfolyamokat korlátozott darabokban dolgozza fel, megtartja az eredeti hasznos terhet, amikor a tömörítés nem kicsinyíti, biztonságosan felszabadítja a kicserélt folyamatokat, és piszkosnak jelöli az átalakított folyamatobjektumokat, hogy aSaveLoadedDocumentaz eredményt mentse ahelyett, hogy a változatlan-fájl-másolási útvonalat venné.DecompressLoadedDocumentugyanazon a tulajdonság-biztonságos streaming-útvonalon használja, eltávolítja az identitás-/DecodeParms-eket, és a TIFF vagy PNG prediktorfolyamokat tömörítve hagyja, amíg a prediktorfázis biztonságosan dekódolható nem lesz
Version 2.423.0
Added
- A
THPDFPage.AddCertificationSignatureFieldés aConfigureCertificationSignaturemost a három jogosultsági szint mindegyikével és a megfelelő Catalog/Perms /DocMDPkapcsolattal hozza létre az egyetlen DocMDP tanúsítási aláírást, miközben azAttachSignatureFieldLockközvetett SigFieldLock-házirendeket és megfelelő FieldMDP-hivatkozásokat bocsát ki az All, Include vagy Exclude mezőhatókörökre.THotPDF.GetLoadedSignaturePermissionsugyanannak a jogosultsági gráfnak a korlátozott strukturális vizsgálatát végzi, beleértve a szükséges közvetlenséget, a gyökérkapcsolatot, a házirend-egyezést és a diagnosztikát, anélkül, hogy a házirend-szerkezetet a kriptográfiai érvényességgel vagy a későbbi revízióknak való megfeleléssel összezavarná
Version 2.422.0
Added
- Watermark / header / footer placeholder tokens now resolve document metadata:
<%Author%>/<%Title%>/<%Subject%>/<%Keywords%>/<%Producer%>are substituted alongside the existing<%PageNo%>/<%TotPage%>/<%FileName%>/ date-time tokens when the newHPDFReplaceWatermarkPlaceholdersoverload is given aTHPDFPlaceholderDocInforecord. The legacy 4-parameter signature stays for callers that only need the page / file / date-time subset
Version 2.421.0
Added
THPDFActionBuilder.GoToEmbeddedNamedDestinationandGoToEmbeddedPagecreate PDF 1.6GoToEactions with standards-valid parent, EmbeddedFiles name-tree, attachment-annotation, and nested/Ttarget paths, while preserving named or explicit destinations, optional root file specifications,NewWindow, action chaining, and PDF/A/PDF/X restrictions- Loaded action inspection now recognises all 18 ISO 32000-1 action subtypes and returns ordered, non-executing
THPDFLoadedActionInfosnapshots from catalog/OpenActionand/AA, page/AA, annotation/Aand/AA, AcroForm field/AA, and outline/Asources. Dictionary and array/Nextforms preserve execution order, while malformed entries, shared nodes, cycles, excessive depth, and excessive node counts stop safely with diagnostics - Annotation action and JavaScript trigger enums now include page-open
/PO, page-close/PC, page-visible/PV, and page-invisible/PIevents with the required PDF 1.5 version negotiation
Version 2.420.0
Added
- Content-stream device stage 3 closes the abstraction loop:
IHPDFContentDevicegainsDrawXObject/DrawShading/ApplyExtGStatefor theDo/sh/gsoperators, and the shared interpreter now dispatches them.Dois gated oncdcNeedImagesso text/enum devices skip the heavy image decoding;shandgsdispatch unconditionally. The renderer'sExecuteViaDevicepath can now paint the full operator set (paths + colours + text + images + shading + ExtGState), observably equivalent to the legacyHandleOperatorpath. TheApplyExtGStatenested procedure was promoted to a class method (DoApplyExtGState) so the device path shares it without duplication; method-resolution clauses route the three new interface entries toDev*helpers without colliding with the pre-existing private helpers - Document-content observer pattern:
THotPDF.OnLoadedDocumentModifiedevent fires fromInvalidateRenderedPageCache(PageIndex = -1, whole document) andInvalidateRenderedPageCachePage(a specific page) so attached viewers refresh automatically.THPDFViewersubscribes inSetDocumentand unbinds on detach /opRemove, callingRefreshDocumentwhen the current page (or the whole document) is affected. Multi-view sync (several viewers on the sameTHotPDF) now works without each caller invokingRefreshDocumentby hand
Version 2.419.0
Added
- Content-stream device abstraction stage 1:
IHPDFContentDevicegains the text callback surface (BeginText/EndText/UpdateFont/UpdateCharSpace/UpdateWordSpace/UpdateHorizScale/UpdateLeading/UpdateRenderMode/UpdateRise/TextMove/TextSetMatrix/TextNewLine/ShowText/ShowTextArray) mirroring the PDF text state machine; the sharedHPDFInterpretContentStreamDevicedispatcher now forwards BT/ET/Tf/Tc/Tw/Tz/TL/Tr/Ts/Td/TD/Tm/T*/Tj/TJ/'/" to the device when it declarescdcNeedText THPDFTextExtractDeviceis a concrete device that maintains the text matrices and emits oneTHPDFGlyphRecordper char code (decoded via an injectedIHPDFFontResolver) — observably equivalent toHPDFInterpretTokensoutput but produced through the device interface so the same interpreter loop drives text extraction, path enumeration and renderingHPDFExtractGlyphsViaDeviceconvenience function wraps the text-extract device + shared interpreter in one call; the existingHPDFInterpretContentStream/HPDFInterpretTokensstay untouched for current callers- Content-stream device abstraction stage 2:
THPDFPageRenderernow implementsIHPDFContentDeviceso the shared dispatcher can drive it through the same abstract interface.ExecuteViaDeviceis the opt-in device-driven render entry; the productionExecutepath keeps its built-inExecuteStream/HandleOperatordispatch, so existing behaviour is unchanged. The renderer carries every piece of state the callbacks need (graphics-state stack, font cache, GDI handles, four paint bridges) and each device method is a thin delegation, so the device-driven route is observably equivalent to the legacy route
Version 2.418.0
Added
DecompressLoadedDocumentis the inverse ofCompressLoadedDocument: it walks every indirect stream carrying a/Filter /FlateDecode(name or single-element array form), inflates the payload back to raw bytes, strips the/Filterentry and fixes up/Length; streams with other filters (CCITT / DCT / JBIG2 / JPX / Crypt / RunLength) and multi-filter chains are left untouched, and corrupt Flate payloads are skipped rather than discardedEnumLoadedPageElementsnow returns the full path geometry perekPathelement, not just the bounding box: two new fieldsPathPoints: array of THPDFPathPointandPathIsCurve: array of Booleanare index-parallel and carry each segment’s user-space control points with a flag distinguishing cubic bezier segments from linear ones (m / l / re edges). Callers that only read the bbox are unaffected; CAD drawing extraction, table-line detection and vector-replay consumers can now rebuild the exact curves the page drew- New
HPDFContentDeviceunit introduces the content-stream device abstraction (stage 0): anIHPDFContentDeviceinterface with aTInterfacedObjectbase implementation (mirroring the provenIHPDFFontResolverpattern), a sharedHPDFInterpretContentStreamDevicedispatcher that today covers the path / colour / state operator subset, and a concreteTHPDFPathEnumDevicethat collects one record per painted path with full point geometry. This breaks the three-way duplication betweenHPDFContentStream,HPDFPageRenderer.HandleOperatorandHPDFCollectPathElements; stage 1 will add text/image callbacks and stage 2 will migrate the renderer onto the device
Changed
HPDFPageRendererheader comment updated: the “TrueType/CFF glyph-outline rendering out of scope” note was stale — embedded glyph outlines have been active since v2.342.0 (DrawTextRuncallsTHPDFEmbeddedTTF.DrawGlyph/THPDFEmbeddedCFF.DrawGlyphwith real quadratic/cubic bezier paths; GDITextOutWis only the fallback for unmapped characters). CID fonts via Identity-H + CIDToGIDMap are covered too
Version 2.417.0
Added
- Five named loaded-document annotation helpers close the discovery gap where the existing
ASubtype-parameterised helpers (AddLoadedHighlightAnnotation,AddLoadedSquareAnnotation,AddLoadedPolygonAnnotation) already produced these subtypes but callers had to know the secret:AddLoadedCircleAnnotation,AddLoadedUnderlineAnnotation,AddLoadedStrikeOutAnnotation,AddLoadedSquigglyAnnotationandAddLoadedPolylineAnnotation-- once landed, the XFDF interchange layer (which already recognises these subtype strings) picks them up for free AddLoadedFileAttachmentAnnotationembeds an arbitrary file payload (PDF, image, office doc) as a FileAttachment annotation with the full three-object graph the spec requires: annotation dict / Filespec dict / EmbeddedFile stream with/SubtypeMIME,/Params /Sizeand creation/modification dates; the newTHPDFFileAttachmentIconenum (faiPushPin/faiGraph/faiPaperclip/faiTag) selects the standard pin icon viewers renderTHPDFFieldValidationOptionsrecord +HPDFDefaultValidationOptionsexpose the full AdobeAF*parameter surface (Decimals / SeparatorStyle / NegativeStyle / CurrencySymbol / CurrencyBefore / RangeMin / RangeMax) that the Acrobat JS helpers accept; the existingApplyLoadedFieldValidation(FieldIndex, Kind, DateFormat, Mask)signature is retained as a backward-compatible overload that forwards into the new record overloadApplyFieldValidationandApplyFieldCalculationbring the same Format+Keystroke+Validate / Calculate template to producer-mode fields (looked up by name) so newly-created forms get the same AF* scripts as loaded ones, without writing JavaScript by handCopyLoadedAnnotationsFromDocumentdeep-copies annotations from another loaded document directly PDF→PDF (no XFDF intermediary): reusesCopyObjectto rebuild indirect references, streams and/APappearances, rewrites/Pto the destination page, optionally remaps/IRTreply chains via/NM, optionally clears/Tauthor, and accepts aTHPDFAnnotCopyFilterEventcallback for selective copy -- covers Widget/PrinterMark/TrapNet/Watermark/3D/Screen that the XFDF layer does not reach
Fixed
ApplyLoadedFieldValidationwrote the Format JavaScript under trigger key/X(annotation-exit), which Acrobat never fires for form fields -- the script was effectively dead. Corrected to/Fso the format actually runs on field commitApplyLoadedFieldValidationemittedAFSpecial_FormatExfor the ArbitraryMask kind, a function that does not exist in the AdobeAF*set; onlyAFSpecial_KeystrokeEx(mask)is real, so the Format pass is dropped and enforcement happens at keystroke time as the spec intendsApplyLoadedFieldValidationunconditionally appendedAFRange_Validate(true,true,0,9999999)for numeric kinds, imposing a hidden 0..9999999 range the caller never asked for; range validation now only fires when the caller explicitly setsRangeMinorRangeMaxin the options recordApplyLoadedFieldValidationwrapped the ArbitraryMask in a JavaScript regex literal and emitted a hand-rolled validate script, but the mask is a literal format pattern ("AAA-9999"), not a regex; the validate pass is now removed and the keystroke mask carries the enforcement aloneApplyLoadedFieldCalculationnow prepends a Format+Keystroke number-formatting pair before theAFSimple_Calculatescript so the aggregated result renders as a plain number, matching common PDF viewer behaviour (without it the Calculate value displays raw)
Version 2.416.0
Added
THPDFViewernow scrolls on hover-wheel without needing a click first: a thread-localWH_MOUSEhook (newHPDFMouseWheelHookunit, auto-installed from itsinitializationsection) routesWM_MOUSEWHEELto whicheverTHPDFViewerinstance sits under the cursor, matching the behaviour of every native Windows PDF readerTHPDFVieweris now Per-Monitor DPI v2 aware: newHPDFPerMonitorDPIunit resolvesuser32!SetProcessDpiAwarenessContext(Win10 1703+,DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2) at runtime and falls back throughshcore!SetProcessDpiAwareness(Win8.1+) anduser32!SetProcessDPIAware(Vista+); the legacyHPDFEnablePerMonitorDPIis retained as an alias that forwards to the new layered helperTHPDFViewer.RenderAtPhysicalDPIpublished property (defaultTrue) makes the rendering DPI baseline track the monitor’s physical DPI viaHPDFGetWindowDPI, so 100% zoom on a 144 DPI panel renders at native resolution; a newWMDpiChangedhandler re-renders on cross-monitor moves; setFalseto preserve the historical 96-DPI logical baseline- Optional persistent disk tier for the rendered-page cache: setting
THotPDF.RenderCacheFolderto a writable folder path persists every page rendered byRenderLoadedPageToBitmapCachedas a PNG under<folder>\<SHA256-prefix-16>\<page>@<dpi>.png, so re-opening the same document later is instant;RenderCacheMaxDocuments(default 20) andRenderCacheMaxBytes(default 500 MB) bound the footprint with a true LRU eviction; the lookup order becomes in-memory → disk → rasterise, with disk hits back-filling the in-memory tier THotPDFconstructor now activates the highest available per-monitor DPI tier at first instantiation in runtime mode (skipped incsDesigning), so hosts that never callHPDFEnablePerMonitorDPIexplicitly still get crisp rendering on high-DPI displays
Version 2.415.0
Hozzáadva
HPDFParsePDFDateEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatást+HH’mm,-HH’mm, orZEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástTDateTime;HPDFFormatPDFDateEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástD:YYYYMMDDHHmmSS+00’00GetLoadedExtGStateInforeadsLW/LC/LJ/ca/CAEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástGetLoadedShadingCount/GetLoadedShadingNameandGetLoadedPatternCount/GetLoadedPatternNameenumerate the/Shadingand/Patternresource sub-dictionariesReplaceLoadedPageEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástSwitchLoadedPagesexchanges two pages,ReverseLoadedPagesEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástExtractLoadedPagesToPDFEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástGetLoadedPageInheritedBoxEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástGetLoadedFileSpecInfoEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástGetLoadedEmbeddedFileMIMEreturns the/Subtype,GetLoadedEmbeddedFileChecksumreturns the/Checksumdigest, andTHPDFNameTreeType+GetLoadedNameTreeRootCountEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástHPDFEnablePerMonitorDPIdynamically enables per-monitor DPI awareness;THPDFBackgroundRendererEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástGetLoadedPageContentStreamCountreports whether/ContentsEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástGetLoadedXMPValueEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástGetLoadedDocumentReportEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatást
Version 2.414.0
Hozzáadva
THPDFActionBuilder.URIWithIsMapEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatást/IsMap trueEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástURIEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatást/URIstringAddLoadedCaretAnnotationExEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatást/Sy PEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatástGetLoadedAnnotationDAEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatást/DAEz a kiadás a felsorolt szimbólumokon keresztül adja hozzá a leírt API-működést és támogatást
Version 2.413.2
Javítva
- Ez a kiadás összehangolja a leírt API-működést és támogatást a felsorolt szimbólumokkal
Version 2.413.1
Fixed
- Type1 and CFF font handling now preserves parser ownership across repeated stream checks and multi-font FontSets, returns stable glyph names and bounding boxes, keeps fractional font sizes and DPI scaling, and avoids composite-glyph and private-dictionary memory errors
- The C++Builder AddDelPages, HugeFileBenchmark, and Security demos now compile for Win64, while page-operation and preflight examples release partially constructed objects safely
Version 2.413.0
Changed
- The Delphi E-Invoice demo now validates required invoice fields, amount and VAT ranges, currency syntax, and embedded XML profile compatibility before writing output
- The attach workflow now rejects identical source and output paths, reports the detected XML guideline, and combines container, PDF/A, XML profile, signature, visual consistency, Schematron, and external-report checks into one verdict
Fixed
- E-Invoice generation and manual validation no longer report a successful result when an enabled validation layer finds issues
- Loaded electronic-invoice summaries now read the invoice number, seller, and buyer from their correct XML aggregates, preventing false visible-text consistency findings
Version 2.412.0
Changed
- All Delphi demos now resolve no-argument relative assets and outputs from their executable directory while preserving the caller working directory for command-line paths
- Delphi command-line demos now provide stricter argument validation, failure exit codes, deterministic comparison inputs, and generated-document verification across page copying, text extraction, preflight, optimisation, inspection, and in-memory workflows
Fixed
- Delphi demos no longer risk page-list overflow above 100 selected pages, create an extra blank page in the add-page workflow, close unrelated PDF viewer windows, or report failed preflight checks as successful
- The E-Invoice attach workflow now rebuilds its current page correctly when a single-page source is converted, signed, and stripped of the temporary initial blank page
Version 2.411.0
Added
- E-Invoice demo: new "Attach to existing PDF" mode converts an existing PDF to PDF/A-3, embeds a Factur-X/ZUGFeRD invoice XML as a document-level attachment, and optionally signs the result with a PFX certificate
Version 2.410.0
Added
- Loaded AcroForm fields can now update flags, maximum length, text justification, per-widget rectangles, rotation, border colour, and visible or printable state, with widget enumeration for radio groups and other multi-widget fields
Fixed
- Loaded field tooltip, border-width, and background-colour edits now mark the correct field or widget dictionaries dirty, apply visual properties to every widget, and invalidate only the affected page render cache
Version 2.409.0
Added
ActivateLoadedLinksturns bare HTTP, HTTPS, FTP,www.,mailto:, and email text into positioned borderless URI annotations across a selected page range
Changed
- Loaded link creation now persists reliably in incremental updates, while automatic activation snapshots existing links once per page, skips matching URI and rectangle pairs, and invalidates each changed page cache only once
Version 2.408.0
Added
- A betöltött annotációk mostantól frissíthetik címüket, egyedi nevüket, módosítási dátumukat, normalizált téglalapjukat, valamint standard folytonos, szaggatott, döntött, besüllyesztett vagy aláhúzott szegélystílusukat
Fixed
- A betöltött annotációk szerkesztései mostantól piszkosként (dirty) jelölik meg az annotációs objektumot a növekményes mentésekhez, míg a vizuális szerkesztések csak az érintett oldal gyorsítótárazott renderelését érvénytelenítik, és megtartják a többi meleg oldalt
Version 2.407.0
Added
- A
THPDFViewerModela PDF módosítása nélkül tárolja, levágja, felsorolja, eltávolítja és törli a tartós oldalrégió-kiemeléseket - A
THPDFViewerhozzáad egy kiemelési interakciós módot rögzített kijelölőkeret-húzással, forgatásérzékeny PDF-koordináta-helyreállítással, konfigurálható színnel és egyOnMarqueeSelectvisszahívással
Fixed
- A néző koordináta-transzformációi mostantól megtartják a tényleges renderelési DPI-t 12 alatt és 2400 felett, igazítva a kijelöléseket az 5%-os és 6400%-os zoomhatároknál
Version 2.406.0
Added
- A
THPDFViewerModelforgatásérzékeny oldalkbélyegképeket hoz létre közvetlenül a hívó által megadott pixelhatárokhoz választott DPI-n, elkerülve a teljes méretű köztes oldal-bitképeket - A nézőmodell oldal-előbetöltése aszinkron módon melegíti be a környezetet, miközben az ütemezett oldalakat a renderelt oldal-gyorsítótár kapacitására korlátozza
Version 2.405.0
Added
- A
THPDFPageLayoutmostantól támogatja a PDF 1.5plTwoPageLeftésplTwoPageRightborítólapos kétoldalas elrendezéseit automatikus verzióegyeztetéssel és szigorú verzió-visszalépéssel
Fixed
- A
BeginDocmostantól megőrzi a hívó által kiválasztott oldalelrendezést ahelyett, hogy mindig lecserélné azt aplOneColumnértékre
Version 2.404.0
Added
- A
THPDFViewerModelforgatásérzékeny pillanatképeket hoz létre a határolt PDF-oldalrégiókról teljes oldalas bitkép lefoglalása nélkül
Version 2.403.0
Added
- A
THPDFViewerModelkétirányúan konvertálja a pontokat a PDF oldaltér és a forgatásérzékeny Viewer koordináták között a hívó által kiválasztott DPI-n
Version 2.402.0
Changed
- A néző zoom parancsai mostantól stabil standard szinteket használnak 5%-tól 6400%-ig, beleértve a visszafordítható navigációt az tetszőleges egyedi értékek körül
Version 2.401.0
Added
- A
THPDFViewerhozzáadja a Ctrl+görgő zoomot, a függőleges görgetést és a Shift+görgő vízszintes görgetést anélkül, hogy újrarenderelné a csak görgetést tartalmazó bemenetet
Version 2.400.0
Added
- A
THPDFViewerbillentyűzetes oldalnavigációt, görgetést, zoom billentyűparancsokat, valamint Valós méret, Szélességhez igazítás vagy Oldalhoz igazítás módválasztást ad hozzá
Version 2.399.0
Added
- A
THPDFViewerrajzolja vagy nyomtatja a forgatásérzékeny aktuális nézetet determinisztikus, képarányt megőrző igazítással és középre helyezéssel
Version 2.398.0
Added
- A
THPDFViewerModela hívó tulajdonában lévő EMF vektoros pillanatképeket hoz létre bármely betöltött oldalról vagy az aktuális nézetről, beleértve a nem destruktív 90 fokos nézetforgatást
Version 2.397.0
Added
- A
THPDFViewerModelforgatásérzékeny oldal-pillanatképeket ment BMP, JPEG vagy PNG formátumban fájlokba és a hívó tulajdonában lévő adatfolyamokba, konfigurálható JPEG minőséggel
Version 2.396.0
Added
- A
THPDFViewer.ResetViewvisszaállítja a Valós méretet, törli a nézetforgatást és a keresési kiemeléseket az aktuális oldal megőrzése mellett, megegyező visszaállítási és forgatási műveletekkel, valamint kötegelt egyrenderes frissítésekkel
Version 2.395.0
Added
- A
THPDFViewerés aTHPDFViewerModelóramutató járásával megegyező, ellentétes és visszaállítható nézetforgatást ad hozzá, amely a hívó tulajdonában lévő oldal-pillanatképekre is vonatkozik a PDF-oldal módosítása nélkül
Version 2.394.0
Added
- A
THPDFViewerModelképes a hívó tulajdonában lévő oldal-pillanatképeket létrehozni és az aktuális oldalt BMP-ként menteni Viewer vezérlő létrehozása nélkül
Version 2.393.0
Added
- A
THPDFLoadedFormFieldmostantól közzéteszi a mezőjelzőket, a MaxLen-t, az oldalindexet, a widget határait, valamint a gyakori Required, NoExport, Multiline és Password állapotokat - A
GetLoadedFormFieldMaxLengthközvetlen indexelt hozzáférést biztosít a betöltött szövegmezők hosszkorlátaihoz
Version 2.392.0
Added
- A
SetDocumentAttachmentMetadataátnevezi a dokumentumszintű beágyazott mellékleteket, és frissíti azok leírását a szerializáció előtt
Version 2.391.0
Added
- Az
ExtractLoadedPagesTextToStreama kiválasztott betöltött oldal szövegét UTF-8 kódolású adatfolyamként küldi ki egyedi elválasztókkal és opcionális BOM kimenettel - A
THPDFViewerModelűrlapmező-találati tesztelést és determinisztikus billentyűzetes navigációt ad hozzá az oldal widgetjei között - A
THPDFSignatureInfo.CertificateTimeValidityjelenti a tanúsítványhoz kötött és az aláírási idő érvényességi osztályozásait
Fixed
- A widget
/Pvisszahivatkozás nélküli betöltött űrlapmezők mostantól leképezhetők az oldal annotációs tömbjein keresztül
Version 2.390.0
Added
- A
THPDFWatermarkTemplate.MakeCurveés aTHPDFPage.AddCurveWatermarkköbös Bezier-görbéket ad hozzá a betöltött kompozitokhoz és az új dokumentumok létrehozásához
Fixed
- A betöltött dokumentum-metaadatok beállítói mostantól piszkosként (dirty) jelölik meg az Info szótárat, így a növekményes mentések megőrzik a cím- és szerzőváltoztatásokat
Version 2.389.0
Added
- Az
InsertLoadedBlankPageegy hívó által meghatározott méretű üres oldalt szúr be egy betöltött dokumentum pontos pozíciójára - Az
ExtractLoadedPagesTextösszesíti a szöveget egy 1-alapú oldaltartományból a hívó által meghatározott elválasztóval - A
GetLoadedFormFieldNameValuePairsés aSetLoadedFormFieldNameValuePairskötegeltname=valueűrlapcserét biztosít aTStringssegítségével - A
CMapResourcePathtámogatja a kifejezett standard CMap telepítési útvonalakat szolgáltatásokhoz, beépülő modulokhoz és egyedi alkalmazáselrendezésekhez
Changed
- A VCL néző mostantól kirajzolja a keresési találati téglalapokat, és frissít, if az aktív találat megváltozik az aktuális oldalon, míg a kapcsolódó vázlatvezérlők követik a néző dokumentumváltozásait
- Az oldalrenderelés mostantól feloldja az örökölt méretkockákat (media boxes), forgatást és erőforrásokat, valamint helyesen képezi le a nem nulla oldal-origókat minden derékszögű forgatásnál
Fixed
- Az űrlapnév-konfliktusok elutasításra kerülnek az oldal beszúrása vagy hozzáfűzése előtt, ha az összevonási átnevezés le van tiltva, változatlanul hagyva a céloldalak számát
- A betöltött oldalak törlése mostantól leválasztja az AcroForm widget mezőit, és eltávolítja az üres mezőfa-ágakat ahelyett, hogy hivatkozásokat hagyna a törölt oldalakra
- A kurzorstílusú keresési segédek és a nézőmodell-kihagyások többé nem törlik a kezelt szövegtalálati rekordokat nyers műveletekkel
- Az automatikus CMap-felfedezés mostantól átadja a tényleges gyűjteménygyökeret a szövegdekódernek
Version 2.388.0
Added
- Az új
DeletePageseltávolítja az 1-alapú oldaltartományokat a betöltött PDF-ekből, megszünteti a kijelölések átfedéseit, jelenti a haladást, és újraépíti az érvényes oldafát a mentéshez - Az oldalbeszúrás és a hozzáfűzéses összevonás mostantól elfogadja a
THPDFMergeOptionsbeállításokat a rekurzív vázlatok másolásához, az importált AcroForm mezők regisztrálásához és az ütköző mezőnevek determinisztikus átnevezéséhez - Az új
AddLoadedRadioButtonegy valódi szülő rádiógomb-mezőt hoz létre gyermek widgetekkel, megosztott exportértékekkel és teljes be/ki megjelenési állapotokkal - Az új
SearchLoadedNextállapotmentes oldal-lokális következő találati keresést biztosít, míg aGetLoadedOutlineEntriesteljes rekurzív vázlat-pillanatképeket ad vissza szülő- és szintadatokkal - Az új Windows tanúsítványtár-aláírási túlterhelések SHA-1 ujjlenyomat alapján választanak ki egy aktuális felhasználói vagy helyi gép tanúsítványt, és CNG vagy régi CSP privát kulcsokon keresztül írnak alá
- Az új
THPDFLoadedDocumentFacadetipizált vázlat-, űrlap-, annotáció-, betűtípus- és képgyűjteményeket tesz közzé módosítási és kinyerési segédekkel - Az új
THPDFViewer,THPDFSearchPanel,THPDFOutlineViewer, nézőmodell és nézőművelet osztályok újrafelhasználható VCL oldalmegjelenítést, navigációt, zoomot, keresést és könyvjelző-vezérlőket adnak hozzá - Az új fejlett nyomtatási, aláírás-ellenőrzési, oldalkép-bélyeg, betöltött kép-exportálási és tipizált betöltött dokumentum-vizsgálati demók lefedik a teljes munkafolyamatokat
Changed
- A betöltött dokumentumok nyomtatása mostantól determinisztikus összehordott (collated) vagy nem összehordott fizikai oldalsorozatokat épít fel, támogatja az egyedi papírszélességet és -hosszúságot, valamint jelenti a nyomtató papírkódjait, neveit és méreteit
- A rendszertanúsítványok felsorolása mostantól tartalmazza a SHA-1 ujjlenyomatokat, a privát kulcs elérhetőségét, az érvényességi dátumokat és a kulcshasználati metaadatokat
Fixed
- A betöltött szövegkeresési eredmények növekedése többé nem másolja a kezelt karakterlánc-rekordokat nyers memóriamozgatásokkal, megakadályozva az érvénytelen mutatóhibákat Win64 rendszeren
- A betöltött oldalak törlése többé nem szabadítja fel a megosztott oldalerőforrásokat, és nem hagy elavult oldafa-számlálókat, amelyek mentés és újratöltés után újra megjelennek
Version 2.387.0
Added
- Az új
PrefetchLoadedPagesrenderel egy oldaltartományt a renderelt oldal-gyorsítótárba egy háttérben futó munkaszálon, így az oldalakat lapozó néző azonnali meleg-gyorsítótár találatokat kap ahelyett, hogy várna minden egyes renderelésre - A
CancelLoadedPagePrefetchleállítja a munkaszálat, és azIsLoadedPagePrefetchActivejelenti annak állapotát; másik dokumentum betöltése vagy a komponens megsemmisítése automatikusan megszakítja az aktív előbetöltést - A gyorsítótárazott renderelés és az előbetöltő munkaszál belsőleg szerializáltak, így a
RenderLoadedPageToBitmapCachedbiztonságosan hívható az előbetöltés futása közben
Version 2.386.0
Added
- Az új
FlattenLoadedAnnotationsvéglegesen berajzolja az egyes annotációk normál megjelenését az oldaltartalomba a téglalapjánál, és eltávolítja az annotációt, így a jelölések és az űrlapok vizuális elemei megmaradnak az annotációkat elrejtő vagy nem szerkeszthető nézőkben - A menet követi a megjelenési állapot szótárakat az
/ASkulcson keresztül, tiszteletben tartja a megjelenési határolódobozt és mátrixot a téglalap illesztésekor, és korlátozható egyetlen annotáció-altípusra vagy oldaltartományra
Version 2.385.0
Added
- Az új
RenderLoadedPageRegionToBitmapa lapnak csak egy kiválasztott felhasználói térbeli ablakát raszterezi a kért DPI-n, így a nagyon nagy oldalak csempénként renderelhetők korlátozott memóriában nagy felbontás mellett egyetlen túlméretezett bitkép helyett - A csempék pontosan igazodnak: a bitkép pontosan lefedi a kért régiót, így a szomszédos csempék varratok nélkül állnak össze a teljes oldallá
Version 2.384.0
Added
- Az új
GenerateLoadedPageThumbnailsrendereli a betöltött dokumentum kiválasztott oldalait, és beágyazza azokat JPEG oldalkbélyegképként, amelyek a néző oldalpanelein megjelenő előnézetek; a leghosszabb élméret és a JPEG-minőség konfigurálható, a meglévő bélyegképek pedig a helyükön cserélődnek - A
GetLoadedPageThumbnailSizevisszaolvassa egy beágyazott bélyegkép pixelméreteit, aClearLoadedPageThumbnailspedig eltávolítja a bélyegképeket a kijelöltekről
Version 2.383.0
Added
- Az
EnumLoadedPageElementsmostantól a szövegek és képek mellett a vektoros útvonal-elemeket is jelenti: minden megrajzolt útvonal egy elemet ad a felhasználói térbeli határolódobozával, a rajzolási operátorral (körvonal, kitöltés vagy mindkettő), az érvényben lévő kitöltési és körvonalszínekkel, valamint a szegmensszámmal - Az útvonalbejáró követi a
q/Qegymásba ágyazást és acmtranszformációkat, így a skálázott vagy eltolt blokkokon belül rajzolt alakzatok a valós oldalkoordinátáikat jelentik
Version 2.382.0
Added
- A
THPDFPrintOptionsújDuplex(egyoldalas, hosszú él menti, rövid él menti),PaperBinésPrintQualitymezőket kap, amelyek a feladat megkezdése előtt betöltődnek a nyomtató eszközmódjába; mostantól egy kifejezettOrientationérték is alkalmazásra kerül - Az új
HPDFGetInstalledPrinterslistázza a rendszernyomtatókat, aHPDFGetPrinterCapabilitiespedig jelenti a nyomtató kétoldalas és színes támogatását, a maximális példányszámot, a papírtálcákat (aPaperBináltal elfogadott kódokkal) és a támogatott felbontásokat
Version 2.381.0
Added
- Új
CopyLoadedOutlinesFromDocumentegy másik betöltött dokumentum teljes könyvjelzőfáját egyesíti az aktuálissal, megőrizve a címeket, az egymásba ágyazást, a testvérsorrendet és a cél nézet paramétereit, miközben minden céloldalt újraképez a hívó által megadott eltolással — ez az oldal-hozzáfűzéses összevonások kísérője, így az egyesített dokumentumok mindkét könyvjelzőkészletet megtartják
Fixed
- A
GetLoadedBookmarkPageIndexmostantól az első legfelső szintű bejegyzésen túl és a beágyazott szintek belsejében is megtalálja a könyvjelzőket; a korábbi keresés csak véletlenül egyezett meg a későbbi könyvjelzőkkel
Version 2.380.0
Added
- Új
ImposeLoadedPagesNUptetszőleges oldaltartományt helyez el rácslapokra (bármilyen oszlop-sor elrendezésben, konfigurálható lapmérettel és margóval) olvasási sorrendben, minden oldalt a cellájába méretezve, opcionális képarány-megőrzéssel - Új
ImposeLoadedPagesBookletfüzetlapokat hoz létre: a lapok száma négy többszörösére egészül ki, és füzetsorrendben párosulnak, így a kétoldalas nyomtatás és hajtogatás helyes sorrendű füzetet eredményez - Mindkét kilövési (imposition) hívás Form XObject-ként csomagolja a forrásoldalakat, és a kész lapokat a meglévő oldalak után fűzi, visszaadva a lapszámot
Fixed
- A betöltött oldalak renderelése mostantól követi a közvetett hivatkozásokat az erőforrások
/XObjectalszótárában; az olyan oldalak, amelyek erőforrásai különálló objektumként érkeztek, csendben kihagyták a képeiket és űrlapjaikat
Version 2.379.0
Added
- A
SaveLoadedPagesAsImageskét TIFF formátumot kap: azifTIFFoldalonként egyetlen egyoldalas TIFF fájlt ír, azifTIFFMultipedig a teljes oldaltartományt egyetlen többoldalas TIFF-be tömöríti, egyesítve a TIFF kimenetet a meglévő BMP, JPEG, PNG, EMF és WMF lehetőségekkel - Mindkét TIFF-útvonal tiszteletben tartja a kért renderelési DPI-t a képméret-jelzőkben, és veszteségmentes Deflate tömörítést használ
Version 2.378.0
Added
- A betöltött oldalak renderelése mostantól valós glif-körvonalakkal rajzolja a 1-es (körvonal) és 2-es (kitöltés, majd körvonal) szövegrenderelési módokat mind a beágyazott betűtípusok, mint a rendszerszintű tartalék betűtípusok esetében, az aktuális körvonalszínt és vonalvastagságot használva; a 4-tot 7-ig terjedő vágási változatok az alapmódjaikhoz hasonlóan festenek
Fixed
- Tizenkét egyoperandusú tartalomoperátor (
Tc,Tw,Tz,TL,Ts,Tr,w,J,j,M,ri,i) rossz tokenpozícióból olvasta be az operandusát, és mindig nullát alkalmazott; a betű- és szóköz, a vízszintes skálázás, a sorköz (leading), a szövegemelés (text rise), a renderelési mód, a vonalvastagság, a vonalvégek (caps), a vonalillesztések (joins) és a gérhatár (miter limit) mostantól érvénybe lép a betöltött oldalak renderelésekor
Version 2.377.0
Added
- A betöltött oldalak renderelése mostantól tiszteletben tartja az opcionális tartalom (réteg) láthatóságát: a
BDC /OCjelölésű szakaszokon belüli tartalmak és a/OCbejegyzést hordozó XObjectek rejtve maradnak, ha a rétegük ki van kapcsolva, követve a dokumentum alapértelmezett konfigurációját (/BaseState,/ON,/OFF) - Az opcionális tartalom tagsági szótárai kiértékelik a
/Pszabályzatukat (AnyOn,AllOn,AnyOff,AllOff) a tagcsoportok felett - Új réteg API-k a betöltött dokumentumokban:
GetLoadedOptionalContentGroupCount,GetLoadedOptionalContentGroupName,GetLoadedOptionalContentGroupVisibleésSetLoadedOptionalContentGroupVisiblea rétegállapotok vizsgálatához és felülbírálásához a rendereléshez; a felülbírálások automatikusan érvénytelenítik a renderelt oldal-gyorsítótárat
Version 2.376.1
Fixed
- A betöltött oldalak bitkép-renderelése mostantól kirajzolja a kép XObjecteket: a
Do,gséssherőforrás-keresések korábban elvétették a perjellel kezdődő operandusneveket, és csendben kihagyták az objektumot - A
cmoperátor és Form XObject/Matrixértékei mostantól a helyes sorrendben kapcsolódnak össze, így az eltolás-plusz-skálázás elhelyezési sorozatok (a standard kép-pozicionálási kifejezés) a kívánt oldalpozícióra helyezik a tartalmat
Version 2.376.0
Added
- Az új
RegisterExponentialFunction,RegisterStitchingFunctionésRegisterPostScriptFunctionAPI-k önálló Type 2, Type 3 és Type 4 függvényobjektumokat hoznak létre, amelyek bárhol használhatók, ahol függvényhivatkozás elfogadott (árnyalások, félárnyék pont- és átviteli függvények, színárnyalat-transzformációk) - A
RegisterPostScriptFunctionregisztrációkor próba-kiértékeléssel ellenőrzi a kalkulátorprogramot, így a hibás programok azonnal elutasításra kerülnek ahelyett, hogy csendben hibákat okoznának a nézőkben - Az új
RegisterSeparationFuncegy Separation színtért hoz létre a hívó által megadott színárnyalat-transzformációs függvényobjektummal
Fixed
- Az egy- vagy háromkomponensű kimenettel rendelkező Type 2 (exponenciális) színárnyalat-transzformációk renderelése többé nem fest feketét; korábban csak a négykomponensű (CMYK) kimenetek dekódolódtak helyesen
- A Type 3 (stitching) színárnyalat-transzformációk renderelése mostantól tetszőleges számú részfüggvényt támogat, alkalmazza a
/Encodeújraképezést, és elfogadja az egyetlen bejegyzést tartalmazó/Boundstömböket
Version 2.375.0
Added
- Az oldalrenderelés mostantól kiértékeli a Type 4 (PostScript kalkulátor) színárnyalat-transzformációs függvényeket, így a Separation és DeviceN színek, valamint a színátmenetes árnyalások a valós színeikkel renderelődnek a szürke helyőrző helyett
- A kalkulátor kiértékelője lefedi a teljes ISO 32000-1 7.10.5 operátorkészletet: aritmetikai, összehasonlító, logikai és bitenkénti műveletek, veremkezelés és
if/ifelsefeltételes kifejezések
Fixed
- A megnevezett színtér-kiválasztás (
cs/CSoperátorok) a betöltött oldalak renderelésekor mostantól helyesen okmányozza az erőforrásneveket; korábban a keresés elvétette, és a tartalom visszalépett az alapértelmezett színtérre - A betöltött oldalak renderelése mostantól követi a közvetett hivatkozásokat az olyan tömbértékű színterekre, mint az önálló objektumként tárolt
/Separationés/DeviceNdefiníciók
Version 2.374.0
Fixed
- Az XFDF annotáció-importálás/exportálás mostantól megőrzi a beszúrásjel (caret) annotációk alapértelmezett megjelenési adatait a
<defaultappearance>gyermekelemen és a PDF annotációDAbejegyzésén keresztül
Version 2.373.0
Fixed
- Az XFDF annotáció-importálás/exportálás mostantól megőrzi a beszúrásjel (caret) annotációk keretgeometriáját a
fringeattribútumon és a PDF annotációRDbejegyzésén keresztül
Version 2.372.0
Fixed
- Az XFDF annotáció-importálás/exportálás mostantól megőrzi a bélyegző (rubber stamp) annotációk forgatását a
rotationattribútumon és a PDF annotációRotatebejegyzésén keresztül
Version 2.371.0
Fixed
- Az XFDF annotáció-importálás/exportálás mostantól megőrzi a szöveges annotációk válaszkapcsolatait az
inreplyto,replyType, valamint a PDF annotációIRTandRTbejegyzésein keresztül
Version 2.370.0
Added
- A letiltott vízszintes görgetésű XFA numerikus, dátum-idő és jelszómezők mostantól olyan AcroForm szöveges widgetekké laposodnak (flatten), amelyek a PDF görgetést tiltó flagjével rendelkeznek
Version 2.369.0
Added
- XFA text fields with disabled scroll policies now flatten to AcroForm text widgets with the PDF do-not-scroll flag
Version 2.368.0
Added
- XFA text fields with
multiLine="1"now flatten to AcroForm text widgets with the PDF multiline flag
Version 2.367.0
Added
- XFA subform access restrictions now inherit into child widgets so generated AcroForm fields stay read-only when an ancestor is
readOnly,protected, ornonInteractive
Version 2.366.0
Added
- XFA choice-list flattening now maps
commitOn="select"to the AcroForm commit-on-selection-change flag for generated choice fields
Version 2.365.0
Added
- XFA choice-list flattening now maps
open="always"lists to single-select AcroForm list boxes instead of drop-down combo boxes
Version 2.364.0
Added
- XFA choice-list flattening now maps
textEntry="1"combo lists to editable AcroForm combo boxes while preserving typed values outside the option list
Version 2.363.0
Added
- XFA choice-list flattening now prefers
<items save="1">values when a field carries separate display and saved-value option lists
Version 2.362.0
Fixed
- XFDF annotation import/export now preserves FreeText
justificationandtailattributes through the PDF annotationQandITentries - JBIG2 document defaults now match the documented scan-friendly settings for lossy level, isolated black-pixel cleanup and black-dot size
Version 2.361.0
Fixed
- XFDF annotation import/export now preserves standard line leader and caption attributes, including
leaderLength,leaderExtended,caption,leader-offset,caption-style, caption offset values and the import-sideleaderExtendspelling used by compatible XFDF files
Version 2.360.0
Added
- XFA flattening now suppresses output for fields and static draws concealed by
presence="hidden",presence="invisible", orpresence="inactive", including descendants of concealed containers
Version 2.359.0
Added
- XFA flattening now maps field-level
access="readOnly",access="protected", andaccess="nonInteractive"restrictions to the generated AcroForm read-only flag
Version 2.358.0
Added
- XFA flattening now preserves
<choiceList open="multiSelect">semantics by setting the PDF multi-select flag on the generated AcroForm list box
Version 2.357.0
Added
- XFA flattening now maps
<ui><passwordEdit>fields to AcroForm text fields with the PDF password flag, preserving bound values while allowing readers to treat the field as password-style input
Version 2.356.0
Added
- XFA flattening now honours explicit
<bind match="none">field bindings, so fields marked as unbound remain blank instead of taking same-name values from the XFA form or datasets packets
Version 2.355.0
Added
- XFA flattening now honours simple explicit
<bind match="dataRef" ref="...">field bindings such as$record.customer.legalName, soApplyXFAAsAcroFormandFlattenLoadedXFApreserve values stored under a different data node name before automatic same-name matching
Version 2.354.0
Fixed
- XFDF annotation import/export now preserves link annotation
BorderStyleAltchildren through the PDF annotationBorderarray, including corner radii, width and dash pattern values
Version 2.353.0
Fixed
- XFDF annotation import/export now preserves standard
interior-colorattributes for line, square, circle, polygon, polyline and redaction annotations through the PDF annotationICcolor array
Version 2.352.0
Fixed
- XFDF annotation import/export now preserves standard annotation border style and cloudy border effect attributes, including
width,dashes,styleandintensity
Version 2.351.0
Fixed
- XFDF annotation import/export now preserves annotation rich text through
<contents-richtext>and imports popup child geometry and open state into annotationPopupdictionaries
Version 2.350.0
Fixed
- XFDF annotation import/export now preserves additional standard annotation attributes: text open and review state values, line endpoint styles, link and redaction
coords, FreeText default style, default appearance and rotation, and square or circle fringe geometry
Version 2.349.0
Fixed
- XFDF annotation import/export now follows ISO 19444-1 structures for lines, polygons, polylines and ink annotations: line exports include full
start/endcoordinate pairs, polygon and polyline data uses<vertices>child elements, ink data uses<inklist><gesture>, semicolon-separated coordinate pairs import correctly, and unsupported annotation subtypes no longer inflate the exported count
Version 2.348.0
Added
LoadedPageCountproperty,DuplicateLoadedPage,AddLoadedBlankPage,SetLoadedPageRotationValueandGetLoadedPageBoxRectround out the loaded-document page-operation API — duplicate pages, insert blank separators, set rotation and read any of the five page boxes in one callGetLoadedEncryptionMethodreturns the cipher name (RC4-40/RC4-128/AES-128/AES-256),GetLoadedFileStructureInfoaggregates linearization / object-stream / xref-type in one call,LoadedSourceFileSizeis a property, andSetLoadedPDFVersionupdates the versionStampLoadedPageImageandStampLoadedPageImageFromFileembed a JPEG Image XObject (logo / signature image / QR code) onto a loaded page at a given rectangle,InsertLoadedTextdraws a single-line text run, andGetLoadedPageContentLengthreturns the decoded byte countTHPDFPrintOptionsgainsIgnoreHardMargin(offset printer hard margins so content is not clipped) andAutoRotate(landscape pages print landscape automatically)SaveLoadedPagesAsImagesgainsBMPPixelFormat/BMPMonochrome(mono / 8-bit export) andJPEGScale(1 / 2 / 4 / 8 sub-sampled JPEG decode for fast thumbnails)CompressLoadedDocumentzlib-compresses every uncompressed stream in the loaded object graph and writes/Filter /FlateDecode, shrinking output size
Fixed
StampLoadedPageTextandStampLoadedPageImagenow transparently decompress FlateDecode content streams before appending operators — previously stamping onto a compressed/Contentssilently corrupted the zlib payload and the appended text/image disappeared
Version 2.347.0
Added
AddLoadedOutlinecreates a new bookmark on a loaded PDF at any nesting level (ParentIndex = -1for top-level), with a/Dest [page /XYZ x y zoom]target — the single highest-requested loaded-document feature, closing the gap that HotPDF could read/modify/delete bookmarks but never create themSetLoadedOutlineDestinationandSetLoadedOutlineURIrewrite an existing bookmark’s target page or switch it to a URI actionResolveLoadedNamedDestinationturns a named destination string into a zero-based page index, andAddLoadedNamedDestinationregisters a new anchor on the loaded document’s/Names /DeststreeGetLoadedBookmarkPageIndexis a convenience lookup: pass a bookmark title, get back the page it points to
Version 2.346.0
Fixed
- Image scaling quality now honours
/Interpolate: HALFTONE stretch mode is used by default (smooth downscale) and COLORONCOLOR when the image explicitly sets/Interpolate false, so small raster images keep their hard edges where the author intended instead of always blurring
Version 2.345.0
Fixed
- TJ array kerning adjustments are no longer discarded: the numeric elements between string runs advance the text matrix by
-value × FontSize / 1000, so tightly-spaced titles and logo lettering from Word / Illustrator place glyphs at the intended offsets - Tw (word spacing) now also fires on the CID ideographic space (U+3000, code
$3000), so justified Japanese / Chinese text gets its word spacing instead of only ASCII code 32 - Font weight / italic detection now consults
/FontDescriptor /Flags(bit 18 ForceBold) and/ItalicAnglein addition to the/BaseFontname, so subset-prefixed fonts whose name carries no-Boldsuffix still render at the right weight
Version 2.344.0
Added
GetLoadedTrappedreads the/Trappedkey from the Info dict (True/False/Unknown), where it was previously write-only — PDF/X preflight workflows can now round-trip the trap stateGetLoadedDocumentMetadataXMLreturns the raw XMP metadata stream bytes so PDF/A documents whose Info dict is absent can still exposedc:title/dc:creator/xmp:CreateDateGetLoadedCollectionInforeads the/CollectionName of a PDF Portfolio (EmbeddedFiles name tree still carries the file list)GetLoadedOutlineChilddescends one level into the bookmark tree, returning the/Firstchild of a top-level outline entry, so nested chapter / sub-chapter bookmarks are no longer invisibleRotateLoadedPagesrotates every page in a range by a given angle (accumulating onto existing/Rotate), the batch counterpart to per-page rotationSetLoadedPageBoxForRangesets a page box (Media/Crop/Bleed/Trim/Art) for every page in a range in one callGetLoadedViewerPreferencesnow also readsHideWindowUIandCenterWindow, matching the six keys the writer emits (previously only four came back)
Version 2.343.0
Fixed
- The
W n/W* nclip idiom now applies the clip: thenoperator builds the pending path and callsSelectClipPathinstead of discarding both the path and the pending clip, so rect / container clips written asre ... W nno longer leak their contents past the boundary SetMiterLimitis now pushed to GDI before building the stroke pen, so sharp joins honour the PDF miter limit (default 4) instead of GDI’s default 10 — eliminating the long spikes on acute-angle joins- Type 3 glyphs declared with
d0(colour-permitting) now explicitly clear the colour-suppress flag, so a precedingd1glyph no longer bleeds its colour suppression into ad0glyph
Added
ri(rendering intent) andi(flatness) operators are now consumed and stored on the graphics state (RenderingIntent/Flatnessfields), where they were previously silently skipped
Version 2.342.0
Added
- Text rendering mode operator
Tris now consumed; mode 3 (invisible) skips painting the text run entirely, so the OCR / form-background hidden text layer no longer paints as overlapping garbage glyphs — the most commonTrcase in real-world PDFs. Modes 1 / 2 (stroke) currently fall back to fill pending per-glyph outline support - Marked-content operators
BMC/BDC/EMCand theDP/MPproperty variants now maintain a depth counter on the renderer, the prerequisite for a later round’s OCG / OCMD visibility evaluation;BX/EXcompatibility operators maintain their own counter so the renderer knows it is inside a compatibility block
Version 2.341.0
Fixed
- Bezier shorthand operators
vandyare now handled by the page renderer, where they were previously silently skipped — rounded rectangles, circles and the curves produced by Illustrator / PowerPoint / InDesign render correctly instead of being truncated or dropped DrawTextRunnow honoursTz(horizontal text scaling),Tw(word spacing, applied to the space glyph) andTs(text rise) so justified Word exports place glyphs at the right width, headings that are horizontally stretched/squeezed keep their length, and super/subscript text lifts off the baseline — previously those three text-state values were stored but never consumed
Version 2.340.0
Added
SearchLoadedPageTextWholeWordfilters the substring matches produced bySearchLoadedPageTextdown to those that sit on word boundaries (the glyph before the match start and after the match end must not be a word character), providing whole-word matching without padding the search string with a trailing spaceGetLoadedSearchHitRectcollapses a match’s glyph range into a single bounding rectangle (user-space Left/Top/Right/Bottom, padded by a fraction of the font size), so a viewer can draw one highlight box per hit instead of walking the glyph array
Version 2.339.0
Added
ExtractLoadedPageTextColumnsreconstructs multi-column text: glyphs are clustered into baselines by a Y tolerance, each row is sorted by X, and a row splits into separate columns (tab-separated) wherever the gap between consecutive glyphs exceeds a configurable multiple of the median glyph advance — the column-aware counterpart toExtractLoadedPageTextLayoutthat previously declared column detection out of scopeTHPDFPageElementnow carries aBaselineRole(brNormal/brSuperscript/brSubscript) populated byEnumLoadedPageElements: a run whose font size is markedly smaller than the page median and whose Y origin sits above or below the dominant baseline is flagged
Version 2.338.0
Fixed
- Image XObjects are now placed by transforming the unit square through the current CTM, instead of being stretched across the whole page bitmap — the previous
StretchDraw(Rect(0,0,W,H))misplaced every image on the page; images now land in the rectangle the content stream actually specifies
Added
/ImageMaskstencil images are detected on the render side and painted with the current fill colour (PDF 8.9.6.1), where the renderer previously drew them as a plain greyscale bitmap
Version 2.337.0
Added
- Render-side stroke style: the page renderer now honours the
J(LineCap: butt/round/square),j(LineJoin: miter/round/bevel),M(MiterLimit) andd(LineDash array + phase) operators by building a geometric pen viaExtCreatePeninstead of the previous fixedCreatePen(PS_SOLID, ...), so rounded joins, dashed borders and square end caps render correctly - Render-side
gs(ExtGState) operator: the named ExtGState dictionary in/Resources/ExtGStateis now consumed forLW/LC/LJ/ML/ca/CAand applied to the graphics state, where the renderer previously dropped the operator entirely - Graphics state extended with
LineCap/LineJoin/MiterLimit/LineDash/DashPhase/FillOpacity/StrokeOpacityfields, all with PDF-default initial values
Fixed
- Clip (
W/W*) now sets the GDI polygon fill mode (ALTERNATEvsWINDING) beforeSelectClipPath, so even-odd and nonzero-winding clip intersections are no longer identical
Version 2.336.0
Security
- The render-side
/Indexedcolour-space parser now clampsHiValto the spec-mandated[0..255]range, closing a buffer-overread vector where a malformed HiVal letnComps × indexHighoverflow a 32-bit byte count and read past the lookup table
Added
AttachLoadedAnnotationMeasurewrites a/Measuredictionary (PDF 1.7 §12.5.6.13) onto a Line or Polygon annotation, carrying the/NumberFormatarray (unit label, decimal/fraction/round style, precision), the/Scaleratio and the/CYXisotropy factor — so a viewer can compute the real-world distance or area the shape spans
Version 2.335.0
Added
- Render-side
sh(shading) operator: axial (Type 2) and radial (Type 3) shadings are now painted instead of silently dropped, so PDFs whose backgrounds rely on Word/Excel-style gradients render their colour blend. The shading is discretised into bands along its axis and each band is filled with the colour the shading’s function evaluates to at that point
Version 2.334.0
Added
- Render-side function-object evaluator
HPDFEvalTintTransformnow resolves Type 2 Exponential (C0 + xN·(C1-C0)with Domain/Range clamping), Type 0 Sampled (8/16/32-bit, Encode mapping, nearest-sample) and Type 3 Stitching (Bounds-selected sub-function recursion) — soSeparation/DeviceNtint transforms and shading functions evaluate to real alternate-space colours instead of the v2.333.0 grey fallback. Type 4 PostScript calculators degrade gracefully - The page renderer now wires the colour-space unit’s indirect-ref resolver and decoded-stream reader to its document access at construction time, so tint-transform stream objects can be decoded through the same path as image XObjects
Version 2.333.0
Added
- Render-side CIE-based colour spaces:
CalGray,CalRGB(gamma + 3×3 matrix) andLab(Lab→XYZ→sRGB with the 6/29 breakpoint cube) now resolve to real colours instead of degrading to black; the Bradford-adapted sRGB matrix is cached per white point so per-pixel work stays a single 3×3 multiply - Render-side
ICCBasedcolour space resolves through its/Alternate(or an N-based DeviceRGB/Gray/CMYK guess when Alternate is absent), so pages carrying an ICC profile display correctly without an lcms dependency - Render-side
SeparationandDeviceNspot-colour spaces: the alternate space, tint-transform function reference and component count are parsed; the tint transform is wired through a pluggable evaluator so spot-colour pages are distinguishable from “colour not set” (full tint evaluation lands with the function engine) - Generic colour operators
cs/CS/sc/SC/scn/SCNnow handled by the page renderer, the prerequisite for every non-Device colour space to take effect on a loaded page - Unified colour resolution through
HPDFResolveColorwith the extendedTHPDFColorSpaceFamilyandTHPDFCIEParamsrecords, replacing the per-space ad-hoc logic
Version 2.332.0
Added
RenderSignatureFieldAppearancepaints a preset signature-field appearance template — border, light fill and up to four labelled text lines (“Digitally signed by <Name>”, “Reason: ”, “Location: ”, “Date: ”) — selected via aTHPDFSignatureDisplayOptionsset as a convenience wrapper aroundAttachSignatureFieldAppearanceEnumerateSystemCertificateswalks a Windows certificate store (typicalMY/ROOT/CA) via dynamically loadedCrypt32.dlland returns subject / issuer display names plus the raw DER for each certificate, the building block for a “pick a certificate / USB Key” signer UI
Security
- Signature hash algorithm is SHA-256 by default with PAdES Seed Value
DigestMethodsalready accepting SHA-256 / SHA-384 / SHA-512, so no SHA-1 signing path exists
Version 2.331.0
Added
RenderLoadedPageToDCdraws one page straight into a caller-supplied device context (printer canvas, off-screen surface, customTCanvas), removing the bitmap round-trip for print and high-DPI workflowsRenderLoadedPageToClipboardplaces a page on the clipboard either as a 24-bit bitmap or as an enhanced metafile (vector text), so paste-into-Word / paste-into-image-editor just worksPrintLoadedDocumentwith aTHPDFPrintOptionsrecord drives the VCLTPrinterthrough a page range, DPI, copies, collation, FitPage scaling and per-page render — the document library now ships its own print path instead of leaving every caller to wire one up
Version 2.330.0
Added
GetLoadedPageLabelreads back the/PageLabels /Numsrange that covers a given page index, returning the style code, prefix and start number — the read counterpart toSetLoadedPageLabel, so labels a caller did not create itself can now be inspected and round-trippedStitchLoadedPageSideBySideExperforms the side-by-side 2-up stitch with a configurable horizontal gutter and source-page scale factor, where the legacyStitchLoadedPageSideBySidewas fixed to half width with no gap
Version 2.329.0
Added
AddLoadedRubberStampAnnotationwith aTHPDFRubberStampIconenum covering all 14 standard stamp names (Approved, AsIs, Confidential, Departmental, Draft, Experimental, Expired, Final, ForComment, ForPublicRelease, NotApproved, NotForPublicRelease, Sold, TopSecret) so viewers render the familiar bitmaps without a custom appearance streamSetLoadedAnnotationCloudyBorderturns a Square / Circle / Polygon annotation into a cloudy (cloud-burst) border by writing/BE /S /C /Iplus the/ICinterior colour arraySetLoadedLineAnnotationCapssets the/LEline-end (arrowhead) styles for Line / Polyline annotations from the newTHPDFLineEndStyleenum (None / OpenArrow / ClosedArrow / Butt / ROpenArrow / RClosedArrow / Slash / Diamond)
Version 2.328.0
Added
EnsureLoadedFieldAppearanceStreamgenerates a/AP /NForm XObject for an existing AcroForm field from its/DA+/V+/Rect, so viewers that ignore/NeedAppearancesstill render the field value without a round-trip through AcrobatApplyLoadedFieldValidationattaches a Format / Keystroke / Validate script trio to a field using the AcrobatAF*helpers, covering Number, Percentage, Date, Time, Currency, ZipCode, SSN, Phone and ArbitraryMask input kinds — the caller no longer has to hand-writeAFNumber_Format/AFDate_FormatEx/AFRange_ValidateJavaScriptApplyLoadedFieldCalculationattaches anAFSimple_Calculatescript so a field aggregates the values of a named source field set via Sum / Average / Product / Minimum / Maximum
Version 2.327.0
Added
- Visual search-and-replace
SearchAndRedactReplaceLoaded: for every hit of the needle it masks the match rectangle with a chosen colour (or skips the mask withHPDF_NO_MASK) and stamps the replacement text on top, complementing the byte-levelReplaceLoadedPageTextwhen the original font lacks a reverse char-code table or the replacement needs a different font - Region text extraction
GetLoadedPageTextInRegionconcatenates every glyph whose origin falls inside a user-space rectangle, with newlines between baselines — the building block for “copy text from this box” UI flows - Cursor-style
SearchLoadedFirstreturns the first match as a singleTHPDFTextMatch, so callers can walk hits without managing a whole match array
Version 2.326.0
Added
- Document-wide
MeasurementUnitproperty (muPoints/muPixels/muInches/muMM/muCentimeters/muTwips) so every high-level authoring coordinate is converted to PDF points throughToPDFUnit/FromPDFUnit - Placeholder substitution in watermark text:
<%PageNo%>,<%TotPage%>,<%FileName%>,<%ShortDate%>,<%LongDate%>,<%ShortTime%>,<%LongTime%>are resolved per page when stamping, so “Page X of Y” and dated stamps are one call AddTextWatermarkExpage method that combines placeholder substitution, unit-aware coordinates and a unifiedTHPDFWatermarkBaserecord (angle, opacity, position presets)- Shape-watermark page helpers
AddRectangleWatermark,AddEllipseWatermark,AddLineWatermarkandAddPolygonWatermark, each wrapping the path primitives in aq/Qgraphics-state pair with registered fill/stroke alpha - Unified
THPDFWatermarkTemplaterecord withMakeText/MakeRectangle/MakeEllipse/MakeLine/MakePolygonfactories plus aTHPDFWatermarkTemplateArraycomposite type - Loaded-document watermarking:
StampLoadedPageTextandStampLoadedPagesTextappend a transparent, rotated text run to existing pages, honouring theMeasurementUnitand the same placeholder set;StampLoadedPagesCompositeapplies a whole template array (text + shapes) to a page range - Z-order control on loaded-document stamps:
Underlay = Trueprepends the watermark stream before the existing/Contentsvia the array form, so the watermark renders behind the page content EnumLoadedPageElementsreturns text runs (glyphs aggregated by baseline + font) and image XObject placements asTHPDFPageElementrecords with bounding boxesSaveLoadedPagesAsImagesmulti-format export: BMP / JPEG / PNG raster plus EMF / WMF vector, one file per page, with configurable DPI, file-name prefix and JPEG qualityGetLoadedPageMetafilevector render of one page to aTMetafilevia the newTHPDFPageRenderer.ExecuteToDCpath, keeping text and vector paths scalable for print, clipboard and merge workflows
Version 2.325.3
Fixed
- Aggregating batch preflight reports no longer overflows the total-bytes count when a single input file is over 2 GB
Version 2.325.2
Fixed
- Saving a document over 2 GB with object streams enabled (
UseObjectStreams) no longer writes a corrupted cross-reference stream; the object offsets and cross-reference stream position, previously narrowed to a 32-bit integer, are now carried as 64-bit values through the whole write
Version 2.325.1
Fixed
- Four recovery-only scans used when a damaged PDF cannot be parsed normally — object-stream decompression, object-stream discovery, and two reference-repair passes — no longer read a file over 2 GB into a truncated buffer; each now skips that fallback on such a file instead of scanning corrupted data
Version 2.325.0
Added
- EMF/WMF import now renders
EMR_GRADIENTFILLrectangle gradients (GRADIENT_FILL_RECT_H/GRADIENT_FILL_RECT_V) as PDF Type 2 axial shading patterns, mapping eachTRIVERTEXcolour pair to anRegisterAxialGradientcall and filling the rectangle with the resulting pattern; previously this record was a documented no-op, now Word/Excel/PowerPoint gradient rectangles in EMFs render with the correct left-to-right or top-to-bottom colour blend
Version 2.324.0
Added
- EMF/WMF import now parses
EMR_GDICOMMENTcomments, distinguishing Adobe PDF passthrough markers (0x416F4650= "AoFP", MS-EMF §2.3.3) from other comment types. When the Adobe marker is present the comment payload is scanned for thepdfmarkkeyword and surfaced via debug logging so users can identify which EMF producers emit PostScript pdfmark fragments; other comment types remain no-ops. Both HotPDF and llPDFLib previously carried only an empty stub for this record
Version 2.323.0
Added
- EMF/WMF import now explicitly recognises
EMR_GRADIENTFILLas a documented no-op (PDF Type 2/3 shading patterns could express gradient fills but viewer rendering is inconsistent and GDI's per-pixel Gouraud interpolation does not map cleanly); previously this record was silently dropped without a case-table entry
Version 2.322.0
Changed
- PFX-based signing now routes inputs of 64 MB or larger through a streaming chunked signer (
HPDFCMSSignPDFStreamChunked) that scans for the/ByteRange+/Contentsplaceholders in 256 KB rolling reads, digests the two byte-range windows viaHPDFCMSSHA256StreamRanges, then copies the input stream to the output stream while patching the placeholder bytes in flight, so peak memory stays bounded by the 256 KB buffer instead of the entire file size; smaller inputs keep the fast in-memoryPos()+Move()path unchanged
Version 2.321.0
Added
- Optional-content group usage dictionaries:
SetOptionalContentGroupUsageattaches a/Usageentry to a registered OCG (PDF 1.7 §8.11.4.4 Table 100) so viewers auto-show/hide layers by context. CategoriesView/Print/Exportwrite<Category>State=ON/OFF;Zoomwrites a real-pairMin;Language/Creatorwrite string values - Outline subtree copy:
THPDFDocOutlineObject.CopySubtreedeep-clones the entire child subtree of a node under a new parent, propagating Title / Color / Bold / Italic / Opened while minting fresh object numbers and new destinations - Outline topology helpers
IsDescendant(cycle-safe predicate used byMoveTo) andMoveTo(re-parent a node, detaching from its old sibling chain and re-attaching as the last child of the new parent, with full/Prev//Next//First//Last//Countmaintenance on every affected ancestor)
Version 2.320.0
Added
- Nested optional-content /Order tree:
BeginOptionalContentOrderGroup/AddLayerToOptionalContentOrder/EndOptionalContentOrderGroupbuild a labelled, arbitrarily nested presentation tree (PDF 1.7 §8.11.4.3/Order) so the layers panel can show hierarchical groupings like "Background [Lines Fills Images]" instead of the historical flat list. When none of the new helpers are called the previous flat /Order mirroring/OCGsis preserved byte-for-byte
Version 2.319.1
Fixed
- Loading a PDF whose embedded JBIG2 image uses the standard Huffman coding option (rather than the more common MQ arithmetic coding) no longer fails outright: the loader now retries with the alternate decoding engine before giving up, so such images load successfully regardless of which decoding engine is preferred
Version 2.319.0
Changed
- EMF/WMF import now applies a centralised InPath gate at the
ExecuteRecordentry: while a path bracket is open (BeginPathseen,EndPath/AbortPathnot yet reached) only path-construction records (line/curve/polygon/move/close/end/abort plus the coordinate-system and DC-state records) reach their handlers; text and bitmap records that previously leaked into the open path are now dropped centrally, mirroring llPDFLib's entry-point guard and eliminating a class of malformed-PDF bugs from stray records inside a path bracket
Version 2.318.0
Added
- Optional-content radio-button groups: new
RegisterOptionalContentRadioGroupdeclares mutually exclusive layer sets whose members turn each other off (PDF 1.7 §8.11.4.3/RBGroups); typical use is single-choice layer panels like "Draft / Review / Final"
Version 2.317.0
Added
THPDFDocOutlineObject.InsertBefore/InsertAftersplice a new sibling into the existing outline doubly-linked list at an arbitrary position, complementing the existingAddChild(append) andAddChildFirst(prepend) helpers so outline trees can be built in any order without detaching and re-attaching nodes- EMF/WMF import now explicitly recognises the ICM/palette family (
EMR_SETBRUSHORGEX,EMR_SELECTPALETTE,EMR_SETCOLORADJUSTMENT,EMR_SETICMMODE,EMR_CREATECOLORSPACE,EMR_SETCOLORSPACE,EMR_DELETECOLORSPACE,EMR_GDICOMMENT) and the no-PDF-mapping family (EMR_FRAMERGN,EMR_INVERTRGN,EMR_PAINTRGN,EMR_FLATTENPATH,EMR_WIDENPATH,EMR_SETMETARGN,EMR_OFFSETCLIPRGN,EMR_PLGBLT,EMR_POLYTEXTOUTA,EMR_POLYTEXTOUTW), forwarding to the GDI reference DC where applicable without emitting to the PDF content stream; previously these records were silently dropped, now they are documented and kept consistent with the GDI side
Version 2.316.0
Added
- New
JBIG2Benchmarkdemo generates four PDFs from the same three-page synthetic scan, one perTHPDFJBIG2Optionsconfiguration (per-image lossless, per-imageLossyLevel=5, cross-page accumulated globals, rectangle symbol extraction), printing each output size so the trade-offs between the v2.310.0 scan-friendly defaults, the v2.314.0 cross-page accumulator, and the extraction modes can be compared directly
Version 2.315.0
Changed
- The cross-page accumulated JBIG2 dictionary now auto-batches: once the running glyph-width total crosses 131071 pixels the current dictionary is frozen, emitted as one
/JBIG2Globalsstream, and the accumulator is reset, so the next batch starts a fresh globals stream. Mirrors llPDFLib'sTotalWidth-based spilling and keeps individual globals streams at a size readers handle efficiently on very large scan runs
Version 2.314.0
Added
- Cross-page accumulated JBIG2 symbol dictionary: opt in with
THPDFJBIG2Options.AccumulateGlobalsAcrossPages := True(alongside the existingUseSymbolDictionary+UseGlobalSegments+ native fallback switches) and consecutive 1-biticJBIG2images share one growing in-memory symbol dictionary and one/JBIG2Globalsindirect stream, instead of each image emitting its own dictionary. NewTHPDFJBIG2SymbolDictionaryholds the persistent glyph set with the same lossy / lossless matching the per-image encoder uses; newsmoke_jbig2_accum_decodeverifies two pages of different glyph layouts share a single globals object reference and decode back to the source pixels bit-for-bit
Version 2.313.0
Added
- JBIG2 global-segment streams produced by the native symbol-dictionary encoder are now content-addressed at the document level via
THPDFJBIG2GlobalsPool, so images that yield byte-identical globals share one/JBIG2Globalsindirect stream instead of each emitting their own; newsmoke_jbig2_globals_multismoke covers three pages of identical glyphs collapsing onto a single shared globals stream
Version 2.312.0
Added
- EMF/WMF import now covers
EMR_SCALEVIEWPORTEXTEX,EMR_SCALEWINDOWEXTEX,EMR_EXCLUDECLIPRECT,EMR_CREATEDIBPATTERNBRUSHPT,EMR_SETMITERLIMIT,EMR_SETTEXTJUSTIFICATION, andEMR_SETROP2, closing the seven-record gap with llPDFLib so EMF streams emitted by older GDI toolchains no longer silently drop those records;SETMITERLIMITandSETROP2take effect immediately, while the others store state for a later render-side hookup without perturbing current coordinate or clip output
Version 2.311.0
Added
HPDFCMSSHA256StreamRangesnow digests the two PDF/ByteRangewindows straight from aTStreamin 256 KB chunks, so multi-GB signed PDFs can be hashed without first copying the whole file into anAnsiString; closes the gap with llPDFLib's stream-basedCalcHash, which the existing in-memoryHPDFCMSSHA256ByteRangescould not match for very large inputs
Version 2.310.0
Changed
THPDFJBIG2Optionsnow defaults to scan-friendly settings (LossyLevel = 5,RemoveIsolatedBlackPixels = True,BlackDotSize = 3) so 1-bit scanned images compress much smaller out of the box; setLossyLevel = 0orLossless = Trueto restore strict lossless matching
Performance
- xref table growth is now geometric (small documents +N, larger documents +25%) instead of reallocating the dynamic array on every indirect object, removing the O(n²) cost that dominated loading and building large PDFs with many objects
Version 2.309.4
Added
- Added
THPDFDocOutlineObject.AddChildFirstso generated outline nodes can prepend a child item before existing siblings while preserving the saved outline order
Version 2.309.3
Added
- Added
pmUseOCtoTHPDFPageModeso generated documents can request the optional-content layers panel with catalog/PageMode /UseOC
Version 2.309.2
Added
- Added title-string overloads for
THPDFPage.AddTextAnnotationso generated text annotations can write the PDF/Ttitle or author entry while preserving the existing icon, color, and open-state arguments
Version 2.309.1
Fixed
- Clearing
THotPDF.OutputStreamby assigningnilnow restores normalFileNameoutput instead of leaving the document in stream-output mode
Version 2.309.0
Fixed
- EMF/WMF import now honors
EMR_EXTSELECTCLIPRGNregion modes for copy, intersect, and exclude clipping while keepingEMR_SETWORLDTRANSFORM,EMR_MODIFYWORLDTRANSFORM, andEMR_SETPIXELVcovered by non-GUI regression tests
Version 2.308.0
Added
- FastReport add-on design-time registration now ships as
frxHotPDFDesign, placingTfrxHotPDFExporton the FastReport VCL palette while keeping the existing runtime unit andRegisterentry point available for compatibility
Version 2.307.0
Added
SignPDFWithPFXnow parses legacy PKCS#12 PBE-SHA1-3DES encrypted PFX files in addition to PBES2 AES-256-CBC profiles
Version 2.306.0
Changed
- Repeated calls that add the same encoded image now reuse the existing PDF image XObject while preserving distinct output for different JPEG quality settings and mask relationships
Version 2.305.0
Added
TfrxHotPDFExport.PageRangenow lets FastReport exports opt in to one-based page filtering such as1,3-5while reusing HotPDF's shared page-range parser
Version 2.304.0
Fixed
- XFA-to-AcroForm table flattening now lets all-growable single auto columns inherit the table content width, so fields without their own
wstill receive a measurable width and preserve row spacing
Version 2.303.0
Fixed
- XFA-to-AcroForm table flattening now lets growable text cells inherit fixed
columnWidthsvalues when they omit their ownw, so row heights are measured and following rows stay separated
Version 2.302.0
Fixed
- XFA-to-AcroForm flattening now measures growable text fields inside nested
layout="tb"and wrappedlayout="lr-tb"flows, and table rows now keep growable text-cell height when positioning following fields
Version 2.301.0
Fixed
- XFA-to-AcroForm flattening now keeps text fields in
layout="tb"andlayout="lr-tb"flow containers when they omit an explicithheight, measuring their wrapped content height instead of skipping them as unsupported growable layout
Version 2.300.0
Fixed
THotPDF.ExtractObjectFromStreamnow returns the parsed dictionary for materialized object-stream members and no longer fabricates raw-data diagnostic keys when callers inspect loaded PDF 1.5+ object streams
Version 2.299.0
Added
THotPDF.DecompressAllObjectStreamsis now public and forces loaded PDFs that used object streams to save with compact objects materialized as normal indirect objects instead of copying the source object-stream layout
Version 2.298.0
Fixed
- AcroForm field creation now rejects duplicate root field names for both new documents and loaded-document editing while preserving the valid shared-parent workflow for radio button groups
Version 2.297.0
Added
TDBGridHotPDFExportOptionsand theTDBGridHotPDFExportcomponent now exposePDFAComplianceandPDFXComplianceso DBGrid table exports can opt in to the same HotPDF standards-conformance gates used by direct document generation
Version 2.296.0
Added
TQRHotPDFExportFilterandTdxHotPDFExportOptionsnow exposePDFAComplianceandPDFXComplianceso QuickReport and DevExpress exports can opt in to the same HotPDF standards-conformance gates used by direct document generation
Version 2.295.0
Added
TfrxHotPDFExportandTppHotPDFDevicenow exposePDFAComplianceandPDFXComplianceso report exports can opt in to the same HotPDF standards-conformance gates used by direct document generation
Version 2.294.0
Added
- Form XObject and tiling pattern canvas builders now let callers compose reusable resources through typed drawing helpers before registering them for page reuse
THPDFExtGStateOptionsnow lets one ExtGState combine transparency, blend mode, line width, line cap, line join, and miter limit settings
Version 2.293.0
Added
- Native JBIG2 encoding now supports symbol-dictionary compression with optional shared global dictionaries, rectangle and image-only extraction modes, lossy pixel-difference guards, and PDF/A fallback to CCITT where JBIG2 is not permitted
- EMF/WMF rendering now handles
TransparentBltandMaskBltbitmap records through PDF image mask and transparency paths - FastReport and ReportBuilder native export modes now cover more object-level output, including styled memo/rich text, barcode, picture, vector shape, line, clipping, frame, dash, and URL annotation paths
- The HugeFileBenchmark demos now report working-set and peak-working-set metrics, support an opt-in memory limit, and keep generated work files separate from report output
- The Delphi
PDFOptimizedemo now documents producer-side compression choices for content streams, object streams, JPEG quality, CCITT, and JBIG2 output
Fixed
- Demo coverage checks now include English-baseline demo READMEs, map consolidated C++Builder samples to their actual files, and keep GUI demos disabled by default in routine test runs
Version 2.292.32
Added
- EMF/WMF hatch brushes now map to PDF tiling patterns so imported CAD drawings and reports can preserve hatch texture instead of flattening those fills to solid color
Fixed
- Loaded-document dictionary edits now mark objects dirty so
SaveLoadedDocumentrewrites changed PDFs instead of copying the original source after outline and object-tree edits - Loaded outline removal now relinks sibling bookmarks, and non-rotated underline and strikeout text decorations now emit filled rectangle operators
Version 2.292.31
Added
THPDFEmfOptions.ShowNullBrushnow lets EMF/WMF rendering expose null-brush fills for diagnostic and CAD-style import workflows while preserving unfilled null brushes by default
Version 2.292.30
Added
THPDFEmfOptions.CanvasOvernow lets page Canvas replay place existing PDF content above the parsed Canvas metafile while the default keeps the current Canvas-on-top order
Version 2.292.29
Added
THPDFEmfOptions.Redrawnow lets EMF/WMF callers keep the default temporary redraw path or opt out and parse the original metafile directly
Version 2.292.28
Added
THPDFEmfOptions.UseFramenow lets EMF/WMF rendering clip imported output to the EMF header frame for metafiles that rely on declared frame bounds
Version 2.292.27
Added
THPDFEmfOptions.ShowNullPennow lets EMF/WMF rendering expose null-pen outlines for diagnostic and CAD-style import workflows while preserving invisible null pens by default
Version 2.292.26
Added
THotPDF.SetFormFieldTooltipnow lets applications assign AcroForm/TUfield hints by field name for widgets created through the existingAdd...field methods
Version 2.292.25
Fixed
TfrxHotPDFExportnative-object mode now preservesTfrxPictureViewclipping and frame rendering when picture views are written directly as HotPDF image XObjects
Version 2.292.24
Added
TfrxHotPDFExportnative-object mode now maps supported horizontal one-dimensional FastReport barcode views directly to HotPDF barcode operators, while keeping human-readable text, checksum generation, supplemental text, rotation, colored bars, and unsupported symbologies on the existing fallback path
Version 2.292.23
Added
TppHotPDFDevicenative draw-command mode now maps supported one-dimensional ReportBuilder barcode draw commands directly to HotPDF barcode operators, while preserving the enhanced-metafile fallback for commands that need human-readable text, add-on codes, check-digit calculation, colored bars, rotation, or unsupported postal symbologies
Version 2.292.22
Fixed
- Automatic PDF viewer launch can now be suppressed in non-interactive runs with
HOTPDF_SUPPRESS_AUTO_LAUNCH=1, and the bundled test and smoke runners enable that guard by default so non-GUI regression runs do not open viewer windows
Version 2.292.21
Added
THPDFPage.ShowMetafileExnow has a per-callTHPDFEmfOptionsoverload, letting callers override EMF/WMF rendering settings for one metafile draw while preserving document-level defaults