# ps_findfont

(PECL ps >= 1.1.0)

ps_findfont — Charge une police

### Description

ps_findfont(
resource `$psdoc`,
string `$fontname`,
string `$encoding`,
bool `$embed` = `false`
): int

ps_findfont() charge une police pour utilisation ultérieure. Avant que le texte soit écrit avec la police chargée, il doit être fixé avec ps_setfont(). Cette fonction doit avoir le fichier de police métrique "adobe" afin de calculer l'espace utilisé par les caractères. Une police qui est chargée dans une page sera seulement disponible sur cette page. Les polices qui seront utilisées dans le document complet doivent être chargées avant le premier appel de ps_begin_page(). L'appel de ps_findfont() entre les pages rendra cette police disponible pour toutes les pages qui suivent.

Le nom du fichier afm doit être `fontname``.afm`. Si la police doit être incorporée, le fichier `fontname``.pfb` contenant le dessin de la police doit être présent aussi.

L'appel de ps_findfont() avant la première page requiert l'affichage de l'en-tête du postscript qui inclut le BoundingBox pour le document entier. Normalement, le BoundingBox est fixé avec le premier appel de ps_begin_page() qui vient maintenant après ps_findfont(). En conséquence, le BoundingBox n'a pas été fixée et une erreur sera lancée lorsque ps_findfont() sera appelée. Afin de prévenir cette situation, vous devriez appeler la fonction ps_set_parameter() pour fixer le BoundingBox avant que ps_findfont() soit appelée.

### Liste de paramètres

`psdoc`

  Identifiant d'un fichier postscript retourné par ps_new().

`fontname`

  Le nom de la police.

`encoding`

  ps_findfont() essaiera de charger le fichier passé dans le paramètre `encoding`. Les fichiers d'encodage sont de même syntaxe que ceux utilisés par dvips(1). Ils contiennent un vecteur de police d'encodage (qui n'est actuellement pas utilisé, mais qui doit être présent) et une liste de ligatures en extra pour prolonger la liste des ligatures dérivées du fichier AFM.

  `encoding` peut être `null` ou une chaîne de caractères vide si l'encodage par défaut (TeXBase1) désire être utilisé.

  Si l'encodage est fixé à `builtin` alors il n'y aura pas d'encodage à nouveau et l'encodage spécifique de police sera utilisé. Cela est très utile pour les polices avec symboles.

`embed`

  Si fixé à une valeur >0, la police sera incorporée dans le document. Ceci requiert la présence du fichier dessin (.pfb).

### Valeurs de retour

Retourne un identifiant de la police ou zéro en cas d'erreur. L'identifiant est un nombre positif.

### Voir aussi

- ps_begin_page() - Démarre une nouvelle page
- ps_setfont() - Fixe la police à utiliser pour la prochaine écriture