SCR/AL1 - TOME I. Les programmes
16. SCR4_PS : impression d'un fichier en postscript
scr4_ps est un utilitaire d'impression qui permet de transformer une fichier ASCII PC-8 en format Postscript. Les différents paramètres du programme permettent de choisir la police de caractères, l'interligne, les marges, l'orientation, etc.
Le programme scr4_lab permet d'imprimer des étiquettes en PostScript.
Les caractères semi-graphiques du DOS sont remplacés par des segments de lignes, de simple ou de double épaisseur, selon le caractère.
Méthode d'impression
Le fichier à imprimer est lu ligne par ligne. Chaque ligne est imprimée sous la précédente, en tenant compte de l'interligne spécifié. La première ligne ne commence qu'après la marge verticale spécifiée. Dès que la fin de la page est atteinte (moins la marge verticale), une nouvelle page est entamée.
Si un caractère de saut de page (formfeed = '\f') est rencontré, la page courante se termine également.
Pour l'impression d'une ligne, le processus se déroule comme suit :
- tant que des caractères non blancs sont rencontrés, ils sont imprimés à la suite les uns des autres, leur espacement étant laissé au processeur PostScript. Il en va de même si un blanc se trouve isolé entre deux mots.
- si deux caractères blancs successifs sont rencontrés, le texte suivant est placé à une position calculée sur base du caractère Courier de même taille que le caractère utilisé. Cette manière de procéder, même si elle n'est pas toujours adéquate, permet d'imprimer un tableau en caractères non proportionnels, tout en gardant un alignement acceptable.
- lorsqu'un caractère semi-graphique ou une tabulation est rencontré, le repositionnement des caractères suivants s'effectue exactement comme dans le cas décrit ci-dessus pour plusieurs blancs. La tabulation correspond au repositionnement sur la prochaine position multiple de 8.
Syntaxe
scr4_ps -option args ... @responsefile
OPTION ARGUMENTS REQ DEFAULT DESCRIPTION
------ --------- --- ------- -----------
-i filename N input filename
-o filename N output filename
-font fontname N Times-Romanfont name
-size points nb N 9.0 fontsize
-margv points nb N 30.0 vert.margins size
-margh points nb N 20.0 horiz.margins size
-linesp points nb N 2.0 line spacing
-landscape N invert page
-h N display this help
- -i filename : fournit le nom du fichier à imprimer. Si ce nom n'est pas donné, l'input est attendu du standard input.
- -o filename : fournit le nom du fichier output. Ce nom peut être celui d'une imprimante (en DOS). Par défaut, l'output est envoyé dans le standard output.
- -font name : nom de la police à utiliser. Si la police n'existe pas, les résultats seront probablement incorrects : la police par défaut est sélectionnée automatiquement par l'imprimante, et le positionnement des caractères peut être erronnée. Par défaut, la police est Times-Roman. Les polices disponibles en général sont les suivantes :
- "Courier"
- "Courier-Bold"
- "Courier-BoldOblique"
- "Courier-Oblique"
- "Helvetica"
- "Helvetica-Bold"
- "Helvetica-BoldOblique"
- "Helvetica-Narrow"
- "Helvetica-Narrow-Bold"
- "Helvetica-Narrow-BoldOblique"
- "Helvetica-Oblique"
- "Symbol"
- "Times"
- "Times-Bold"
- "Times-BoldItalic"
- "Times-Italic"
- "Times-Roman"
- "AvantGarde-Book"
- "AvantGarde-BookOblique"
- "AvantGarde-Demi"
- "AvantGarde-DemiOblique"
- "Bookman-Demi"
- "Bookman-DemiItalic"
- "Bookman-Light"
- "Bookman-LightItalic"
- "Garamond-Bold"
- "Garamond-BoldItalic"
- "Garamond-Light"
- "Garamond-LightItalic"
- -size n : donne la taille en points des caractères à utiliser. Par défaut, cette valeur est fixée à 9. Des tailles non entières sont permises (8.2).
- -margv points et -margh points : indique la taille des marges verticales et horizontales qui doivent être sautées avant de commencer l'impression du texte. Les mêmes marges sont utilisées à gauche et en bas de page. Par défaut, une marge verticale de 30.0 points est retenue et de 20.0 points horizontaux.
- -linesp points : indique l'interligne à passer entre deux lignes de texte. Par défaut, cet interligne est fixé à 2 points (ajoutés à la ligne elle-même). Pour une police de 9.0 points, la différence de hauteur entre deux lignes successives est donc de 11.0 points par défaut.
- -landscape : permet d'imprimer dans le sens "paysage", c'est-à-dire dans le sens de la plus grande longueur de papier.
- -h : affiche la syntaxe du programme