LaTeX - Codificações de entrada e saída

Mon 23 May 2011

Filed under misc

Quando Donald Knuth implementou o TeX, a necessidade de caracteres acentuados era pequena uma vez que escreviam essencialmente em inglês, resultando que o processador foi escrito em ASCII puro, ou seja, apenas 128 caracteres. Atualmente, TeX tem alcance mundial (com a ajuda do LaTeX e outras implementações como ConTeXt), o que tornou a codificação ASCII insuficiente.

A maioria dos computadores modernos permitem a inserção direta de caracteres do alfabeto regional, por exemplo o “ç” (c cedilhado, vulgo, “cê-cedilha”) aqui no Brasil. E como LaTeX é extensível, surgiu o pacote inputenc, que tem a capacidade de gerenciar essas entradas. A utilização seria:

\usepackage [<encoding>] {inputenc}

Em que inputenc é o nome do pacote e <encoding> é a codificação escolhida.

Para GNU/Linux que utiliza o unicode como codificação padrão, tem-se

\usepackage [utf8] {inputenc}

Já para usuários do sistema operacional Windows, com padrão ISO,

\usepackage [latin1] {inputenc}

Bom, isso resolve metade do problema, pois neste momento é possível apenas usar nossos caracteres como entrada. Ou seja, como esses caracteres são desenhados nos documentos em si?

Pois é. A outra parte do problema está na saída pois a mesma restrição dos 128 caracteres imposta à entrada é também feita na saída. Isto é, caso nada seja especificado, o “ç” será construído a partir dos dois caracteres existentes na codificação padrão: o “c” e a “cedilha”. Isso pode ser facilmente verificado ao se “selecionar” um texto num pdf produzido em LaTeX sem os devidos cuidados. Ao se selecionar a palavra “caça” da esquerda para direita visualiza-se “caca”. Partindo do lado oposto tem-se “ca,a”.

Mas, felizmente e novamente, isso também é contornável graças as extensões do LaTeX.

Da mesma forma que utilizamos um pacote para dizer ao LaTeX para aceitar mais de 128 tipos de caracteres na entrada, também podemos fazê-lo na saída. O pacote em questão é o fontenc, que dá suporte para a maioria das letras e pontuações europeias, incluindo a lingua portuguesa. Para utilizá-lo é só acrescentar no preâmbulo (famosa área entre a declaração da classe e o início do documento) a seguinte linha:

\usepackage [<encoding>] {fontenc}

Em que fontenc é o nome do pacote e <encoding> é o tipo de codificação que será escolhida para a saída.

Para nós:

\usepackage [T1] {fontenc}

Comments


TECEPE ENG BR © tecepe Powered by Pelican and Twitter Bootstrap. Icons by Font Awesome and Font Awesome More