Como o Linux gerencia as fontes?

11

Quando usei o Windows (há muito muito tempo!) e o Mac OS X, sempre havia um "repositório" central de fontes compartilhadas e acessadas pelo sistema operacional e todos os programas (a pasta de fontes no Windows e o Font Reserve no Mac OS X).

Como as fontes são gerenciadas no Linux? Existe também um armazenamento central para fontes que todos os programas (o shell sem X, com X, gerenciadores de janela, outro software GUI) podem usar? Ou as fontes são gerenciadas separadamente? O que posso fazer para gerenciar minhas fontes de maneira eficiente e fácil no Linux?

    
por hpy 15.02.2011 / 18:23

2 respostas

13

Existem dois mecanismos para fontes no X land: lado do servidor e do lado do cliente.

A maneira tradicional de renderizar fontes é para o cliente dizer ao servidor “render foo na posição (x, y) na fonte F” (onde uma especificação de fonte inclui uma face, tamanho, codificação e outros atributos). O próprio servidor X, ou um programa especializado chamado servidor de fontes , abre o arquivo de fonte para construir a descrição de cada glifo . As fontes podem ser fontes bitmap ou vetoriais, mas as fontes vetoriais são convertidas em bitmaps antes da renderização.

A maioria dos programas modernos usa a renderização de fontes do lado do cliente, geralmente por meio de xft e fontconfig . Um novo mecanismo foi necessário porque a renderização de fonte do lado do servidor não suportava o anti-aliasing.

Fora do X (isto é, em um console VGA), existem fontes VGA, que são fontes bitmap de tamanhos específicos. Mas comparado ao X11, ninguém usa o console VGA, então não é gasto muito esforço neles.

Na prática, você desejará configurar fontes de duas maneiras:

  • Para programas de estilo antigo: os diretórios de fontes são listados por meio de FontPath diretivas em xorg.conf e pode ser manipulado com xset fp comandos do usuário executando o X. Se você instalar novas fontes, pode ser necessário executar mkfontdir .
  • Para programas de estilo mais novo, incluindo todos os programas Gtk (Gnome, etc.) e Qt (KDE, etc.): as fontes estão nos diretórios indicados por <dir> diretivas em /etc/fonts/fonts.conf , ~/.fonts.conf e algumas outros lugares. Consulte a documentação do fontconfig para obter mais informações. Se você instalar novas fontes, pode ser necessário executar fc-cache .
por 15.02.2011 / 23:49
3

As fontes do console e as fontes X são duas coisas separadas no linux. Use o comando setfont para alterar sua fonte e showconsolefont para ver como é. Cada distro tem sua própria maneira de configurar a fonte do console padrão. Leia a página setfont man para o local das fontes do console. Para o meu sistema Fedora 14, é / lib / kbd / consolefonts /. As fontes do console são um formato de arquivo que define as fontes do console EGA / VGA.

X As fontes são um formato diferente das fontes do console. Eles normalmente são manipulados por definições em sua configuração X (com FontPath na seção Arquivos) ou por meio de um servidor de fontes (xfs), que também é definido na seção Arquivos com FontPath. Você também pode adicionar FontPaths executando xset +fp path . Meu sistema tem todas as fontes X em / usr / share / X11 / fonts.

    
por 15.02.2011 / 20:39