Compression Overview

Yleiskatsaus

HotPDF käyttää useita pakkaus- ja purkupolkuja riippuen siitä, luodaanko uutta PDF-sisältöä vai luetaanko olemassa olevia tietovirtoja ja kuvia ulkoisista tiedostoista

Main Compression Paths

  • FlateDecode: Käytetään luoduille PDF-virroille THotPDF.Compression-ominaisuuden kautta ja sitä tukee zlib-ng zlib-yhteensopivassa tilassa 64-bittisellä ajonaikaisella SIMD-jakelulla, jos se on saatavilla
  • CompressionLevel: THotPDF.CompressionLevel valitsee tilan clNone, clFastest, clDefault tai clMaximum tehostettuja Flate-polkuja varten
  • LZWDecode: Tuettu vanhoille PDF- ja TIFF-tyyppisille tiedoille HPDFLZW.pas-tiedoston kautta
  • DCT/JPEG: Käytetään standardeissa JPEG-kuvatyönkuluissa, joita hallitsee HotPDF-kuvatuki ja joiden tukena on libjpeg-turbo 3.1.90 NASM SIMD -kiihdytysobjekteilla
  • JBIG2 and JPEG2000: Saatavilla erityisissä kuvatyönkuluissa, joissa lähdemuoto käyttää jo kyseisiä koodekkeja

PDF 1.5+ structural size reduction

PDF 1.5+ -tulostuksessa HotPDF voi kerrostaa kaksi ylimääräistä rakenteellista pakkauspolkua FlateDecode-pakattujen virtojen päälle. Molemmat ovat valinnaisia ja sopivat luonnollisesti yhteen

  • UseXRefStream: Korvaa tekstimuotoisen xref ... trailer -ristiviitetaulukon pakatulla /Type /XRef -virralla (ISO 32000-1 7.5.8). Vähentää ristiviitteiden yleiskustannuksia 4–10-kertaisesti suurissa dokumenteissa
  • UseObjectStreams: Pakkaa pienet epäsuorat sanakirjat (monisivuiset dokumentit, annotaatiot, AcroForm-widgetit, rakenne-puun elementit, valinnaisen sisällön tasot) /Type /ObjStm -säiliövirtoihin (ISO 32000-1 7.5.7), joihin viitataan tyypin 2 xref-tietueiden kautta. Vaatii myös, että UseXRefStream on käytössä. 30-sivuinen vain grafiikkaa sisältävä testi kutistuu 14502 tavusta 8488 tavuun (-41,5 %) molempien valintojen ollessa käytössä
  • Kopion pakkauksen purku: DecompressForCopy ja OriginallyCompressed kuvaavat, miten ladatun dokumentin kopiointipolut muodostavat pakatut lähdevirrat

Related Units

  • HPDFZLib.pas FlateDecode- ja prediktoritietoisia inflate-apuohjelmia varten
  • HPDFLZW.pas LZW-dekompressiota varten
  • HPDFJBIG2.pas JBIG2-purkutukea varten
  • HPDFJpeg2000.pas ja HPDFOpenJpeg.pas JPEG2000-liittyviä työnkulkuja varten

See Also