L'imprimante locale par défaut, reconnue par lpr, s'appelle lp. Par exemple pour déclarer une matricielle Epson 24 pin ou compatible :
name: lp|Epson24Elle doit avoir son spool dir :
/var/spool/lpd/lp...et doit être affectée à un device :
/dev/lp0Ne pas faire de confusion entre nom du printer et nom du device :
lp = local printer , lp0 = descripteur port 0 .On lui attribue un input filter :
*auto* -Epson24Puis, au moyen de l'option 'Select' :
Epson dot matrix, 24 pinIl suffit de parcourir la table proposée par Select et de sélectionner le modèle correspondant. S'il n'y figure pas, choisir dans la série un modèle approchant, présumé compatible. Printtool crée, sur cette base, le fichier /etc/printcap, lequel contient :
:sd=/var/spool/lpd/lp:\ :lp=/dev/lp0:\ :if=var/spool/lpd/lp/filter:L'imprimante ainsi configurée, on peut imprimer un texte, toutefois les caractères accentués seront traduits par des lettres grecques ou autres caractères hors contexte, selon la table de caractères active. En effet, Linux utilise des jeux de caractères ISO, alors que l'imprimante utilise les codepages PC . La solution est de convertir le fichier à imprimer en Postscript, puis convertir le Postscript dans le mode graphique de l'imprimante.
C'est le rôle du filtre 'filter' lequel est 'magic' il appelle les différents filtres nécessaires selon le type de texte. Enfin ce texte transite par ghostscript qui l'envoie à l'imprimante en mode graphique. Pour cela il faut, par l'option 'select' de printtools :
- choisir la résolution maximale, par exemple 360 x 216
- sélectionner l'option :
'fast printing : no, PS-printer only'...cela revient à déclarer une imprimante Postscript
On peut aussi déclarer d'autres imprimantes, leur nom est libre, par exemple :
name: myjet|ma HP LaserjetPrinttool crée l'entrée correspondante dans /etc/printcap et dans /var/spool/lpd . Cette imprimante n'étant pas l'imprimante par défaut , il faudra la nommer à chaque utilisation avec l'option -P
lpr -Pmyjet montexteSi on veut l'utiliser comme imprimante par défaut, il faudra impérativement la nommer lp .
3
Exemple de fichier /etc/printcap
# Please don't edit this file directly unless you know what you are doing!
# Be warned that the control-panel printtool requires a very strict format!
# Look at the printcap(5) man page for more info.
#
# This file can be edited with the printtool in the control-panel.
##PRINTTOOL3## LOCAL eps9high 240x216 a4 {} Epson9HiRes
eps:\
:sd=/var/spool/lpd/eps:\
:mx#0:\
:sh:\
:lp=/dev/lp0:\
:if=/var/spool/lpd/eps/filter:
##PRINTTOOL3## LOCAL djet500 300x300 letter {} DeskJet500Mono Default {}
lp|DeskJet510:\
:sd=/var/spool/lpd/lp:\
:mx#0:\
:sh:\
:lp=/dev/lp0:\
:if=/var/spool/lpd/lp/filter:
menu