Třída THPDFRandomAccessSource
Abstraktní základní třída, která umožňuje funkci THotPDF.LoadFromRandomAccessSource načíst PDF z jakéhokoli uživatelem definovaného seekovatelného bajtového úložiště bez nutnosti implementace TStream
Deklarace
THPDFRandomAccessSource = class
public
function GetSize: Int64; virtual; abstract;
function ReadAt(Offset: Int64; var Buffer;
Count: Longint): Longint; virtual; abstract;
end;
Unit
HPDFDoc
Členové
| Název | Účel |
|---|---|
GetSize | Vrací stabilní bajtovou délku zálohovacího úložiště |
ReadAt | Načte Count bajtů začínajících od Offset do Buffer |
Poznámky k použití
- Odvoďte podtřídu a přepište obě abstraktní metody pro přizpůsobení HotPDF HTTP range požadavkům, databázovým BLOBům, komprimovaným archivům, šifrovaným svazkům nebo jakémukoli virtuálnímu úložišti, které dokáže dodávat bajty podle offsetu
GetSizemusí vracet stabilní, nezápornou bajtovou délku po dobu životnosti načítání; HotPDF parsuje tabulky křížových referencí a proudy objektů seekováním přes tento zdrojReadAtvrací počet skutečně přenesených bajtů (nula ažCount); parser považuje krátké čtení na dokumentovaném konci souboru za konec proudu, nikoliv za chybu- Zdroj musí zůstat platný, zatímco je načtený dokument používán; předejte
OwnsSource = Truefunkci LoadFromRandomAccessSource, aby HotPDF zdroj automaticky uvolnil