AddImageJBIG2FromFileEx
Bilder
Beschreibung
Lädt eine Bitmap-Datei, konvertiert sie in monochrome Bilddaten und speichert sie als JBIG2-Bild-XObject unter Verwendung benannter Optionsparameter
Syntax
Delphi
Function TPDFlib.AddImageJBIG2FromFileEx(Const FileName: WideString; Interpolate, SymbolExtract, UseExternalEncoder, SkipBlackDots, BlackDotSize, LossyLevel: Integer): Integer;
Parameter
| FileName | Die zu codierende Bitmap-Datei |
|---|---|
| Interpolate | Schreibt das Bildinterpolations-Flag, wenn es ungleich Null ist |
| SymbolExtract | Fordert die Extraktion des Symbolwörterbuchs an, wenn das aktive Encoder-Backend dies unterstützt |
| UseExternalEncoder | Bevorzugt das externe JBIG2-Encoder-Backend, sofern verfügbar |
| SkipBlackDots | Aktiviert die Bereinigung isolierter schwarzer Punkte vor der Kodierung, wenn ungleich null |
| BlackDotSize | Maximale isolierte Schwarzpixel-Clustergröße, die während der Bereinigung entfernt wurde |
| LossyLevel | Hinweis zur Aggressivität der Bereinigung von 0 bis 9 für gescannte monochrome Eingaben |
Rückgabewerte
Gibt die neue ImageID zurück, oder 0 wenn die Datei nicht gelesen oder kodiert werden kann
Anmerkungen
Die Funktion ordnet die benannten Parameter demselben Codierungspfad zu, der von AddImageJBIG2FromFile verwendet wird, was die Kompatibilität mit bestehenden Options-Bitmasken wahrt
JBIG2-Backend-Registrierung
Sowohl der Encoder hinter der Familie AddImageJBIG2* als auch der Decoder für JBIG2-Bilder in importierten Dokumenten sind austauschbar. Die Unit PDFlibJBIG2Enc stellt die Registrierungsoberfläche als eigenständige Funktionen bereit:
RegisterJBIG2EncoderBackend | Installiert einen TJBIG2EncodeCallback, der die Scanlinien, Breite, Höhe und einen TJBIG2EncodeOptions-Datensatz empfängt und die komprimierten Bilddaten sowie optionalen globale Segmentdaten zurückgibt; er bedient die über die Option unten gestellte UseExternalEncoder-Anforderung |
|---|---|
RegisterJBIG2DecoderBackend | Installiert den primären TJBIG2DecodeCallback, der die Bild- und globalen Datenbytes empfängt und einen TJBIG2DecodeResult-Datensatz füllt |
RegisterJBIG2ExternalDecoderBackend | Registriert das externe Dekodier-Backend (den jbig2dec-C-Decoder unter Win64). Wenn registriert und der Bevorzugt-extern-Schalter aktiv ist (Standard), läuft der /JBIG2Decode-Ladepfad darüber, und der primäre Decoder bleibt als Rückfallebene |
ClearJBIG2Backends | Entfernt alle registrierten Encoder- und Decoder-Callbacks |
IsJBIG2EncoderBackendAvailable / IsJBIG2DecoderBackendAvailable / IsJBIG2ExternalDecoderBackendAvailable | Melden, ob der jeweilige Callback derzeit registriert ist |
SetPreferExternalJBIG2Decoder / GetPreferExternalJBIG2Decoder | Globale Schalter, die bei Verfügbarkeit beider Decoder den externen gegenüber dem integrierten Pascal-Decoder wählen; Standard ist True, setzen Sie False, um den nativen Rückfallweg zu erzwingen |
DefaultJBIG2EncodeOptions | Gibt einen TJBIG2EncodeOptions-Datensatz mit den Standardwerten zurück, von denen die AddImageJBIG2*-Aufrufe starten (verlustfrei, Symbolwörterbuch ein, globale Segmente aus, externer Encoder bevorzugt) |
ClearJBIG2DecodeResult | Gibt den von einem TJBIG2DecodeResult-Datensatz gehaltenen Scanlinienspeicher frei und setzt seine Felder zurück |