|
|
par André Pascual <apascual(at)club-internet.fr> L´auteur: Dessinateur industriel d'origine,maintenant professeur de
productique,il enseigne la CAO. Sommaire: |
Résumé:
Les tutoriaux "Pseudo 3D" et "Effets de feu" m'ont valu beaucoup de courriers suscités,pour la plus grande partie,par la difficulté à réaliser les exercices proposés. En fait,Il ne s'agissait de difficultés que pour l'utilisateur débutant. Le linuxien expérimenté n'est pas arrêté par une police ou un "pattern" manquant: il a tôt fait d'installer des polices,ou de retrouver un chemin de sauvegarde,ce qui n'était pas le cas de mes correspondants. Tout le monde a été débutant,et qui ne le reste pas dans un domaine ou un autre en utilisant Linux ? Aussi,cet article s'adresse-t'il aux débutants,quand bien même les puristes seraient-ils offusqués par les méthodes décrites.
La Mandrake 8.0 et Gimp 1.2.1 servent de référence à cet article.
Arborescence, répertoires ou menus décrits peuvent donc différer selon
les versions de produits utilisés. Sans doute une adaptation à des
configurations spécifiques est-elle à prévoir.
Pour parler des caractères d'imprimerie, on dira indifféremment
polices ou fontes.
Pour parler des motifs de remplissage, on dira tout aussi
indifféremment motifs ou patterns.
Lorsque l'on parlera de Xfree86, faisant fi de l'appellation
officielle, on dira X.
Lorsque l'on en appellera à Midnight Commander, qui autorise la
gestion de fichiers sans nécessité de connaître les fonctions de base
de Linux et leur pléthore d"options,on dira MC. Tout utilisateur de
Norton Commander et Xtree Gold sous Dos, ou de WinCommander sous
Windows, se retrouvera en terrain connu. Jusqu'aux touches de fonction
qui ont reçu la même affectation dans MC que dans WinCommander!
Soyons donc pragmatiques. Sans doute vaut-il mieux faire balourd et
fonctionnel que sophistiqué et inopérant!
Les scripts-fu utilisent par défaut des polices que les différentes distributions n'installent pas toujours automatiquement. Ces polices sont réparties dans deux paquetages: Freefont et Sharefont. L'un est libre, l'autre est distribué selon le principe du shareware, mais tous deux sont fort intéressants. Ils apportent sans conteste une plus-value à X en soignant sa présentation.
Ces deux paquetages sont disponibles en archives .tgz auprès de
Christoph Lameter à l'adresse suivante:
Christoph Lameter.
Plusieurs sites les proposent (par exemple http://ibiblio.org/pub/Linux/X11/fonts/,
ibiblio se nommait à l'origine metalab ou sunsite)
Plusieurs distributions les proposent dans un répertoire
/Contrib, de même que des cédéroms de couverture de magazines
informatiques. Ainsi Linux Magazine 9 les proposent dans le répertoire
/Gimp/fonts de son CD d'accompagnement.
Supposons que l'on dispose de ce cédérom et que l'on soit en mode
console (mode texte donc). Procéder alors comme suit:
Si cette option n'est pas dans le menu, sortir de MC (F10), le
curseur étant positionné sur la fenêtre pointant les fichiers copiés.
Si l'on a pris la peine d'ajouter la ligne suivante dans .bashrc :
mc () MC=`/usr/bin/mc -P "$@"`; [ -n "$MC" ] && cd "$MC"; unset MC ;
on se retrouve dans le répertoire pointé. Sinon, s'y rendre par
cd /usr/X11R6/lib/X11/fonts
et lancer la commande de décompression:
tar xvfz *.tgz
On obtiendra alors deux nouveaux répertoires, l'un appelé: freefont et
l'autre appelé: sharefont. Les fichiers compressés .tgz peuvent être
effacés maintenant.
Freefont contient 79 polices, presque toutes utilisables, et sharefont
contient 22 polices.
Chaque répertoire contient en outre un fichier spécial et obligatoire
appelé fonts.dir, qui décrit pour X les caractéristiques des polices
contenues dans ce répertoire. Point n'est besoin donc d'exécuter la
commande mkfontdir pour générer ce fichier.
Les polices seront prises en comptes par X au prochain lancement de
celui-ci à condition qu'on lui indique qu'il doit les utiliser. Pour
cela, il convient d'ajouter dans /etc/X11/XF86Config, à la section "
Files" les lignes suivantes:
FontPath "/usr/X11R6/lib/X11/fonts/freefont"
Toutefois, dans Mandrake 8.0 un serveur de polices est utilisé. Pour ajouter les
polices au chemin du serveur, exécutez l'utilitaire chkfontpath :
FontPath "/usr/X11R6/lib/X11/fonts/sharefont"
chkfontpath --add /usr/X11R6/lib/X11/fonts/freefont/
chkfontpath --add /usr/X11R6/lib/X11/fonts/sharefont/
Redémarrez le serveur de polices :
/etc/rc.d/init.d/xfs restart
Si l'on est en session graphique, et non en mode console, la
manipulation ci-dessus reste valable à ceci près qu'elle s'effectuera
dans un terminal (rxvt, kvt, wmterm...). Mais les polices ne seront
pas immédiatement prises en compte; elles ne le seront que lors du
redémarrage de X, ou bien si l'on exécute dans le terminal encore
ouvert les commandes suivantes:
xset fp+ /usr/X11R6/lib/X11/fonts/freefont
xset fp rehash
xset fp+ /usr/X11R6/lib/X11/fonts/sharefont
Xset fp rehash
On verifiera que les polices sont prises en charge en exécutant
xlsfonts | egrep 'sharefont|freefont'
ou en lançant xfontsel,
ou mieux, parce que moins rustique, gtkfontsel ou tout simplement le
gestionnaire de polices de KDE.
Les polices sont alors utilisables par toute (pas vraiment)
application X.
Ces polices peuvent être regroupées dans un tableau, comme dans cet
article, en utilisant Gimp avec la commande:
xtns> Script-Fu> Utils> Font Map.
Attention: outil impitoyable. La moindre erreur lors de l'entrée d'un
nom de police vous refoulera sans pitié avec obligation de tout
recommencer. Le mieux est d'opérer avec le gestionnaire de police de
KDE ouvert en même temps que Gimp, parce qu'il indiquera le nom
correct de la fonte tout en la visualisant dans le champ échantillon.
La figure3 montre certaines de ces polices, utiles pour créer des
logos fantaisistes ou créer des lettrines.
Les polices que l'on vient d'installer sont intéressantes, mais qui n'a
pas sur son disque dur une partition Windows et sa cohorte de fontes
True Type de fort belle facture? Il est donc légitime de vouloir les
utiliser.
Si vous n'avez pas Windows vous pouvez télécharger des polices TrueType à partir
de différents sites web, tels que http://hugemcgriffin.com/fonts/a/,
http://www.fontguy.com/, http://www.freepcfonts.com/index.html,
... Elles s'utilisent sans problème.
Les dernières distributions de Linux, et celles à venir encore plus,
prévoient naturellement leur emploi. Il n'en est pas de même sur une
distribution plus ancienne, comme la Mandrake 5.3.
Cependant, au moins une solution existe. Il s'agit d'un serveur appelé
Xfstt (un simple fichier exécutable de 130 Ko après compilation)
disponible,entre autres, à l'adresse suivante:
ftp://sunsite.unc.edu/pub/Linux/X11/fonts/.
Il s'agit d'une archive appelée Xfstt-0.9.10.tgz de 80 Ko. Le numéro
de version indique que le programme n'est pas encore finalisé, mais il
fonctionne sans gros problèmes.
Avant compilation, il faut préparer le terrain en créant un répertoire
destiné à recevoir des fontes TrueType, tel que /usr/ttfonts (mkdir
/usr/ttfonts ou F7 dans MC). Ensuite, il faut copier dans ce
répertoire les polices à utiliser, ou créer un lien symbolique (Dans MC,
F9, File puis SymLink) pointant vers le répertoire Fonts de Windows.
Dans ma configuration, /usr/ttfonts contient le lien ~winfonts
pointant vers /mnt/Win98/windows/fonts, étant entendu que /mnt/Win98
est le point de montage de ma partition Windows.
La compilation du programme peut alors commencer; à cet effet, se
rendre dans /tmp/xfstt0910 créé lors de la décompression de l'archive
et exécuter ensuite la commande:
make xfstt && make install
Quand le processus est terminé, le fichier binaire exécutable xfstt
produit est installé dans /usr/X11R6/bin. Il convient maintenant
d'indiquer au serveur xfstt quelles polices True Type il aura à
utiliser. A cette fin, exécuter la commande:
xfstt --sync
Cela a pour effet de créer deux fichiers de description dans
/usr/ttfonts
appelés ttinfo.dir
et
ttname.dir.
Le serveur se lance par la commande: xfstt &
.
Mais rien ne semble se passer à l'exécution de la commande: ces fontes
n'étant utilisées que par X, elles ne sont donc pas disponibles en
mode console, et si l'on est en mode graphique, il faut indiquer à X
de les prendre en charge. Cela s'obtient par la commande:
xset +fp unix/:7100
Vérifier ensuite avec xfontsel ou le gestionnaire de polices de KDE
que les TrueType sont alors disponibles; elles devraient l'être pour
toutes (presque!) les applications X. SatrOffice5 les accepte pour
StarDraw, StarImpress, StarCalc... mais bizarrement pas pour
StarWriter, à moins qu'il y ait une option à activer, laquelle aura
échappé à ma sagacité :-).
En tout cas, elles sont utilisables pour Gimp (voir figure 4). Il existe
également un plugin freefont pour Gimp. Si ce plugin est installé sur votre
machine, vous bénéficiez alors d'une nouvelle possibilité d'utiliser les polices
TrueType dans Gimp. A la différence du serveur xfstt, le plugin freefont ne rend
pas les polices disponibles à toutes les applications.
#!/bin/sh xfstt --sync --dir /usr/share/fonts/truetype xfstt & xfstt +fp unix/:7100
Le second contiendrait simplement:
#!/bin/sh xset -fp unix/:7100
C'est la solution que j'utilise: elle fonctionne.
Les patterns (motifs) ne sont rien d'autres que des fichiers d'image bitmap au format .pat spécifique (pour ne pas dire propriétaire) de Gimp, qui servent à remplir une surface à l'aide du "pot de peinture". Ils sont sauvegardés dans les répertoire /usr/share/gimp/1.2/patterns/. Ceux que l'on crée peuvent être sauvés à cet emplacement, auquel cas tous les utilisateurs y auront accès, ou dans son répertoire personnel ~/.gimp/patterns, auquel cas seul root et soi-même y auront accès.
Supposons que l'on veuille utiliser la figure5 pour "tapisser" le fond (background) d'une image.
On peut le faire manuellement par
copier-coller, mais l'opération est longue et peu précise: les motifs
seront-ils juxtaposés au pixel près? Il vaut mieux laisser à Gimp le
soin de le faire, et il le fera si l'image à répéter est un motif pour
lui, c'est à dire un fichier .pat.
Ce n'est actuellement pas le cas. On y remédie en procédant comme suit:
Quittons Gimp, puisque ce nouveau motif ne sera utilisable qu'au
redémarrage, et relançons-le.
Dans la boîte à outils, cliquer sur File>Dialogs>Patterns. La boîte
Patterns Selection apparait et affiche des écantillons minuscules des
motifs disponibles; si l'on clique sur un échantillon, celui-ci
s'affiche momentanément à l'échelle 1 sous le pointeur de la souris.
De plus, le fait de cliquer sur un échantillon sélectionne le
motifqu'il représente.
Recherchons le motif Tuxdor, en fin de liste donc, puisque les
patterns sont classés par ordre alphabétique, et sélectionnons-le pour
l'utiliser.
Créer un dessin de travail par File>New>Width 288 Height 286
(dimension pour 4 motifs).
Double cliquer sur Fill with a color or pattern (le pot de peinture)
Sélectionner Pattern Fill
Cliquer n'importe où dans l'image vide et celle-ci se remplit de Tux
d'Or.
Cependant le remplissage n'est pas esthétique: les "coutures" entre motifs sont visibles. Cela vient du motif lui-même, qui n'a pas été créé pour effectuer un nappage sans raccord. Fabriquons-en un. Ouvrir de nouveau la figure5 Clic droit sur l'image> Filters> Map> Make Seamless On obtient un nouveau motif
Le sauvegarder au même emplacement que Tux2.pat, avec l'identifiant TuxTile. Quiiter Gimp, relancer, préparer une image de 432x392 La remplir avec le motif TuxTile On obtient alors une image sans raccord mais avec un aspect un peu militaire (qui peut être recherché ailleurs, selon la destination de l'image).L'aspect est cependant de meilleure qualité que précédemment.
On pourrait vouloir malgrè tout une image plus douce, plus fondue.Fabriquons le motif adéquat:
L'image finale montre l'utilisation que l'on peut faire de ces polices de caractères venues d'ailleurs, et des motifs autres que les motifs standards de Gimp. Les textes sont réalisés avec le Sript-Fu logo; certes, ils ont été quelque peu travaillés pour offrir cet aspect, mais faire la même chose est à la portée de tous. Il suffit d'explorer les innombrables possibilités du logiciel, et de s'amuser avec.
|
Site Web maintenu par l´équipe d´édition LinuxFocus
© André Pascual, FDL LinuxFocus.org Cliquez ici pour signaler une erreur ou envoyer un commentaire à Linuxfocus |
Translation information:
|
2001-10-17, generated by lfparser version 2.18