Comparação da API de Texto Win32
Para os desenvolvedores que estão migrando o código do aplicativo Win32, a tabela a seguir lista as APIs de Texto do Win32 e o equivalente aproximado em DirectWrite.
Chamadas de texto GDI | Descrição | equivalente DirectWrite |
---|---|---|
AddFontMemResourceEx | Adiciona uma fonte inserida à tabela de fontes do sistema. | CreateCustomFontFileReference + CreateCustomFontCollection |
Addfontresource | Adiciona um recurso de fonte à tabela de fontes do sistema. | Não há equivalente. AddFontResource adiciona à coleção de fontes do sistema como parte da etapa de instalação da fonte GDI. DirectWrite preenche a coleção de fontes do sistema antecipadamente e monitora automaticamente as atualizações para ela, portanto, nenhuma instalação é necessária. |
AddFontResourceEx | Adiciona uma fonte privada ou não enumerável à tabela de fontes do sistema. | O mesmo que o descrito acima |
Createfont | Cria uma fonte lógica. | Em vez de fonte lógica, os aplicativos podem especificar um conjunto de propriedades de fonte (por exemplo, nome da família, peso, estilo, alongamento e tamanho) para criar um IDWriteTextFormat. Somente os aplicativos que exigem enumeração da fonte acessarão um IDWriteFont por meio de IDWriteFontCollection. |
Createfontindirect | Cria uma fonte lógica com base em uma estrutura . | O mesmo que o descrito acima |
CreateFontIndirectEx | Cria uma fonte lógica com base em uma estrutura . | O mesmo que o descrito acima |
Drawtext | Desenha texto formatado em um retângulo. | IDWriteTextLayout::D raw |
DrawTextEx | Desenha texto formatado em um retângulo. | IDWriteTextLayout::D raw |
EnumFontFamExProc | Uma função de retorno de chamada definida pelo aplicativo usada com EnumFontFamiliesEx para processar fontes. | Interface IDWriteFontCollection , por meio de IDWriteFactory::GetSystemFontCollection |
Enumfontfamiliesex | Enumera todas as fontes no sistema com determinadas características. | Interface IDWriteFontCollection , por meio de IDWriteFactory::GetSystemFontCollection |
Exttextout | Desenha uma cadeia de caracteres. | IDWriteTextLayout::D raw ou IDWriteRenderBitmapTarget::D rawGlyphRun |
GetAspectRatioFilterEx | Obtém a configuração do filtro de taxa de proporção. | N/D |
GetCharABCWidths | Obtém as larguras de caracteres consecutivos da fonte TrueType. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharABCWidthsFloat | Obtém as larguras de caracteres consecutivos da fonte atual. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharABCWidthsI | Obtém as larguras de índices de glifo consecutivos ou uma matriz de índices de glifo da fonte TrueType. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharacterPlacement | Obtém informações sobre uma cadeia de caracteres. | IDWriteTextAnalyzer |
GetCharWidth32 | Obtém as larguras de caracteres consecutivos da fonte atual. | IDWriteFontFace::GetDesignGlyphMetrics ou IDWriteTextLayout::GetMetrics |
GetCharWidthFloat | Obtém as larguras fracionárias de caracteres consecutivos da fonte atual. | IDWriteFontFace::GetDesignGlyphMetrics ou IDWriteTextLayout::GetMetrics |
GetCharWidthI | Obtém as larguras de índices de glifo consecutivos ou uma matriz de índices de glifo da fonte atual. | IDWriteFontFace::GetDesignGlyphMetrics ou IDWriteTextLayout::GetMetrics |
Getfontdata | Obtém dados de métrica para uma fonte TrueType. | IDWriteFontFace::TryGetFontTable |
GetFontLanguageInfo | Retorna informações sobre a fonte selecionada para um contexto de exibição. | N/D |
GetFontUnicodeRanges | Informa quais caracteres Unicode têm suporte por uma fonte. | loop de IDWriteFont::HasCharacter |
GetGlyphIndices | Converte uma cadeia de caracteres em uma matriz de índices de glifo. | IDWriteFontFace::GetGlyphIndices |
GetGlyphOutline | Obtém a estrutura de tópicos ou o bitmap de um caractere na fonte TrueType. | Métricas de glifo -- IDWriteFontFace::GetDesignGlyphMetrics, informações reais da estrutura de tópicos --IDwriteFontFace::GetGlyphRunOutline, se você quiser bitmaps de glifo, IDWriteRenderBitmapRenderTarget::D rawGlyphRun |
GetKerningPairs | Obtém os pares de kerning de caracteres para uma fonte. | Kerning permitido por meio de propriedades tipográficas do layout (DirectWrite faz kerning em si, portanto, não há nenhum método para retornar essas informações). |
GetOutlineTextMetrics | Obtém métricas de texto para fontes TrueType. | IDWriteFontFace::GetMetrics |
GetRasterizerCaps | Informa se as fontes TrueType estão instaladas. | (As fontes TrueType são instaladas no Windows Vista e no Windows 7 por padrão.) |
GetTabbedTextExtent | Calcula a largura e a altura de uma cadeia de caracteres, incluindo guias. | IDWriteTextLayout::GetMetrics |
GetTextAlign | Obtém a configuração de alinhamento de texto para um contexto de dispositivo. | IDWriteTextFormat::GetTextAlignment |
GetTextCharacterExtra | Obtém o espaçamento entre caracteres atual para um contexto de dispositivo. | N/D |
GetTextColor | Obtém a cor do texto de um contexto de dispositivo. | N/D (DirectWrite é independente da renderização e, portanto, não sabe a cor. Os aplicativos precisam controlar isso por conta própria.) |
GetTextExtentExPoint | Obtém o número de caracteres em uma cadeia de caracteres que caberá dentro de um espaço. | IDWriteTextLayout::GetMetrics |
GetTextExtentExPointI | Obtém o número de índices de glifo que caberão dentro de um espaço. | IDWriteTextLayout::GetMetrics |
Gettextextentpoint32 | Calcula a largura e a altura de uma cadeia de caracteres de texto. | IDWriteTextLayout::GetMetrics |
GetTextExtentPointI | Calcula a largura e a altura de uma matriz de índices de glifo. | IDWriteTextLayout::GetMetrics |
GetTextFace | Obtém o nome da fonte selecionada em um contexto de dispositivo. | IDWriteFont::GetFaceNames (retorna todos os nomes) |
Gettextmetrics | Preenche um buffer com as métricas de uma fonte. | IDWriteFontFace::GetMetrics |
PolyTextOut | Desenha várias cadeias de caracteres usando as cores de fonte e texto em um contexto de dispositivo. | N/D; criar vários objetos de layout |
RemoveFontMemResourceEx | Remove uma fonte cuja origem foi inserida em um documento da tabela de fontes do sistema. | IUnknown::Release no objeto associado |
RemoveFontResource | Remove as fontes em um arquivo da tabela de fontes do sistema | N/D |
RemoveFontResourceEx | Remove uma fonte privada ou não enumerável da tabela de fontes do sistema. | N/D |
Setmapperflags | Altera o algoritmo usado para mapear fontes lógicas para fontes físicas. | N/D |
Settextalign | Define os sinalizadores de alinhamento de texto para um contexto de dispositivo. | IDWriteTextFormat::SetTextAlignment |
SetTextCharacterExtra | Define o espaçamento entre caracteres. | N/D |
Settextcolor | Define a cor do texto de um contexto de dispositivo. | Um aplicativo precisa cuidar da especificação da cor em uma das chamadas de Desenho . |
Settextjustification | Especifica a quantidade de espaço que o sistema deve adicionar aos caracteres de quebra em uma cadeia de caracteres. | N/D Não há suporte para justificativa e espaçamento de caracteres nesta versão. |
TabbedTextOut | Grava uma cadeia de caracteres em um local, expandindo guias para valores especificados. | IDWriteTextLayout::D raw |
Textout | Grava uma cadeia de caracteres em um local | IDWriteTextLayout::D raw |