THPDFJBIG2Decoder Class
THPDFJBIG2Decoder = class
constructor Create;
function LoadFromByteArray(ImageData, GlobalData: TJBIG2ByteArray): Boolean; overload;
function LoadFromByteArray(ImageData: TJBIG2ByteArray): Boolean; overload;
function LoadRegionFromByteArray(ImageData, GlobalData: TJBIG2ByteArray;
RegionLeft, RegionTop, RegionWidth, RegionHeight: Integer): Boolean; overload;
function LoadRegionFromByteArray(ImageData: TJBIG2ByteArray;
RegionLeft, RegionTop, RegionWidth, RegionHeight: Integer): Boolean; overload;
function GetScanline(Row: Integer; var Data: TJBIG2ByteArray): Boolean;
property Width: Integer read FWidth;
property Height: Integer read FHeight;
property ScanlineByteWidth: Integer read FScanlineByteWidth;
property LastRegionDecodeStats: TJBIG2RegionDecodeStats read FLastRegionDecodeStats;
property UsedIncrementalRegionDecode: Boolean read FUsedIncrementalRegionDecode;
property LastSegmentGraphValidationInfo: TJBIG2SegmentGraphValidationInfo
read FLastSegmentGraphValidationInfo;
end;
Decodifica dati immagine JBIG2, opzionalmente con dati globali condivisi, ed espone il risultato come bitmap dell'intera pagina o finestre di regione limitate
LoadFromByteArray decodifica una pagina intera, mentre LoadRegionFromByteArray decodifica solo il rettangolo richiesto e segnala il percorso incrementale tramite UsedIncrementalRegionDecode
GetScanline restituisce i byte delle scanline decodificate riga per riga, e LastRegionDecodeStats insieme a LastSegmentGraphValidationInfo espongono statistiche per chiamata e risultanze sul grafo dei segmenti