Freefont, TrueType e padrões com o Gimp

ArticleCategory:

Graphics

AuthorImage:

[Photo of the author]

TranslationInfo:[Author + translation history. mailto: or http://homepage]

Original in fr André Pascual

fr to en Scott Rutherford

en to pt Bruno Sousa

AboutTheAuthor:

Originalmente um desenhador industrial e agora um professor de tecnologias de manufacturação, especialmente CAD.
O Design e a publicação de desktop, principalmente em 3D, é uma das suas paixões.

Abstract:

Os tutoriais "Pseudo 3D" e "Effects of fire" fizeram com que recebesse muitos emails, em grande parte devido às dificuldades dos exercícios propostos. De facto é só uma matéria de dificuldade para os principiantes. O utilizador experiente do Linux não é travado por uma fonte em falta ou padrão : instalaria as fontes, ou encontraria um caminho "possível" para guardar. O que não foi o caso dos meus correspondentes. Toda a gente foi um principiante e quem não o é na área do Linux ? Então este artigo é dirigido ao principiante mas mesmo assim, os puristas não ficaram ofendidos com os métodos descritos.


ArticleIllustration:

[Illustration]

ArticleBody:

Preliminares

O Mandrake 8.0 e o Gimp 1.2.1 serviram como pacotes de referência para este artigo. Se utilizar versões diferentes, a estrutura dos directórios, índices ou os menus de drop down podem ser diferentes dos apresentados neste texto. Este devia ser o caso, a adaptação a uma configuração específica será requerida.
Ao discutir os caracteres impressos, utilizarei os termos fontes e estilos completamente permutados. Preencher os padrões será referenciado quer como padrões quer como desenhos decorativos. Em vez de referir XFree86, o nome oficial, utilizarei simplesmente X.
Semelhantemente quando me referir ao Midnight Commander, o qual permite a gestão de ficheiros sem conhecer profundamente as funções base do Linux e o seu leque de opções, direi MC. Os utilizadores do Norton Commander e Xtree Gold sobre o DOS, ou o WinCommander sobre o Windows sentir-se-ão em território familiar. Mesmo em cima os botões de função têm a mesma localização que no WinCommander ! Lembre-se de ser pragmático. É sem dúvida, melhor fazer algo funcional e com formas "feias" do que algo sofisticado e não funcional.


Instalação das Freefont e Sharefont

A script-fu, por omissão do Gimp, utiliza fontes que diferentes distribuições podem não instalar automaticamente. Estas fontes vêm em dois pacotes : Freefont e Sharefont. A primeira é livre e a segunda é distribuída sobre a licença de shareware, mas são ambas bastante interessantes. Sem dúvida que fazem uma grande diferença nas capacidades de apresentação do X.



[Figure 1]
Figura 1.


Estes dois pacotes estão disponíveis em arquivos .tgz graças a Christoph Lameter no seguinte endereço:
Muitos sites na internet (por exemplo http://ibiblio.org/pub/Linux/X11/fonts/, o ibiblio era formalmente, conhecido como metalab ou sunsite), e pode, por vezes, obtê-los nos CD´s das capas das revistas. A Linux Magazine France número 9 fornece-os num directório do seu CD de acompanhamento, chamado /Gimp/fonts.
Tomando isto como exemplo, as fontes podem ser instaladas do seguinte modo:

Se esta opção não estiver no menu, saia do MC (F10), o cursor aponta, ainda para a janela contendo os ficheiros copiados. Se se der ao trabalho de adicionar a seguinte linha ao .bashrc:
mc () MC=`/usr/bin/mc -P "$@"`; [ -n "$MC" ] && cd "$MC"; unset MC ;
encontrar-se-á no directório seleccionado. Se não for o caso vá para lá utilizando
cd /usr/X11R6/lib/X11/fonts
e depois descomprima directamente, utilizando :
tar xvfz *.tgz

Isto deixa-o com dois novos directórios, um chamado: freefont e o outro chamado: sharefont. Os arquivos .tgz podem ser agora apagados.
O Freefont contém 79 fontes, quase todas utilizáveis, e o Sharefont contém 22.



[Figure 2]
Figura 2.


Cada directório contém também um ficheiro especial chamado fonts.dir, que descreve ao X as características de cada fonte. Isto quer dizer que não precisa de correr o mkfontdir para gerar este ficheiro.
As fontes serão carregadas pelo X a próxima vez que for lançado mas só se disser antes que ele precisa de utilizá-los. Em velhas distribuições tinha de adicionar as seguintes linhas ao ficheiro /etc/X11/XF86Config, na secção chamada "Files":
FontPath "/usr/X11R6/lib/X11/fonts/freefont"
FontPath "/usr/X11R6/lib/X11/fonts/sharefont"
Contudo no Mandrake 8.0 é utilizado um servidor de fontes. Para adicionar as fontes à path do servidor de fontes utilize o utilitário chkfontpath :

chkfontpath --add /usr/X11R6/lib/X11/fonts/freefont/
chkfontpath --add /usr/X11R6/lib/X11/fonts/sharefont/
Reinicie o servidor de fontes:

/etc/rc.d/init.d/xfs restart

Se estiver no modo gráfico e não no modo de consola, as instruções acima são ainda válidas se digitadas a partir de um terminal (rxvt, kvt, wmterm...). Contudo as fontes não estarão imediatamente disponíveis; elas não são carregadas sem que reinicie o X, ou enquanto não digitar os seguintes comandos, a partir do terminal ainda aberto:
xset fp+ /usr/X11R6/lib/X11/fonts/freefont
xset fp rehash
xset fp+ /usr/X11R6/lib/X11/fonts/sharefont
Xset fp rehash

Resultados

No sentido de verificar que as fontes foram carregadas, corra

xlsfonts | egrep 'sharefont|freefont'
ou lance o xfontsel, ou simplesmente o font manager do KDE.
As fontes são, agora, utilizáveis por todas (bem, não realmente) as aplicação X.
As fontes podem ser reunidas numa tabela, como este artigo, utilizando o Gimp com os seguintes comandos:
xtns> Script-Fu> Utils> Font Map.
Importante: é um utilitário implacável! Basta um erro ao digitar o nome de uma fonte e é enviado automaticamente para atrás, para começar de novo. O melhor modo de contornar isto, é trabalhar com o font manager do KDE, ao mesmo tempo que se está a ver o campo de amostra. A figura 3 mostra algumas destas fontes as quais são úteis para criar logos caprichosos, ou letras de referência.


[Figure 3]
Figure 3.


Utilizando True Type

Estas novas fontes instaladas são interessantes, mas provavelmente tem uma partição do Windows no disco rígido, com as suas legiões de fontes True Type bonitas e bastante trabalhadas ? Se não tiver o Windows pode, também, fazer download de fontes True Type de vários sites na net, tais como: http://hugemcgriffin.com/fonts/a/, http://www.fontguy.com/, http://www.freepcfonts.com/index.html, ... É possível utilizá-las.
As últimas distribuições de Linux e as que estão para vir, têm naturalmente, considerado o seu uso. Não é o mesmo que velhas distribuições, como o Mandrake 5.3.
Diga-se, pelo menos, que uma solução existe. Vem na forma de um servidor chamado xfstt (um ficheiro executável simples que ronda os 130 kb após compilação) disponível no seguinte endereço (entre outros): ftp://sunsite.unc.edu/pub/Linux/X11/fonts/.

O arquivo que pretende chama-se Xfstt-0.9.10.tgz (ou a última versão) e tem cerca de 80kb. Os números da versão mostram que o programa ainda está sob desenvolvimento, mas funciona sem quaisquer problemas de referência.
Antes de o compilar é preciso preparar o terreno criando um directório para receber as fontes True Type, tal como /usr/share/fonts/truetype/ (mkdir /usr/share/fonts/truetype/ ou F7 no MC). Depois copie as fontes necessárias para este directório, ou crie uma ligação simbólica (F9 no MC antecedido por File e depois Symlink) apontando para o directório de fontes do windows. Na minha configuração o directório /usr/share/fonts/truetype/ contém a ligação winfonts que aponta para /mnt/Win98/windows/fonts, onde /mnt/Win98 é um ponto de montagem da minha partição windows.
A compilação do programa pode agora começar; para isto vá até ao directório criado pela descompressão do arquivo (/tmp/xfstt0910) e execute os seguintes comandos: make xfstt && make install
Quando a compilação tiver terminado, o binário executável xfstt será instalado em /usr/X11R6/bin. Agora, só falta dizer ao servidor que fontes usará. Execute o comando:
xfstt --sync --dir /usr/share/fonts/truetype
Isto terá o efeito de criar dois ficheiros de descrição em /usr/share/fonts/truetype chamdos ttinfo.dir e ttname.dir.
O servidor é lançado utilizando o comando: xfstt --dir /usr/share/fonts/truetype &.
Contudo ao executá-lo poderá parecer que nada aconteceu: estas fontes só estão disponíveis para o X e não no modo texto, e se estiver no X então, será necessário dizer ao X para as carregar. Isto pode ser feito, digitando o seguinte comando:
xset +fp unix/:7100
Momentos depois verifique com "xlsfonts | grep ttf-" ou com o xfontsel ou com ou com o font manager do KDE que as fontes TrueType estão disponíveis; deviam ser utilizáveis por todas as aplicações (bem, quase) que correm sobre o X. O StarOffice5 permite a sua utilização no StarDraw, StarImpress, StarCalc, mas estranhamente, não no StarWriter, talvez exista uma opção para o activar, mas se sim não a consegui encontrar. De qualquer modo são utilizáveis no Gimp, como pode ver pela figura 4. Existe um bom plugin de fontes para o Gimp. Se tiver este plugin instalado, então tem outro método de utilizar as fontes TrueType no Gimp. Ao contrário do servidor xfstt o plugin de freefont não torna as fontes disponíveis para todas as aplicações.



[Figure 4]
Figura 4.


A documentação do programa referencia que é possível adicionar ao ficheiro XF86Config, na secção Files a seguinte linha: FontPath "unix/:7100"; isto contudo, nunca trabalhou comigo; falo também de lançar o xfstt antes de iniciar o X, digitando os outros comandos num terminal, mas com o risco de nos esquecermos deles. A solução mais simples é automatizar as coisas escrevendo 2 pequenas scripts, uma para lançar o servidor e a outra para o fechar. Não se esqueça de tornar as scripts executáveis (no MC, F9 depois File e Chmod) e guarde-as em /usr/local/bin por exemplo. A script de activação pode ser chamada algo como ttf e a de desactivação dttf. A primeira contém as seguintes linhas :
#!/bin/sh
xfstt --sync --dir /usr/share/fonts/truetype
xfstt &
xfstt +fp unix/:7100

E a segunda contém simplesmente:

#!/bin/sh
xset -fp unix/:7100

Esta é a solução que utilizo: trabalha.

Criando Padrões

Os padrões (imagens) não são mais do que ficheiros de bitmap com o format .pat específico do Gimp (actualmente não tem direitos de cópia) que são utilizadas para preencher uma superfîcie com a ajuda de um utilitário "paint pot". São guardados no directório /usr/share/gimp/1.2/patterns/. Outros quaisquer padrões criados podem ser guardados neste lugar, o que dará acesso a todos os utilizadores, ou no seu directório home em ~/.gimp/patterns, neste caso só você conseguirá utilizar estas fontes.

Suponha que queremos utilizar a imagem na figura 5 para fazer de "papel" no background de uma imagem.



[Figure 5]
Figura 5.


Podíamo-lo fazer manualmente copiando e colando mas isto é um pouco cansativo e não muito preciso: Os padrões serão movidos para o pixel mais próximo! É melhor deixar o Gimp fazê-lo e verificará se o ficheiro a ser repetido está no formato correcto, um seja um ficheiro .pat.
Se não for o caso, pode remediar do seguinte modo:

Saia do Gimp, visto que o novo padrão ficará disponível ao reiniciar e carregue-o.
Na tool box, clique em File>Dialogs>Patterns. A caixa de selecção de padrões aparece e mostra exemplos de todos os padrões disponíveis; se clicar num exemplo, esse mesmo é aumentado temporariamente. Clicando também, numa amostra selecciona o padrão corrente.
Encontre o padrão Tuxdor, perto do fim da lista pois os padrões são listados alfabeticamente e seleccione-a para utilização.
Encontra o padrão Tuxdor, perto do fim da lista pois os padrões são listados alfabeticamente e seleccione-o para utilização.
Crie um novo espaço de trabalho com File>New>Width 288 Height 286 (espaço para 4 padrões )
duplo clique e preencha com uma cor (o "paint pot") e seleccione Pattern Fill.
Clique em qualquer sítio na imagem vazia e esta será preenchida pelo Tuxdor dourado:



[Figure 6]
Figura 6.


Contudo o preenchimento não é esteticamente agradável: as separações entre os padrões é visível. Isto deve-se ao facto do padrão em si não ter sido criado para permitir coberturas como esta. Alteremos isto. Abra novamente a figura 5. Clique direito na imagem e depois:
>Filters> Map> Make Seamless, e obtemos uma nova imagem.



[Figure 7]
Figura 7.


Guarde isto no mesmo lugar que Tux2.pat com o identificador TuxTile. Saia do Gimp, abra novamente e faça uma nova imagem de 432x392 pixels. Preencha esta nova imagem com o padrão TuxTile. Agora temos uma nova imagem sem separadores, mas parecendo um pouco militar (claro que tem o seu lugar dependendo do lugar de destino). Contudo a qualidade da imagem é muito melhor que a anterior.



[Figure 8]
Figura 8.


Contudo pode ainda desejar uma imagem mais suave, mais fundida. No sentido de fazer um padrão mais adequado:



[Figure 9]
Figura 9.




[Figure 10]
Figura 10.


Conclusão Provisória

A imagem final mostra o que pode com estas fontes de caracteres e os padrões para além daqueles que vêm com o Gimp. O texto foi criado utilizando o logo Script-Fu; claro que deu algum trabalho para parecer como tal, mas a mesma coisa pode ser atingida por qualquer um. Basta explorar as numerosas possibilidades que o software oferece e divertir-se com elas.