ConvertTextToPaths
Modifica dei flussi di contenuto, font
Descrizione
Riscrive le istruzioni testuali delle pagine come invocazioni Form XObject vettoriali, preservando posizione, spaziatura, modalità, trasformazioni, colori e tratto
I contorni dei glifi TrueType e Type 1 vengono estratti una volta e riutilizzati. I CharProc Type 3 vengono convertiti in normali Form XObject preservando matrice del font, riquadro di delimitazione e ambito delle risorse. Le istruzioni originali di visualizzazione del testo e selezione del font vengono rimosse
La conversione è transazionale. Ogni livello di contenuto selezionato e ogni Form annidato richiesto vengono analizzati e convertiti in memoria prima di modificare qualsiasi oggetto PDF. Font non supportati, modalità di rendering con ritaglio del testo da 4 a 7, stato del testo non valido e ambiti ambigui delle risorse Form condivise causano un errore senza riscrivere parzialmente il documento
Il testo convertito non è più ricercabile, selezionabile o estraibile come testo. Rimane contenuto vettoriale scalabile per rendering e stampa
Sintassi
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);
Parametri
| PageRange | Espressione di intervallo di pagine con numeri di pagina con base 1. Un valore vuoto seleziona tutte le pagine |
|---|---|
| Options | Combinazione bit per bit di PDF_TEXT_PATH_RECURSE_FORMS per convertire gli XObject Form annidati e PDF_TEXT_PATH_PURGE_FONTS per rimuovere le risorse dei caratteri di origine rimaste inutilizzate. PDF_TEXT_PATH_DEFAULT abilita entrambe le opzioni |
Valori restituiti
| 1 or greater | Numero di istruzioni di visualizzazione del testo convertite |
|---|---|
| 0 | Nessun testo idoneo trovato, intervallo o opzioni non validi oppure conversione non riuscita. Esaminare LastErrorCode per distinguere gli errori |
Codici di errore
| 506 | Il font di origine non può fornire un programma di glifi vettoriali supportato |
|---|---|
| 507 | Una modalità di clipping del testo richiede un tracciato non rappresentabile da un Form glifo indipendente |
| 508 | Il programma di testo, lo stato del font o l'ambito ricorsivo delle risorse Form non è corretto o è ambiguo |
Esempio
Converted := PDF.ConvertTextToPaths('1-3,5', PDF_TEXT_PATH_DEFAULT);
If (Converted= 0)and (PDF.LastErrorCode<> 0) Then
raise Exception.Create(PDF.LastError);