IHPDFCustomStreamFilter
定義已載入串流篩選器管線所使用的參考計數自訂解碼器
宣告
IHPDFCustomStreamFilter = interface(IInterface)
function GetFilterName: AnsiString;
function GetMode: THPDFCustomStreamFilterMode;
function GetInputSeekContract: THPDFCustomStreamSeekContract;
function GetOutputSeekContract: THPDFCustomStreamSeekContract;
function DecodePush(Input, Output: TStream;
const Request: THPDFCustomStreamFilterRequest;
out Diagnostic: AnsiString): Boolean;
function OpenPullStream(Input: TStream;
const Request: THPDFCustomStreamFilterRequest;
out DecodedStream: TStream;
out Diagnostic: AnsiString): Boolean;
end;
參數
Input 在回呼期間是借用的,Output 是 push 模式下隔離的有界目的地,Request 則提供階段身分、剩餘預算與取消
pull 成功之後 DecodedStream 由 HotPDF 擁有,而 Diagnostic 應解釋回傳 false 的原因
傳回值
只有在產出完整且有效的階段結果之後才回傳 True
使用說明
- 只有
Mode選中的方法會被呼叫 - 不要釋放、保留或回傳借用的
Input串流 - 長時間作業應以合作方式檢查
Request.CancellationToken - 例外會被隔離為
dpsCustomFilterError、dpsBudgetExceeded或dpsCancelled - 回呼同步執行,而且在註冊表鎖之外