IHPDFCustomStreamFilter
Definiert einen referenzgezählten benutzerdefinierten Dekoder für Pipelines geladener Streamfilter
Deklaration
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;Parameter
Input ist für den Callback geliehen, Output ist ein isoliertes begrenztes Ziel für den Push-Modus, und Request liefert Stufenidentität, verbleibendes Budget und Abbruch
DecodedStream gehört HotPDF nach einem erfolgreichen Pull-Ergebnis, während Diagnostic ein falsches Ergebnis erklären sollte
Rückgabewert
Geben Sie True nur zurück, nachdem ein vollständiges gültiges Stufenergebnis erzeugt wurde
Hinweise zur Verwendung
- Es wird nur die durch
Modeausgewählte Methode aufgerufen - Geben Sie den geliehenen
Input-Stream nicht frei, behalten Sie ihn nicht und geben Sie ihn nicht zurück - Lange Operationen sollten
Request.CancellationTokenkooperativ prüfen - Ausnahmen werden als
dpsCustomFilterError,dpsBudgetExceededoderdpsCancelledisoliert - Callbacks werden synchron und außerhalb der Registrierungssperre ausgeführt