LoadFromRangeSource

Asiakirjojen hallinta, suorituskyky

Kuvaus

Lataa ja valitsee PDF:n synkronisen satunnaiskäytön takaisinkutsun kautta mahdollistaen HTTP-asiakasohjelmien, tietokantojen, objektivarastojen ja mukautettujen tallennustarjoajien toimittaa vain ne tavualueet, joita jäsentäjä koskettaa

Syntaksi

Delphi

Function TPDFlib.LoadFromRangeSource(SourceSize: Int64;
  ReadCallback: TPDFlibRangeReadEvent; Const Password: WideString;
  ChunkSize: LongInt= 0; CacheLimitBytes: Int64= 0;
  CoalesceWindowMS: Cardinal= PDF_NET_DEFAULT_COALESCE_WINDOW_MS;
  AvailabilityCallback: TPDFlibRangeAvailabilityEvent= Nil): Integer;

Parametrit

SourceSizeAuktoritatiivinen lähteen kokonaiskoko tavuina
ReadCallbackTakaisinkutsu, joka kopioi tavut absoluuttiselle lähdesiirtymälle
PasswordSalasana, jolla PDF avataan, tai tyhjä merkkijono salaamattomalle asiakirjalle
ChunkSizeTasattu aluehakun granulariteetti; nolla valitsee oletuksen 64 KiB ja arvot alle 4096 käyttävät myös oletusta
CacheLimitBytesEnimmäismäärä tavuja, jotka säilytetään vähiten viimeksi käytettyjen ikkunoiden yli; nolla valitsee oletuksen 4 MiB ja alle yhden lohkon arvot korotetaan yhdeksi lohkoksi
CoalesceWindowMSKullakin absoluuttisella lukemalla ensimmäisen välimuistista puuttuvan lohkon keruuikkuna; oletus on 2 millisekuntia ja nolla poistaa alkuviiveen käytöstä
AvailabilityCallbackValinnainen noutamaton testi tavualueille, jotka ovat jo olemassa progressiivisessa tallennustilassa

Paluuarvot

0Lähdargumentit olivat virheellisiä tai PDF:ää ei voitu ladata; tarkista LastErrorCode
1Asiakirja ladattiin ja valittiin

Huomautukset

Lukutakaisinkutsu vastaanottaa absoluuttisia nollapohjaisia siirtymiä, ja sen on kirjoitettava enintään Count tavua Buffer-puskuriin palauttaen kirjoitettujen määränTakaisinkutsun kohteen ja sen taustalla olevan tallennustilan on pysyttävä kelvollisina, kunnes ladattu asiakirja suljetaan, koska sivun renderöinti, poiminta ja tallennus voivat pyytää lisäalueita myöhemminKutsut ovat synkronisia ja voivat saapua ei-järjestyksessä; lyhyt tulos hyväksytään lähteen fyysisessä lopussa, kun taas odottamaton nollatulos saa latauksen tai nykyisen lykätyn operaation epäonnistumaanKun

AvailabilityCallback on annettu, palauta ei-nollaarvo vain, kun koko pyydetty alue voidaan lukea välittömästi ilman siirtoa tai estävää I/O:taVälimuistissa oleva alue on käytettävissä riippumatta takaisinkutsun tuloksesta;

Nil-takaisinkutsu säilyttää synkronisen käyttäytymisen käsitellen jokaisen kelvollisen lähdealueen käytettävissä olevaksiTasatut lohkot välttävät päällekkäisten lukujen päällekkäiset siirtonoudot, kun taas tavubudjetti rajaa säilytetyn payloadin riippumatta asiakirjan koostaLykätyt objekti- ja segmenttilukemat käyttävät absoluuttisia siirtymiä, joten rinnakkainen työ jakaa saman lohkon pyyntöjä ja yhdistää viereisiä jonossa olevia lohkoja muuttamatta virran paikkakursoriaLähteen takaisinkutsut sarjallistetaan, eivätkä ne saa lukea rekursiivisesti samasta aluevirrastaKäytä

GetRangeSourceDataAvailability

GetRangeSourceCacheInfo-metodia testataksesi sivun, lomakkeen tai epäsuoran objektin riippuvuudet lukematta puuttuviksi ilmoitettuja alueitaKäytä SetRangeSourceCacheLimit-, ClearRangeSourceCache- ja