Confronto tra API Di testo Win32
Per gli sviluppatori che eseguono la migrazione del codice dell'applicazione Win32, la tabella seguente elenca le API Di testo Win32 e l'equivalente approssimativo in DirectWrite.
Chiamate di testo GDI | Descrizione | DirectWrite equivalente |
---|---|---|
AddFontMemResourceEx | Aggiunge un tipo di carattere incorporato alla tabella dei tipi di carattere di sistema. | CreateCustomFontFileReference + CreateCustomFontCollection |
Addfontresource | Aggiunge una risorsa tipo di carattere alla tabella dei tipi di carattere di sistema. | Non esiste alcun equivalente. AddFontResource aggiunge alla raccolta di tipi di carattere di sistema come parte del passaggio di installazione del tipo di carattere GDI. DirectWrite popola anticipatamente la raccolta di tipi di carattere di sistema e monitora automaticamente gli aggiornamenti, quindi non è mai necessaria alcuna installazione. |
AddFontResourceEx | Aggiunge un tipo di carattere privato o non enumerabile alla tabella dei tipi di carattere di sistema. | Vedere sopra. |
CreateFont | Crea un tipo di carattere logico. | Anziché il tipo di carattere logico, le applicazioni possono specificare un set di proprietà del tipo di carattere (ad esempio nome della famiglia, peso, stile, estensione e dimensioni) per creare un IDWriteTextFormat. Solo le app che richiedono l'enumerazione del tipo di carattere accederanno a un IDWriteFont tramite IDWriteFontCollection. |
CreateFontIndirect | Crea un tipo di carattere logico da una struttura. | Vedere sopra. |
CreateFontIndirectEx | Crea un tipo di carattere logico da una struttura. | Vedere sopra. |
Drawtext | Disegna testo formattato in un rettangolo. | IDWriteTextLayout::D raw |
DrawTextEx | Disegna testo formattato in un rettangolo. | IDWriteTextLayout::D raw |
EnumFontFamExProc | Funzione di callback definita dall'applicazione usata con EnumFontFamiliesEx per elaborare i tipi di carattere. | Interfaccia IDWriteFontCollection, tramite IDWriteFactory::GetSystemFontCollection |
EnumFontFamiliesEx | Enumera tutti i tipi di carattere nel sistema con determinate caratteristiche. | Interfaccia IDWriteFontCollection, tramite IDWriteFactory::GetSystemFontCollection |
Exttextout | Disegna una stringa di caratteri. | IDWriteTextLayout::D raw o IDWriteRenderBitmapTarget::D rawGlyphRun |
GetAspectRatioFilterEx | Ottiene l'impostazione per il filtro delle proporzioni. | N/D |
GetCharABCWidths | Ottiene la larghezza dei caratteri consecutivi dal tipo di carattere TrueType. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharABCWidthsFloat | Ottiene la larghezza dei caratteri consecutivi dal tipo di carattere corrente. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharABCWidthsI | Ottiene la larghezza degli indici glifi consecutivi o una matrice di indici glifi dal tipo di carattere TrueType. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharacterPlacement | Ottiene informazioni su una stringa di caratteri. | IDWriteTextAnalyzer |
GetCharWidth32 | Ottiene la larghezza dei caratteri consecutivi dal tipo di carattere corrente. | IDWriteFontFace::GetDesignGlyphMetrics o IDWriteTextLayout::GetMetrics |
GetCharWidthFloat | Ottiene la larghezza frazionaria di caratteri consecutivi dal tipo di carattere corrente. | IDWriteFontFace::GetDesignGlyphMetrics o IDWriteTextLayout::GetMetrics |
GetCharWidthI | Ottiene la larghezza degli indici glifi consecutivi o una matrice di indici glifi dal tipo di carattere corrente. | IDWriteFontFace::GetDesignGlyphMetrics o IDWriteTextLayout::GetMetrics |
GetFontData | Ottiene i dati delle metriche per un tipo di carattere TrueType. | IDWriteFontFace::TryGetFontTable |
GetFontLanguageInfo | Restituisce informazioni sul tipo di carattere selezionato per un contesto di visualizzazione. | N/D |
GetFontUnicodeRanges | Indica quali caratteri Unicode sono supportati da un tipo di carattere. | ciclo di IDWriteFont::HasCharacter |
GetGlyphIndices | Converte una stringa in una matrice di indici glifi. | IDWriteFontFace::GetGlyphIndices |
GetGlyphOutline | Ottiene la struttura o la bitmap per un carattere nel tipo di carattere TrueType. | Metriche del glifo -- IDWriteFontFace::GetDesignGlyphMetrics, informazioni sulla struttura effettive --IDwriteFontFace::GetGlyphRunOutline, se si desidera che le bitmap del glifo, IDWriteRenderBitmapRenderTarget::D rawGlyphRun |
GetKerningPairs | Ottiene le coppie di crenatura dei caratteri per un tipo di carattere. | Crenatura consentita tramite proprietà tipografiche del layout (DirectWrite esegue la crenatura stessa, quindi non esiste alcun metodo per restituire queste informazioni). |
GetOutlineTextMetrics | Ottiene le metriche di testo per i tipi di carattere TrueType. | IDWriteFontFace::GetMetrics |
GetRasterizerCaps | Indica se i tipi di carattere TrueType sono installati. | I tipi di carattere TrueType vengono installati in Windows Vista e Windows 7 per impostazione predefinita. |
GetTabbedTextExtent | Calcola la larghezza e l'altezza di una stringa di caratteri, incluse le schede. | IDWriteTextLayout::GetMetrics |
GetTextAlign | Ottiene l'impostazione di allineamento del testo per un contesto di dispositivo. | IDWriteTextFormat::GetTextAlignment |
GetTextCharacterExtra | Ottiene la spaziatura tra caratteri corrente per un contesto del dispositivo. | N/D |
GetTextColor | Ottiene il colore del testo per un contesto del dispositivo. | N/D. (DirectWrite è indipendente dal rendering e quindi non conosce il colore. Le applicazioni devono tenere traccia di essa stessi. |
GetTextExtentExPoint | Ottiene il numero di caratteri in una stringa che si adatta all'interno di uno spazio. | IDWriteTextLayout::GetMetrics |
GetTextExtentExPointI | Ottiene il numero di indici glifi che si adattano all'interno di uno spazio. | IDWriteTextLayout::GetMetrics |
GetTextExtentPoint32 | Calcola la larghezza e l'altezza di una stringa di testo. | IDWriteTextLayout::GetMetrics |
GetTextExtentPointI | Calcola la larghezza e l'altezza di una matrice di indici glifi. | IDWriteTextLayout::GetMetrics |
GetTextFace | Ottiene il nome del tipo di carattere selezionato in un contesto del dispositivo. | IDWriteFont::GetFaceNames (Restituisce tutti i nomi) |
GetTextMetrics | Riempie un buffer con le metriche per un tipo di carattere. | IDWriteFontFace::GetMetrics |
PolyTextOut | Disegna diverse stringhe usando i colori del carattere e del testo in un contesto del dispositivo. | N/A; creare diversi oggetti di layout |
RemoveFontMemResourceEx | Rimuove un tipo di carattere la cui origine è stata incorporata in un documento dalla tabella dei tipi di carattere di sistema. | IUnknown::Release nell'oggetto associato |
RemoveFontResource | Rimuove i tipi di carattere in un file dalla tabella dei tipi di carattere del sistema | N/D |
RemoveFontResourceEx | Rimuove un tipo di carattere privato o non enumerabile dalla tabella dei tipi di carattere di sistema. | N/D |
SetMapperFlags | Modifica l'algoritmo usato per eseguire il mapping dei tipi di carattere logici ai tipi di carattere fisici. | N/D |
SetTextAlign | Imposta i flag di allineamento del testo per un contesto del dispositivo. | IDWriteTextFormat::SetTextAlignment |
SetTextCharacterExtra | Imposta la spaziatura tra caratteri. | N/D |
SetTextColor | Imposta il colore del testo per un contesto del dispositivo. | Un'applicazione deve prestare attenzione alla specifica del colore in una delle chiamate Draw . |
SetTextJustification | Specifica la quantità di spazio che il sistema deve aggiungere ai caratteri di interruzione in una stringa. | N/D. La giustificazione e la spaziatura dei caratteri non sono supportate in questa versione. |
TabbedTextOut | Scrive una stringa di caratteri in una posizione, espandendo le schede in valori specificati. | IDWriteTextLayout::D raw |
TextOut | Scrive una stringa di caratteri in una posizione | IDWriteTextLayout::D raw |