Scripts
Itens e mensagens multilíngues podem conter texto em idiomas que exigem scripts diferentes. Um único script pode ser usado para representar vários idiomas.
Por exemplo, o script latino ou romano contém os formatos de caracteres — glifos — das 26 letras (tanto maiúsculas como minúsculas) do alfabeto, assim como os caracteres (estendidos) usados para representar os sons de outros idiomas da Europa Ocidental.
O script latino contém glifos para representar todos os caracteres da maioria dos idiomas europeus e alguns outros. Outros idiomas europeus, como o grego e o russo, possuem caracteres para os quais não há glifos no script latino; esses idiomas têm seus próprios scripts.
Alguns idiomas asiáticos usam scripts ideográficos que possuem glifos baseados nos caracteres chineses. Outros idiomas, como o tailandês e o árabe, usam scripts que possuem glifos compostos por vários outros glifos menores ou por glifos que devem ser formatados de maneiras diferentes dependendo dos caracteres adjacentes.
Uma maneira comum de armazenar texto sem formatação é representar cada caractere utilizando um único byte. O valor de cada byte é um índice numérico — ou ponto de código — de uma tabela de caracteres; um ponto de código corresponde a um caractere da página de código padrão do computador em que o documento de texto for criado. Por exemplo, um valor de byte decimal igual a 189 (o ponto de código do valor decimal 189) representará caracteres diferentes em páginas de código diferentes.
Páginas de código
Uma tabela de caracteres agrupados é chamada de página de código. Nas páginas de código de um byte, cada página de código contém um máximo de 256 valores de bytes; como cada caractere da página de código é representado por um único byte, uma página de código pode conter 256 caracteres.
Uma página de código com seu limite de 256 caracteres não pode acomodar todos os idiomas porque todos os idiomas reunidos usam muito mais do que 256 caracteres. Portanto, cada script usa uma página de código independente. Há uma página de código para o grego, outra para o japonês e assim por diante.
Além disso, as páginas de código de um byte não são capazes de acomodar a maioria dos idiomas asiáticos, que normalmente usam mais de 5 mil caracteres baseados no chinês. As páginas de código de bytes duplos foram desenvolvidas para oferecer suporte a esses idiomas.