THPDFJpegReducedDecoder
把编码后的 JPEG 区域直接解码为精确的低分辨率 BGR24 位图
声明
function LoadFromBytes(const Data: THPDFJpegByteArray;
const Region: TRect; TargetWidth, TargetHeight: Integer;
MaxOutputBytes: Int64 = 268435456): Boolean;
function Decode: THPDFJpegReducedDecodeStatus;
Usage
Decoder := THPDFJpegReducedDecoder.Create;
try
if Decoder.LoadFromBytes(Data, Rect(0, 0, 12000, 12000), 300, 300) and
(Decoder.Decode = jrdsCompleted) then
begin
Bitmap.Assign(Decoder.Bitmap);
Info := Decoder.Info;
end;
finally
Decoder.Free;
end;
Ownership and limits
- 解码器会复制编码输入,并拥有通过
Bitmap暴露的位图 - 返回的位图在解码器再次加载或被销毁之前一直有效
MaxOutputBytes限定目标位图,为零表示禁用这一显式限制OnCancellationCheck在扫描行循环中被调用Infoexposes decoder-reported scaled geometry and working-memory estimates
相关 API
THPDFJpegReducedDecodeInfo · THPDFJpegReducedDecodeStatus · 简化 DCT JPEG 解码