Qual é a relação entre código de idioma, fonte e codificação?


1

Eu acho que esses termos são comumente usados ​​no IME etc.

  • localidade
  • Fonte
  • codificação

A que exatamente cada um desses termos se refere?

Também o conhecimento prático de sua relação entre eles será bem-vindo.

Respostas:


1

localidade:

o 'locale' está mantendo informações sobre certas convenções que as pessoas de uma determinada 'área' (local entre si) têm em relação a onde definir o ponto decimal de grandes números, como é a formatação da data, onde as pontuações aparecem etc. Exemplo dado:

  • 1234567,89 (estilo SI (versão francesa), Albânia, Bélgica, Bósnia, Brasil, Bulgária, República Tcheca, Dinamarca, Estônia, Finlândia, França, Canadá francês, Alemanha, Grécia, Hungria, Itália, Europa Latina, Holanda (não- números de moeda, veja abaixo), Polônia, Portugal, Romênia, Eslováquia, Eslovênia, Espanha, Suécia)
  • 1234567.89 estilo SI (versão em inglês), Austrália, inglês Canadá, China
  • 1.234.567 · 89 Irlanda, Japão, Coréia, Malásia, Nova Zelândia, Filipinas, Cingapura, Taiwan, Tailândia, Reino Unido, Estados Unidos (mais antigos, geralmente escritos à mão)
  • 1'234'567.89 Suíça (impresso, computação, moeda, requisito internacional, uso diário)

(extraído de http://en.wikipedia.org/wiki/Decimal_mark )

codificação:

a 'codificação' é uma convenção de como representar 'coisas' de um sistema em unidades de um segundo 'sistema'. exemplo dado: você tem 10 ovos na sua mão. você não pode representar esses objetos físicos em um computador, é necessário "codificá-los" para algo que o computador entenda. uma codificação possível seria a seguinte: "10 ovos" (como texto), agora você tem uma versão codificada dos 10 ovos em sua mão.

a 'unidade' de um computador geralmente significa 'bytes'. cada byte é capaz (geralmente) de manter os números de 0 a 255. se você quiser representar números maiores, é necessário concordar com outras pessoas em um esquema para representar (armazenar, recuperar) esses números mais altos. uma maneira possível:

  • para armazenar números até 65535, usamos 2 bytes
  • a fórmula para recuperar o número é (byte1 * 256) + byte2

voila, uma 'codificação', uma convenção de como representar coisas de um sistema (números naturais) em diferentes unidades de um sistema diferente (bytes de um computador).

Outro tópico comum é 'como armazenar texto'. as pessoas ao redor do mundo real usam muitos "desenhos" diferentes para expressar seus pensamentos (eles codificam suas palavras duras em palavras, frases, textos mais longos etc.). a soma da maioria desses 'desenhos' é coletada em algo chamado tabela unicode . cada um desses 'desenhos' é chamado de 'glifo'. você encontrará glifos como 'A', 'Ä', 'Ʌ', 'Ά', 'Ӑ', 'ڣ', '㈱', '⛽', '✪', '⬛' etc. (se você veja um sinal '?' ou um bloco vazio em algum lugar: esse glifo não faz parte da sua 'fonte' e, portanto, o computador não sabe como representá-lo na tela; mais sobre isso na próxima parte). cada 'glifo' tem uma posição nessa tabela e, portanto,

104, 101, 108, 108, 111 -> 'h', 'e', 'l', 'l', 'o'

voila, 'texto codificado'. Às vezes, a posição nessa tabela não se encaixa em um 'byte', então você deve 'codificar' a posição do glifo com vários bytes, conforme descrito acima.

Fonte:

uma 'fonte' geralmente é um arquivo de contêiner (semelhante a um .zip) que contém a representação gráfica de todos os glifos que o autor da fonte deseja que esteja nesse contêiner. o computador pode procurar o glifo nessa fonte e usa as instruções por glifo para representar / renderizar / desenhar a fonte na tela. existem várias maneiras de fazer isso:

  • você pode definir que cada glifo tenha 10x10 pixels e preencha os pixels para cada glifo (fontes de pixels)
  • você pode armazenar uma receita para cada glifo de como desenhá-lo em todos os tamanhos de tela possíveis ("comece no canto superior esquerdo, desenhe uma linha no centro da parte inferior, desenhe uma linha do centro na parte inferior para a parte superior direita" -> 'V ') (fontes vetoriais)
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.