As fontes padrão que são distribuídas com o XFree86™ estão aquém do ideal para aplicações comuns de editoração eletrônica. Fontes grandes em apresentações aparecem recortadas e com aparência nada profissional, e fontes pequenas no Netscape® são quase ininteligíveis. Entretanto, há várias fontes Type1 (PostScript®) gratuitas e de alta qualidade disponíveis, as quais podem ser usadas imediatamente com o XFree86, seja a versão 3.X ou a versão 4.X. Por exemplo, a coleção de fontes URW (x11-fonts/urwfonts) inclui versões de alta qualidade de fontes type1 padrão (Times Roman®, Helvetica®, Palatino® e outras). A coleção Freefonts (x11-fonts/freefonts) inclui muitas outras fontes, mas a maioria delas são destinadas ao uso em softwares de manipulação de gráficos como o Gimp, não sendo suficientemente completas para o uso como fontes de tela. Para completar, o XFree86 pode ser configurado para usar fontes TrueType® com um mínimo de esforço: veja a seção sobre fontes TrueType adiante.
Para instalar as coleções de fontes Type1 acima da coleção de ports, execute os comandos a seguir:
# cd /usr/ports/x11-fonts/urwfonts # make install clean
E da mesma forma para o freefont e outras coleções. Para dizer ao servidor X que estas fontes existem, adicione a linha apropriada ao arquivo XF86Config (em /etc/ para XFree86 versão 3, ou em /etc/X11/ para a versão 4), onde se lê:
FontPath "/usr/X11R6/lib/X11/fonts/URW/"
Alternativamente, na linha de comandos da sessão X execute:
% xset fp+ /usr/X11R6/lib/X11/fonts/URW % xset fp rehash
Isso vai funcionar mas será perdido quando a sessão do X for fechada, a menos que seja adicionada ao arquivo de inicialização (~/.xinitrc para uma sessão normal via startx, ou ~/.xsession quando o registro (login) for feito via um gerenciador de registro gráfico como o XDM). Uma terceira forma é utilizar o novo arquivo XftConfig: consulte a seção sobre anti-aliasing.
O XFree86 4.X tem suporte incorporado para a exibição produzida de fontes TrueType. Há dois módulos diferentes que podem permitir essa funcionalidade. O módulo freetype é utilizado neste exemplo por ser mais coerente com outros suportes para produção de fontes. Para habilitar o módulo freetype basta acrescentar a linha a seguir à seção ``Module'' do arquivo /etc/X11/XF86Config.
Load "freetype"
Para o XFree86 3.3.X, um servidor de fontes TrueType separado se faz necessário. O Xfstt é de uso comum para esta finalidade. Para instalar o Xfstt, basta instalar o port x11-servers/Xfstt.
Crie uma pasta para as fontes TrueType (por exemplo, /usr/X11R6/lib/X11/fonts/TrueType) e copie todas as fontes TrueType nesta pasta. Tenha em mente que as fontes TrueType não podem ser importadas diretamente de um Macintosh®; elas precisam estar no formato UNIX®/DOS/Windows® para que possam ser usadas pelo XFree86. Uma vez que os arquivos tenham sido copiados para esta pasta, use o ttmkfdir para criar um arquivo fonts.dir, de modo que o produtor de fontes do X saiba que estes novos arquivos foram instalados. O ttmkfdir está disponível na Coleção de Ports do FreeBSD como x11-fonts/ttmkfdir.
# cd /usr/X11R6/lib/X11/fonts/TrueType # ttmkfdir > fonts.dir
Agora adicione a pasta TrueType no caminho para as fontes (o font path). Esta é a mesma descrição utilizada anteriormente para as fontes Type1, isto é, utilize
% xset fp+ /usr/X11R6/lib/X11/fonts/TrueType % xset fp rehash
ou adicione uma linha FontPath ao arquivo XF86Config.
Isso é tudo. Agora o Netscape, o Gimp, o StarOffice™, e todos os outros aplicativos do X devem estar reconhecendo as fontes TrueType instaladas. Fontes muito pequenas (como um texto em um vídeo de alta resolução de uma página da internet) e fontes muito grandes (dentro do StarOffice) vão ter uma aparência muito melhor agora.
O Anti-aliasing está disponível no XFree86 desde a versão 4.0.2. Mesmo assim, configurar tais fontes era incômodo antes da introdução do XFree86 4.3.0. Da versão 4.3.0 em diante, todas as fontes em /usr/X11R6/lib/X11/fonts/ e em ~/.fonts/ são automaticamente disponibilizadas com anti-aliasing para os aplicativos prontos para o Xft. Nem todas as aplicações são preparadas para usar o Xft ainda, mas muitas já contam com o suporte Xft. Exemplos de aplicações que reconhecem o Xft incluem o Qt 2.3 e posteriores (conjunto de ferramentas feito para a área de trabalho do KDE), Gtk+ 2.0 e posteriores (conjunto de ferramentas para a área de trabalho do GNOME), e o Mozilla 1.2 e posteriores.
Para distinguir que fontes são anti-aliased, ou configurar as propriedades do anti-aliasing, crie (ou edite, se já existir) o arquivo /usr/X11R6/etc/fonts/local.conf. Vários recursos avançados do sistema de fontes Xft podem ser ajustadas através deste arquivo; esta seção descreve apenas algumas possibilidades simples. Para mais detalhes, por favor verifique em fonts-conf(5).
Este arquivo deve ser em formato XML. Preste bastante atenção à caixa dos caracteres e assegure-se de ter fechado todos os rótulos (tags). O arquivo começa com o cabeçalho usual do XML seguido de uma definição DOCTYPE, e então pelo rótulo <fontconfig>:
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig>
Como citado anteriormente, toda fonte em /usr/X11R6/lib/X11/fonts/ bem como em ~/.fonts/ são automaticamente disponibilizadas para aplicações prontas para o Xft. Se você deseja acrescentar outra pasta que esteja fora dessas duas hierarquias, acrescente uma linha similar a apresentada abaixo ao arquivo /usr/X11R6/etc/fonts/local.conf:
<dir>/path/to/my/fonts</dir>
Após acrescentar novas fontes, e especialmente novas pastas com fontes, você deve executar o comando a seguir para reconstruir os caches de fonte:
# fc-cache -f
O anti-aliasing torna as bordas pouco nítidas, o que proporciona a textos pequenos maior legibilidade e remove ``escadinhas'' de textos grandes, mas pode causar fadiga visual se aplicado ao texto normal. Para excluir fontes com tamanho em pontos menor 14 do anti-aliasing, inclua estas linhas:
<match target="font"> <test name="size" compare="less"> <double>14</double> </test> <edit name="antialias" mode="assign"> <bool>false</bool> </edit> </match>
O espaçamento para fontes monoespaçadas também pode ser inapropriado com o anti-aliasing. Isso parece ser uma questão presente no KDE, em particular. Uma correção possível para isso é forçar o espaçamento destas fontes para 100. Acrescente as seguintes linhas:
<match target="pattern" name="family"> <test qual="any" name="family"> <string>fixed</string> </test> <edit name="family" mode="assign"> <string>mono</string> </edit> </match> <match target="pattern" name="family"> <test qual="any" name="family"> <string>console</string> </test> <edit name="family" mode="assign"> <string>mono</string> </edit> </match>
(isso apelidará todo nome comum para fontes fixas como "mono"), e então acrescente:
<match target="pattern" name="family"> <test qual="any" name="family"> <string>mono</string> </test> <edit name="spacing" mode="assign"> <int>100</int> </edit> </match>
Certas fontes, como a Helvética, podem apresentar problemas quando usadas com anti-alias. Geralmente isso se apresenta como uma fonte que parece cortada ao meio verticalmente. No pior caso, isso pode causar a parada na execução de aplicativos como o Mozilla. Para evitar isso, considere acrescentar o seguinte ao arquivo local.conf:
<match target="pattern" name="family"> <test qual="any" name="family"> <string>Helvetica</string> </test> <edit name="family" mode="assign"> <string>sans-serif</string> </edit> </match>
Uma vez terminada a edição do local.conf assegure-se de colocar no final do arquivo o rótulo </fontconfig>. Não fazê-lo fará que suas modificações sejam desprezadas.
O conjunto padrão de fontes que vem com o XFree86 não é muito conveniente quando se trata de anti-alias. Um conjunto bem melhor de fontes padrão pode ser encontrado no port x11-fonts/bitstream-vera. Esse port irá instalar um arquivo /usr/X11R6/etc/fonts/local.conf se ele não existir. Se o arquivo existir, o port var criar o arquivo /usr/X11R6/etc/fonts/local.conf-vera . Faça a fusão do conteúdo deste arquivo com o /usr/X11R6/etc/fonts/local.conf, e as fontes Bitstream automaticamente substituirão as fontes Serif, Sans Serif e Monospaced padrão do XFree86.
Por fim, os usuários podem acrescentar suas próprias configurações em seus arquivos .fonts.conf pessoais. Para fazer isso, cada usuário deve apenas criar o arquivo ~/.fonts.conf. Este arquivo precisa também estar no formato XML.
Um último ponto: com telas de LCD, amostragem de subpontos pode ser desejável. Isso basicamente trata os componentes (horizontalmente separados) vermelho, verde e azul separadamente a fim de melhorar a resolução horizontal; os resultados podem ser espetaculares. Para permitir isso, acrescente a linha em algum lugar do arquivo local.conf:
<match target="font"> <test qual="all" name="rgba"> <const>unknown</const> </test> <edit name="rgba" mode="assign"> <const>rgb</const> </edit> </match>
Nota: Conforme o tipo de tela, o rgb pode precisar ser substituído por bgr, vrgb ou vbgr: experimente e veja qual funciona melhor.
O anti-aliasing deve estar habilitado na próxima vez que o servidor X for iniciado. Entretanto, os programas precisam saber como tirar vantagem disso. No presente, o conjunto de ferramentas Qt o faz, logo todo o ambiente do KDE pode utilizar fontes com anti-alias (consulte a Seção 5.7.3.2 sobre o KDE para detalhes). O Gtk+ e o GNOME também podem ser adaptados ao anti-alias através do capplet ``Font'' (consulte a Seção 5.7.1.3 para mais detalhes). Por padrão, o Mozilla 1.2 e posteriores vão usar o anti-alias automaticamente. Para desativar isso, reconstrua o Mozilla com o parâmetro -DWITHOUT_XFT.
Este, e outros documentos, podem ser obtidos em ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Para perguntas sobre FreeBSD, leia a documentação antes de contatar <questions@FreeBSD.org>.
Para perguntas sobre esta documentação, envie e-mail para <doc@FreeBSD.org>.