SYNOPSIS
use Defoma::Font;defoma_font_register( catégorie, police, indications... );
defoma_font_unregister( catégorie, police );
defoma_font_reregister( catégorie, police, indications... );
defoma_font_if_register( catégorie, police );
@polices = defoma_font_get_fonts( catégorie );
@indications = defoma_font_get_hints( catégorie, police );
%echec_apps = defoma_font_get_failed ( catégorie, police );
DESCRIPTION
Defoma::Font est un module Defoma qui permet de gérer l'enregistrement et le désenregistrement de polices et de caches de polices. Il fournit les fonctions listées ci-dessous qui sont supposées être appelées dans les scripts de configuration Defoma lorsque les scripts veulent enregistrer ou désenregistrer une police, ou veulent récupérer les données contenues dans un cache de police (« font-cache »), qui contiennent des polices et leurs indications.defoma_font_register permet d'enregistrer une police dans une catégorie avec les indications spécifiées. Si la police est déjà enregistrée, la fonction renvoie une valeur non nulle. Sinon, la police et ses indications sont enregistrées dans le cache de polices de la catégorie spécifiée, et les autres scripts de configuration Defoma qui acceptent la catégorie spécifiée sont appelés avec la commande register.
defoma_font_unregister permet de retirer une police d'une certaine catégorie. Si la police n'est pas enregistrée dans la catégorie spécifiée, elle retourne une valeur non nulle. Sinon, les autres scripts de configuration Defoma qui acceptent cette catégorie sont appelés avec la commande unregister, et la police et ses indications sont retirées du cache de polices de la catégorie.
defoma_font_reregister rappelle defoma_font_unregister et defoma_font_register dans l'ordre. Si la police spécifiée n'est pas enregistrée dans la catégorie, l'étape de désenregistrement est passée. Si la police est déjà enregistrée dans une autre catégorie, cette fonction retourne une valeur non nulle.
defoma_font_if_register permet de vérifier si une police est enregistrée dans une catégorie. Si la police est enregistrée, elle retourne une valeur non nulle. Sinon, cette fonction retourne zéro.
defoma_font_get_fonts permet d'obtenir une liste de polices enregistrées dans la catégorie spécifiée. Cette fonction retourne la liste des polices sous forme de tableau (« police1 police2 police3 ... »).
defoma_font_get_hints permet d'obtenir les indications de la police enregistrée dans la catégorie spécifiée. Une liste d'indications sous forme de tableau est retournée.
defoma_font_get_failed permet d'obtenir les applications pour lesquelles Defoma n'a pas réussi à configurer la police spécifiée. Cette fonction retourne une table de hachage dont les clés sont les applications et les valeurs sont les statuts d'erreur.
EXEMPLES
1. Enregistrement de « Helvetica-Bold » dans la catégorie « postscript » avec des indications.
$police = 'Helvetica-Bold'; @indications = ('--Family', 'Helvetica', '--Weight', 'Bold', '--Charset', 'ISO8859-1); defoma_font_register('postscript', $police, @indications);
2. Désenregistrement de « toto.pfa » de la catégorie « type1 ».
$police = '/usr/share/fonts/toto.pfa'; defoma_font_unregister('type1', $police);
3. Désenregistrement de « toto.pfa » de la catégorie « type1 », s'il était enregistré.
$police = '/usr/share/fonts/toto.pfa'; if (defoma_font_if_register('type1', $police)) { defoma_font_unregister('type1', $police); }
4. Récupération d'une liste de polices et de leurs indications
%hash = (); @polices = defoma_font_get_fonts('x-postscript'); foreach $police (@polices) { $hash{$police} = []; @{$hash{$police}} = defoma_font_get_hints('x-postscript', $police); }
TRADUCTION
Ce document est une traduction, réalisée par Nicolas François le 29 juillet 2005 et mise à jour par Cyril Brulebois en janvier 2007.L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité.
La version anglaise la plus à jour de ce document est toujours consultable en ajoutant l'option « -L C » à la commande man.
N'hésitez pas à signaler à l'auteur ou à la liste de traduction <[email protected]>, selon le cas, toute erreur dans cette page de manuel.