De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Dorian Bolivar
Data de Publicação: 30 de Março de 2005
Uma das coisas que mais me decepcionava no Linux era a qualidade das fontes na tela, principalmente as TrueType. Sem anti-aliasing, ficavam com um serrilhado grotesco; com, sumia o serrilhado mas ficavam borradas.
Me perguntava porque no Windows as fontes ficavam sem serrilhado e com ótima definição. Mesmo importando as fontes do Windows no Linux, e ativando as opções Hinting Style: Full (KDE) ou Best Contrast (Gnome), não ficavam com a mesma nitidez. Já comentei e vi comentários a respeito em fóruns de discussão, sem solução. Alguns diziam as fontes pareciam boas, mas basta comparar sua exibição no Linux e no Windows para comprovar a diferença (experimente utilizar a fonte Tahoma para os menus, no Linux, que é a mesma usada no Windows, e perceba como não tem a mesma nitidez). E pude comprovar que isso não é uma característica da minha máquina ou distribuição usada, pois já usei diversas distribuições em outros computadores, com o mesmo problema.
Em um dia de inspiração, pesquisando no Google, veio a solução.
É preciso, inicialmente, explicar o que é hinting e anti-aliasing. Basicamente, o hinting é uma técnica através da qual se determina o correto posicionamento dos pixels de cada caractere da fonte, ao ser redimensionada (1, 2). As fontes TrueType, ao invés de serem renderizadas utilizando um paradigma de hinting único, possuem embutido um pequeno programa que faz essa tarefa, da melhor forma possível para cada fonte (1). Trata-se de uma verdadeira linguagem de programação, que inclui (1):
Já o anti-aliasing é uma técnica que adiciona pontos sombreados ao contorno da fonte (ou qualquer outra figura vetorial), de forma a borrar a imagem e tornar seu contorno mais suave (2).
O problema com o anti-aliasing é justamente esse: o contorno das fontes não fica nítido. Por que não usar, então, o hinting embutido nas fontes TrueType? Porque isso é patenteado, essa é a resposta. O FreeType, renderizador de fontes TrueType padrão na maioria das distribuições Linux, sendo um software livre, não poderia incluir esse interpretador de hinting - chamado bytecode interpreter (3) - por default, ao contrário do Windows. Assim, desenvolveu um paradigma de hinting próprio, que não chega a ser tão eficiente.
Eu disse antes que o FreeType não incluía o bytecode interpreter por default - mas há como habilitá-lo. A primeira maneira de fazer isso é recompilar a biblioteca manualmente, alterando um pequeno trecho de código (4):
A segunda maneira é obter o pacote src.rpm do FreeType para a sua distribuição, e trocar a linha %define without_bytecode_interpreter 1 por **%define without_bytecode_interpreter 0, no arquivo.spec** (4) (não vou entrar no mérito de como gerar pacotes RPM).
A terceira maneira, bem mais fácil e rápida, é obter um pacote do FreeType para a sua distribuição que já venha com essa opção habilitada. No Mandrake, existe um pacote liberado pelo PLF (Penguin Liberation Front). Basta instalá-lo e pronto. Para saber como adicionar um mirror do PLF no seu URPMI, consulte o site do Easy-URPMI, nas referências (5). Depois, procure pelo pacote libfreetype6 com sufixo -plf e instale-o.
Por fim, você deve desabilitar o anti-aliasing no Gnome ou no KDE, e habilitar o hinting em modo full. Como uso Gnome, seguem as instruções para ele:
Reinicie o X, e pronto, suas fontes estão com ótima aparência!
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários