Tömörítés áttekintése

Áttekintés

A HotPDF többféle tömörítési és kitömörítési útvonalat használ attól függően, hogy új PDF tartalmat generál, vagy meglévő folyamatokat és képeket olvas be külső fájlokból

Fő tömörítési útvonalak

  • FlateDecode: A generált PDF folyamokhoz használatos a THotPDF.Compression tulajdonságon keresztül, a háttérben a zlib-ng-vel zlib-kompatibilis módban, ahol elérhető, 64 bites futásidejű SIMD elosztással
  • CompressionLevel: A THotPDF.CompressionLevel kiválasztja a clNone, clFastest, clDefault vagy clMaximum értéket a kibővített Flate útvonalakhoz
  • LZWDecode: Támogatott a régi PDF és TIFF-stílusú adatokhoz a HPDFLZW.pas egységen keresztül
  • DCT/JPEG: A HotPDF képtámogatása által kezelt szabványos JPEG kép-munkafolyamatokhoz használatos, a háttérben a libjpeg-turbo 3.1.90 verziójával, NASM SIMD gyorsító objektumokkal
  • JBIG2 és JPEG2000: Elérhető a speciális kép-munkafolyamatokhoz, ahol a forrásformátum már ezeket a kodekeket használja

PDF 1.5+ strukturális méretcsökkentés

A PDF 1.5+ kimenet esetén a HotPDF két további strukturális tömörítési útvonalat tud rétegezni a FlateDecode-tömörített folyamok tetejére. Mindkettő opcionális (opt-in) és természetes módon párosítható:

  • UseXRefStream: Helyettesíti a szöveges xref ... trailer kereszthivatkozási táblázatot egy tömörített /Type /XRef folyamra (ISO 32000-1 7.5.8) Nagy dokumentumok esetén a felére vagy a tizedére csökkenti az xref rezsiköltségét
  • UseObjectStreams: Kis közvetett szótárakat (többoldalas dokumentumok, annotációk, AcroForm widgetek, struktúrafamódszerek, opcionális tartalomrétegek) csomagol /Type /ObjStm konténerfolyamokba (ISO 32000-1 7.5.7), amelyekre a 2-es típusú xref bejegyzéseken keresztül hivatkozik. Megköveteli, hogy a UseXRefStream is be legyen kapcsolva. Egy 30 oldalas, csak grafikát tartalmazó smoke teszt fájlmérete a két kapcsoló kombinálásával 14502 bájtról 8488 bájtra (-41.5%) csökken
  • Copy decompression: A DecompressForCopy és a OriginallyCompressed leírják, hogy a betöltött dokumentum másolási útvonalai hogyan materializálják a tömörített forrásfolyamokat

Kapcsolódó egységek

  • HPDFZLib.pas a FlateDecode és prediktor-tudatos inflate segédekhez
  • HPDFLZW.pas az LZW kitömörítéshez
  • HPDFJBIG2.pas a JBIG2 dekódolás támogatásához
  • HPDFJpeg2000.pas és HPDFOpenJpeg.pas a JPEG2000-rel kapcsolatos munkafolyamatokhoz

See Also