
Estou trabalhando com um aplicativo que usa as chamadas "fontes de símbolos", um tipo específico de fonte TrueType. Pelo que descobri, essas fontes se comportam um pouco diferente do normal, especificamente na forma como os caracteres/glifos são mapeados. No entanto, não consegui descobrir o que realmente torna uma fonte TrueType uma fonte de símbolo.
Minha pesquisa até agora não rendeu praticamente nada. Tudo o que encontrei mencionando qualquer tipo de detalhe é o manual do usuário de um editor de fontes que possuo, que diz que as fontes de símbolos têm glifos mapeados para a área de uso privado Unicode em 0xF000, mas são "enumerados" no intervalo de 0x00 a 0xFF (o que quer que isso signifique). Com certeza, ao inspecionar os dados de algumas fontes de símbolos, vejo na tabela cmap que os glifos são mapeados apenas no intervalo 0xF000... então, por qual mecanismo eles chegam ao intervalo 0x00? Uma pergunta aparentemente simples, mas que aparentemente não foi respondida em lugar nenhum.
Então, o que exatamente torna uma fonte TrueType uma fonte de símbolo?
(Nota/pergunta lateral: ouvi dizer que as fontes de símbolos são herdadas, substituídas principalmente pelas chamadas "fontes Unicode", que fornecem mapeamentos de caracteres Unicode para sistemas compatíveis com Unicode. Nesse caso, como podem as fontes de símbolos, que anterior ao Unicode, até mesmo fornecer mapeamentos na área de uso privado do Unicode Todos os caracteres não estariam no intervalo 0x00 a 0xFF e nenhuma mágica de remapeamento de "fonte de símbolo" seria necessária?)