Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este tópico discute as fontes de estrutura de tópicos fornecidas pelo Windows, os valores de métrica de fonte que podem mudar entre as versões do Windows e as diretrizes sobre como usar métricas de fonte em seus aplicativos da área de trabalho.
- Para obter informações específicas das métricas de fonte no DirectWrite, consulte Métricas de Texto.
- Para obter detalhes sobre como gerenciar texto em aplicativos usando GDI, consulte os tópicos em Fontes e Texto.
Para obter informações mais detalhadas sobre o uso de fontes e especificações de tipo, consulte o site de tipografia da Microsoft.
Fontes disponíveis
As fontes de estrutura de tópicos fornecidas com o Windows são fornecidas como fontes OpenType com estruturas de tópicos TrueType (o Windows também dá suporte a fontes OpenType no formato CFF). Para obter listas de todas as fontes fornecidas pelo Windows, consulte Tipografia da Microsoft: fontes por produto ou família. Todas as fontes de estrutura de tópicos do Windows estão em conformidade com a versão mais recente da especificação OpenType.
Para obter uma lista de todas as fontes de interface do usuário atuais e herdadas, consulte Métricas de fonte bloqueadas abaixo.
Modificações de fonte
Para garantir a compatibilidade com versões anteriores, as fontes raramente são removidas do Windows. No entanto, as fontes geralmente são modificadas. As modificações podem incluir adicionar caracteres, redesenhar caracteres existentes, modificar dicas ou adicionar ou modificar o suporte para recursos avançados do OpenType e formatação de script complexa.
Métricas de fonte bloqueadas
Observe que alguns valores associados a fontes de interface do usuário e fontes padrão usadas em aplicativos da Microsoft estão bloqueados. Fontes de interface do usuário são usadas para renderizar elementos da interface do usuário, como legendas, caixas de diálogo e menus. Poucas alterações são feitas nessas fontes, dada a alta visibilidade e o uso frequente. No entanto, como os valores relatados associados a essas fontes estão bloqueados, pode haver discrepâncias entre os valores de fonte relatados e reais.
Os seguintes valores relatados estão bloqueados para a interface do usuário e fontes padrão e podem ser relatados incorretamente:
- Estes valores da tabela so/2 da fonte:
- xAvgCharWidth
- sTypoLineGap
- sTypoAscender
- sTypoDescender
- usWinAscent
- usWinDescent
- O valor unitsPerEm definido no cabeçalho da fonte
- Valores da tabela de métricas de Dispositivo Vertical (VDMX)
- As larguras avançadas para glifos individuais
Aqui está uma lista das fontes de interface do usuário enviadas com Windows 8.1 (afetadas por valores bloqueados):
Nome do script | Fonte da interface do usuário |
---|---|
Árabe | Interface do Usuário Segoe |
Armênia | Interface do Usuário Segoe |
Bangla | Nirmala UI |
Bopomofo | Microsoft JhengHei UI |
Braille | Segoe UI Symbol |
Bugi | Leelawadee UI |
Sílbica Aborígine Canadense | Gadugi |
Cherokee | Gadugi |
Copta | Segoe UI Symbol |
Chinês (Simplificado) | Microsoft YaHei UI |
Chinês (Tradicional) | Microsoft JhengHei UI |
Cirílico | Interface do Usuário Segoe |
Devanagari | Nirmala UI |
Deseret | Segoe UI Symbol |
Etíope | Ebrima |
Georgiano | Interface do Usuário Segoe |
Glagolitic | Segoe UI Symbol |
Gótico | Segoe UI Symbol |
Grego | Interface do Usuário Segoe |
Guzerate | Nirmala UI |
Gurmukhi | Nirmala UI |
Hebraico | Interface do Usuário Segoe |
Itálico Antigo | Segoe UI Symbol |
Javanês | Texto javanês |
Japonês | Interface do usuário do Meiryo |
canarim | Interface do usuário de Mirmala |
Khmer | Leelawadee UI |
Coreano | Malgun Gothic |
Lao | Leelawadee UI |
Latim | Interface do Usuário Segoe |
Malaiala | Nirmala UI |
Mongol | Mongolian Baiti |
Myanmar | Myanmar Text |
N'Ko | Ebrima |
Ogham | Segoe UI Symbol |
Ol Chiki | Nirmala UI |
Antigo turco | Segoe UI Symbol |
Oriá | Nirmala UI |
Osmanya | Ebrima |
Phags-pa | Microsoft PhagsPa |
Runic | Segoe UI Symbol |
Sora Sompeng | Nirmala UI |
Sinhala | Nirmala UI |
Siríaco | Estrangelo Edessa |
Tai Le | Microsoft Tai Le |
Tai Lue Novo | Microsoft New Tai Lue |
Tâmil | Nirmala UI |
Télugo | Nirmala UI |
Tifinagh | Ebrima |
Thaana | MV Boli |
Tailandês | Leelawadee UI |
Tibetano | Microsoft Himalaya |
Vai | Ebrima |
Yi | Microsoft Yi Baiti |
Aqui está uma lista das fontes de interface do usuário herdadas que também são afetadas por valores bloqueados:
Nome do script (herdado) | Fonte da interface do usuário (herdada) |
---|---|
Bangla | Vrinda |
Sílabico aborígene canadense | Eufêmia |
Cherokee | Plantageneta |
Chinês (Simplificado) | Microsoft YaHei e SimSun |
Chinês (Tradicional) | MingLiU e Microsoft JhengHei |
Devanagari | Mangal |
Idiomas europeus | Tahoma |
Guzerate | Shruti |
Gurmukhi | Raavi |
Japonês | Meiryo e MS Gothic UI |
canarim | Tunga |
Khmer | Khmer |
Coreano | Gulim |
Lao | Interface do usuário do Lao |
Malaiala | Kartika |
Idiomas do Oriente Médio | Tahoma |
Oriá | Kalinga |
Cingalês | Iskoola Pota |
Tâmil | Latha e Vijaya |
Télugo | Gautami |
Tailandês | Leelawadee e Tahoma |
Essas fontes são usadas como padrões em aplicativos da Microsoft e também são afetadas por valores bloqueados:
- Arial
- Calibri
- Cambria
- Consolas
- Courier New
- MS Mincho
- Times New Roman
- Verdana
Métricas de fonte dinâmica
Além das métricas bloqueadas listadas acima, os valores de fonte são relatados com precisão. Se uma fonte for alterada em uma nova versão do Windows, os valores de fonte dinâmica serão diferentes entre o novo e o antigo. Por exemplo, quando um glifo é adicionado a uma fonte, os valores no cabeçalho da fonte podem ser alterados. O recorte poderá resultar se esses valores (que incluem xMin, xMax, yMin e yMax e relatarem a caixa delimitadora mínima e máxima para glifos na fonte) estiverem bloqueados e não relatarem valores verdadeiros.
Importante
Se você usar valores de fonte dinâmicos em seu aplicativo (como os de TEXTMETRIC), esses valores serão alterados se as fontes forem modificadas em versões futuras do Windows. Não use esses valores reais em situações em que o texto deve permanecer estático.
Diretrizes para usar métricas de fonte
- Métricas de tela de computação e métricas de fonte (por exemplo, largura média) quando um aplicativo é iniciado e usam esses valores para definir seu aplicativo. Isso fornecerá uma renderização consistentemente precisa e o layout responderá a alterações nas fontes ou acomodará o fallback de fonte. Para obter uma visão geral do fallback de fonte e da vinculação de fontes, consulte Globalização passo a passo: fontes. Consulte Usando fallback de fonte para informações específicas do Uniscribe.
- Para calcular uma métrica base, renderize um texto representativo para o idioma/script pretendido.
- Para controles que contêm apenas uma única linha de texto desencapsurado, disponha-os para ajustar a largura total do texto não ajustado.
- Para controles com várias linhas, obtenha o comprimento total, divida pelo comprimento do caractere e você tem uma largura sólida para trabalhar. Observe que isso é mais complicado para scripts complexos em que um único "caractere" para o leitor pode ser vários pontos de código.
- Use sTypoAscender, sTypoDescender e unitsPerEm (da tabela OS/2) para calcular o espaçamento vertical. sTypoAscender é usado para determinar o deslocamento ideal da parte superior de um quadro de texto para a primeira linha de base e sTypoDescender determina o deslocamento ideal da parte inferior de um quadro de texto para a última linha de base.
- Se você estiver usando DirectWrite, crie um layout usando IDWriteTextLayout. IDWriteTextLayout fornecelineGapdecrescente + crescente + em layout natural. Você pode acessar esses valores específicos com DWRITE_FONT_METRICS. Para obter informações sobre essa interface, consulte Formatação e layout de texto.
- Se você estiver usando GDI, renderize fora da tela, inspecione o layout (por exemplo, o comprimento da linha ou os caracteres por linha) e recalcule os parâmetros de layout finais usados na renderização real.
- Não crie layouts estaticamente com base em valores específicos para versões específicas de fontes. Os valores reais podem mudar de versão para versão.
Tópicos relacionados
-
Referência
-
Conceitual