Computador que não exibe caracteres unicode

3

Meu computador exibiu recentemente caracteres Unicode. Contudo; Ele recentemente parou de exibi-los, eu posso exibir com sucesso os caracteres no bloco de notas em outro computador, executando o mesmo Win 7, mas é x86 em vez de x64. Ambos os casos estão usando a mesma fonte (arial), a comutação para uma fonte compatível com unicode na máquina x64 corrige o problema. Alguma idéia?

    
por msarchet 07.11.2011 / 20:36

1 resposta

1

Any thoughts?

Fonte do bloco de notas

No Windows Notepad, você não pode (em geral) misturar fontes, você pode selecionar apenas uma fonte por vez. No entanto, essa declaração deve ser qualificada para versões recentes do Windows.

Windows XP e versões anteriores

No Windows XP e antes, o Bloco de Notas não exibia caracteres que não estavam na Fonte selecionada. Portanto, um caractere ausente ou exibido incorretamente (normalmente mostrado como uma caixa vazia) pode ser causado por:

Usando o Arial em vez do Arial Unicode.
Arial é 778,552 bytes, Arial Unicode é 23.275.812 bytes. A diferença é que um grande número de caracteres está em Arial Unicode, mas não em Arial. (esses tamanhos são do Vista, não do XP, mas a diferença será semelhante).

Omitindo a marca de ordem de byte (BOM)
O Windows espera que os arquivos Unicode (UTF-8, UTF-16 LE, etc) contenham uma BOM. Se não, O Windows, então, adivinha a codificação usando uma função da API do Windows ( isTextUnicode ), que é bem conhecida por cometer erros, resultando na exibição de vários caracteres do Latin-1 em vez de um único caractere correto.

(atualização)

Windows Vista em diante

O Bloco de notas agora adotou a estratégia vista pela primeira vez em navegadores da Web - se o caractere não existir na fonte atual, encontre uma fonte que contenha esse caractere e, somente para esse caractere, use a outra fonte. Portanto, se você tiver fontes adicionais diferentes em um computador, ele poderá se comportar de maneira diferente de outros computadores (mesmo que o sistema operacional seja o mesmo).

Arial "errado"
Eu não sei o algoritmo usado, mas parece possível que, se você tiver um Arial Unicode corrompido ou muito menor que não tenha alguns caracteres, o Bloco de Notas pode acreditar que a fonte contém um caractere que não contém. Uma fonte Arial de 3.395 KB não é o que eu esperaria no Windows 7. Talvez a instalação de algum aplicativo tenha substituído a fonte padrão por alguma defeituosa de alguma forma?

Fonte "ruim" adicional Como alternativa, o Bloco de Notas pode pesquisar uma fonte diferente, adicionada recentemente, para o caractere ausente antes de examinar o Arial Unicode. Se essa fonte diferente declarar conter o caractere, mas não o fizer (por exemplo, tags de layout incorretas, o Bloco de Notas poderá não exibir personagem

(atualização 2)

Ação sugerida

No computador que tem o Arial regular 3.395 KB, copie o arquivo de fonte para um local seguro, desinstale-o e instale o arquivo de fonte regular Arial de 761 KB copiado do outro computador.

    
por 07.11.2011 / 20:51