ConvertTextToPaths
Inhaltsstrombearbeitung, Schriftarten
Beschreibung
Schreibt Textausgabeanweisungen auf den ausgewählten Seiten als Aufrufe von Vektor-Form-XObjects neu und erhält dabei Glyphenplatzierung, Textabstände, Schreibmodus, Transformationen, Füllfarbe, Konturfarbe und Kontureinstellungen
TrueType- und Type-1-Glyphenumrisse werden einmal extrahiert und für wiederholte Glyphen wiederverwendet. Type-3-CharProcs werden in gewöhnliche Form XObjects konvertiert, wobei Schriftmatrix, Begrenzungsrahmen und Ressourcengültigkeitsbereich erhalten bleiben. Die ursprünglichen Textanzeige- und Schriftauswahlanweisungen werden entfernt
Die Konvertierung ist transaktional. Jede ausgewählte Inhaltsebene und jedes angeforderte verschachtelte Form wird im Speicher geparst und konvertiert, bevor sich ein PDF-Objekt ändert. Nicht unterstützte Schriftarten, Text-Clipping-Renderingmodi 4 bis 7, fehlerhafter Textzustand und mehrdeutige gemeinsam genutzte Form-Ressourcengültigkeitsbereiche schlagen fehl, ohne das Dokument teilweise neu zu schreiben
Konvertierter Text ist nicht mehr durchsuchbar, auswählbar oder als Text extrahierbar. Er bleibt skalierbarer Vektorinhalt für Rendering und Druck
Syntax
Delphi
Function TPDFlib.ConvertTextToPaths(Const PageRange: WideString= ''; Options: Integer= PDF_TEXT_PATH_DEFAULT): Integer;
ActiveX
Function PDFlib::ConvertTextToPaths(PageRange As String, Options As Long) As Long
DLL
int DLConvertTextToPaths(int InstanceID, const wchar_t *PageRange, int Options);
int DLConvertTextToPathsA(int InstanceID, const char *PageRange, int Options);
Parameter
| PageRange | Seitenbereichsausdruck mit einsbasierten Seitennummern. Ein leerer Wert wählt jede Seite aus |
|---|---|
| Options | Bitweise Kombination aus PDF_TEXT_PATH_RECURSE_FORMS zum Konvertieren verschachtelter Form XObjects und PDF_TEXT_PATH_PURGE_FONTS zum Entfernen nicht mehr verwendeter Quellschriftressourcen. PDF_TEXT_PATH_DEFAULT aktiviert beide Optionen |
Rückgabewerte
| 1 or greater | Anzahl der konvertierten Textanzeigeanweisungen |
|---|---|
| 0 | Es wurde kein geeigneter Text gefunden, der Bereich oder die Optionen waren ungültig oder die Konvertierung ist fehlgeschlagen. Prüfen Sie LastErrorCode, um Fehler zu unterscheiden |
Fehlercodes
| 506 | Die Quellschrift kann kein unterstütztes Vektorglyphenprogramm bereitstellen |
|---|---|
| 507 | Ein Textbeschneidungs-Rendermodus erfordert einen Beschneidungspfad, der nicht durch eine unabhängige Glyphen-Form dargestellt werden kann |
| 508 | Das Textprogramm, der Schriftartzustand oder der rekursive Form-Ressourcenbereich ist fehlerhaft oder mehrdeutig |
Beispiel
Converted := PDF.ConvertTextToPaths('1-3,5', PDF_TEXT_PATH_DEFAULT);
If (Converted= 0)and (PDF.LastErrorCode<> 0) Then
raise Exception.Create(PDF.LastError);