FlattenTransparency
Dokumentbearbeitung, Rendering, PDF-Kompatibilität
Beschreibung
Ersetzt jede ausgewählte Seite durch ein undurchsichtiges Rasterbild, das die gerenderte Darstellung bewahrt und Transparenz aus erreichbarem Seiteninhalt entfernt
Syntax
Delphi
Function TPDFlib.FlattenTransparency(Const PageRange: WideString; DPI: Double; BackgroundColor: Cardinal; Options: Integer): Integer;
Parameter
| PageRange | Seitenbereichsausdruck oder eine leere Zeichenfolge für jede Seite |
|---|---|
| DPI | Rasterauflösung von 36 bis 1200 Punkten pro Zoll |
| BackgroundColor | Undurchsichtiger Rasterhintergrund als COLORREF-Wert |
| Options | Bitweise Kombination aus PDF_FLATTEN_TRANSPARENCY_KEEP_ANNOTATIONS und PDF_FLATTEN_TRANSPARENCY_GARBAGE_COLLECT oder PDF_FLATTEN_TRANSPARENCY_DEFAULT |
Rückgabewerte
Gibt die Anzahl der ersetzten Seiten oder 0 zurück, wenn die Validierung oder das Rendern vor dem Ersetzen einer Seite fehlschlägt
Anmerkungen
Die Standardoption rendert Anmerkungen und Formularfelder in das Ersatzbild, entfernt deren interaktive Objekte und bereinigt nicht erreichbare Objekte, sodass anschließend eine kompatible ältere PDF-Version ausgewählt werden kann
PDF_FLATTEN_TRANSPARENCY_KEEP_ANNOTATIONS bewahrt Anmerkungs- und Formularobjekte und schließt sie vom Rasterdurchlauf aus, damit sie nicht doppelt gezeichnet werden
Gedrehte Seiten werden mit ihren visuellen Abmessungen und einer Drehung von null geschrieben, UserUnit wird in die Abmessungen der MediaBox eingerechnet und geerbte zusätzliche Seitenrahmen werden entfernt
Die Verarbeitung erfolgt seitenweise, um den maximalen Rasterspeicherbedarf zu begrenzen, unterstützt Fortschrittsmeldungen und Abbruch und kann nach einem Fehler oder Abbruch auf einer späteren Seite eine Teilanzahl von Seiten zurückgeben
Die Speicherbereinigung macht IDs nicht erreichbarer Bilder, Erfassungen, Grafikzustände und anderer entfernter Ressourcen ungültig. Wenn die Bereinigungsoption verwendet wird, müssen nach diesem Aufruf neue IDs abgerufen werden
Siehe auch
RenderPageTileToStream, SetInformation, FlattenAnnotsOnPageRange