Conjuntos de caracteres usados por fontes

Todas as fontes usam um conjunto de caracteres. Um conjunto de caracteres contém marcas de pontuação, numerais, letras maiúsculas e minúsculas e todos os outros caracteres imprimíveis. Cada elemento de um conjunto de caracteres é identificado por um número.

A maioria dos conjuntos de caracteres em uso são superconjuntos do conjunto de caracteres ASCII dos EUA, que define caracteres para os 96 valores numéricos de 32 a 127. Há cinco grupos principais de conjuntos de caracteres:

  • Windows
  • Unicode
  • OEM (fabricante original do equipamento)
  • Símbolo
  • Específico do fornecedor

Conjunto de Caracteres do Windows

O conjunto de caracteres do Windows é o conjunto de caracteres mais usado. É essencialmente equivalente ao conjunto de caracteres ANSI. O caractere em branco é o primeiro caractere no conjunto de caracteres do Windows. Ele tem um valor hexadecimal de 0x20 (decimal 32). O último caractere no conjunto de caracteres do Windows tem um valor hexadecimal de 0xFF (decimal 255).

Muitas fontes especificam um caractere padrão. Sempre que uma solicitação é feita para um caractere que não está na fonte, o sistema fornece esse caractere padrão. Muitas fontes que usam o conjunto de caracteres do Windows especificam o período (.) como o caractere padrão. As fontes TrueType e OpenType normalmente usam uma caixa aberta como o caractere padrão.

As fontes usam um caractere de interrupção chamado quad para separar palavras e justificar o texto. A maioria das fontes que usam o conjunto de caracteres do Windows especifica que o caractere em branco servirá como o caractere de interrupção.

Conjunto de Caracteres Unicode

O conjunto de caracteres do Windows usa 8 bits para representar cada caractere; portanto, o número máximo de caracteres que podem ser expressos usando 8 bits é 256 (2^8). Isso geralmente é suficiente para idiomas ocidentais, incluindo as marcas diacríticas usadas em francês, alemão, espanhol e outras línguas. No entanto, as linguagens orientais empregam milhares de caracteres separados, que não podem ser codificados usando um esquema de codificação de byte único. Com a proliferação do comércio de computadores, foram desenvolvidos esquemas de codificação de bytes duplos para que os caracteres pudessem ser representados em sequências de 8 bits, 16 bits, 24 bits ou 32 bits. Isso requer algoritmos de passagem complicados; mesmo assim, o uso de conjuntos de códigos diferentes pode gerar resultados totalmente diferentes em dois computadores diferentes.

Para resolver o problema de vários esquemas de codificação, o padrão Unicode para representação de dados foi desenvolvido. Um esquema de codificação de caracteres de 16 bits, Unicode pode representar 65.536 caracteres (2^16), o que é suficiente para incluir todos os idiomas no comércio de computadores atualmente, bem como marcas de pontuação, símbolos matemáticos e espaço para expansão. Unicode estabelece um código exclusivo para cada caractere para garantir que a tradução de caracteres seja sempre precisa.

Conjunto de Caracteres OEM

O conjunto de caracteres OEM normalmente é usado em sessões MS-DOS de tela inteira para exibição de tela. Os caracteres de 32 a 127 geralmente são os mesmos nos conjuntos de caracteres OEM, ASCII e Windows dos EUA. Os outros caracteres no conjunto de caracteres OEM (0 a 31 e 128 a 255) correspondem aos caracteres que podem ser exibidos em uma sessão MS-DOS de tela inteira. Esses caracteres geralmente são diferentes dos caracteres do Windows.

Conjunto de Caracteres de Símbolo

O conjunto de caracteres Symbol contém caracteres especiais normalmente usados para representar fórmulas matemáticas e científicas.

Conjuntos de caracteres específicos do fornecedor

Muitas impressoras e outros dispositivos de saída fornecem fontes com base em conjuntos de caracteres que diferem dos conjuntos windows e OEM, por exemplo, o conjunto de caracteres EBCDIC (Código de Intercâmbio Decimal Codificado Binário Estendido). Para usar um desses conjuntos de caracteres, o driver de impressora é convertido do conjunto de caracteres do Windows para o conjunto de caracteres específico do fornecedor.