Printing Greek chars from a2ps...patch (sort of)

Dimitris Kamenopoulos el97146 at mail.ntua.gr
Mon Sep 17 01:24:01 EEST 2001


> Den gnorizo gia tia grammatoseires tou Louraki. Exeis kapoia links?

Auto to keimenaki eixa steilei sto maintainer tou HOWTO. 8a epishmanw oti kai 
oi "kanonikes" pfb grammatoseires GRAPHIS typwnontai swsta, alla dinontas sto 
a2ps parametro iso1. Vlepeis oi Graphis exoun ellinika glyphs me latinika
onomata kai apo ekei ksekinoun ena swro provlimata.
Filika, Dimitris

---------------
Θα χρειαστείτε:
-----------------------------
a2ps >= 4.12
ελληνικές γραμματοσειρές pf[a,b], και τα .afm τους.
μερικά αρχειάκια που θα φτιάξετε μόνοι σας

Θα το βρείτε:
-----------------------------
το a2ps στη διανομή σας, ή σε οποιδήποτε καλό gnu mirror.
γραμματοσειρές, όσοι έχετε εγκαταστήσει τις ΓΡΑΦΙΣ, λογικά στο
/usr/X11/lib/X11/fonts/hellas/Type1
ενώ μπορείτε να τις κατεβάσετε και από το www.hellug.gr.

Μπορείτε επίσης να χρησιμοποιήσετε μερικές πολύ καλές γραμματοσειρές
που υπάρχουν στο www.csd.uch.gr/~lourakis/genscript/fonts.tgz.

Οδηγίες
-------------------------
Στα παρακάτω υποθέτουμε ότι ο βασικός κατάλογος του a2ps βρίσκεται στο
    /usr/share/a2ps

1) Γραμματοσειρές ΓΡΑΦΙΣ
Αντιγράψτε τις γραμματοσειρές (.pfb ΚΑΙ .afm) στο
    /usr/share/a2ps/fonts
Πηγαίντε στο /usr/share/a2ps/afm (όπου θα δείτε ένα αρχείο
fonts.map) και τρέξτε το σκριπτάκι make_fonts_map.sh.
Αυτό, αν όλα πάνε καλά, θα δημιουργήσει ένα νέο αρχείο fonts.map
με όνομα fonts.map.new. Μετονομάστε το σε fonts.map (σβήνοντας το
παλιό). Τώρα το a2ps μπορεί να χρησιμοποιήσει τις γραμματοσειρές
σας.

2) Γραμματοσειρές lourakis :)
Αποσυμπιέστε το fonts.tgz. Περιέχει αρχεία
.pfa, .afm και ένα βοηθητικό font.map. Αντιγράψτε τα αρχεία .pfa και .afm στο
/usr/share/a2ps/fonts. Ανοίχτε ΜΕ ΕΝΑΝ EDITOR το
/usr/share/a2ps/afm/fonts.map και προσθέστε του τα περιεχόμενα
του font.map που πήρατε από το fonts.tgz. Η διαδικάσία αυτή είναι
αναγκαία γιατί το σκριπτάκι που τρέξαμε στην περίπτωση (1) καταρρέει
αν συναντήσει πολύ μεγάλα όνόματα γραμματοσειρών, οπότε αναγκαστικά
πρέπει να τις προσθέσετε στο fonts.map με το χέρι.
Και αυτές οι γραμματοσειρές είναι τώρα στη διάθεση του a2ps.

Εκτός από την ποιότητα και την εμφάνιση, υπάρχει μία ακόμα διαφορά
ανάμεσα στις γραμματοσειρές. Οι μεν (ΓΡΑΦΙΣ) έχουν κωδικοποίηση
latin (τα glyphs έχουν τα λατινικά ονόματα), οπότε όποτε τυπώνουμε με
αυτές πρέπει να ζητούμε κωδικοποίηση iso1 (παράμετρος -Χ του
a2ps), ενώ οι δε έχουν κωδικοποίηση latingreek, οπότε πρέπει να ζητούμε
κωδικοποίηση iso7. Και στις δύο περιπτώσεις, ελληνικά θα βλέπουμε βεβαίως!

Μένει ένα ακόμη βήμα:
Να πούμε στο a2ps να χρησιμοποιήσει τις νέες γραμματοσειρές. Εδώ
χρειάζεται λίγο ζόρι. Το a2ps χρησιμοποιεί ένα είδος stylesheets, τα
αρχεία .pro που μπορούμε να δούμε στο
    /usr/share/a2ps/ps
Ανοίχτε ένα από αυτά (π.χ. το color.pro). Αγνοώντας διάφορα χαζά που
λέει στην αρχή, ας δούμε την εξής παράγραφο:

/k {
  false BG
  false UL
  false BX
  0 0 0.9 FG
%Face: Keyword Courier bfs
  Show
} bind def

τι λέει αυτή; Πολύ απλά, λέει στο a2ps πως τα keywords (π.χ. οι
λέξεις while, if, struct όταν τυπώνετε κώδικα C) πρέπει να τυπωθούν
με γραμματοσειρά Courier. Οι άλλες εντολές λένε διάφορα για τα
χρώματα, που δεν είναι του παρόντος. Αν θέλετε για τα keywords να
χρησιμοποιείται μια ελληνική γραμματοσειρά από αυτές που προσθέσαμε,
αλλάξτε το Courier πχ. σε Arial-ISOLatinGreek.
Με τον ίδιο τρόπο αλλάζετε τις γραμματοσειρές παντού. Εννοείται ότι
μπορείτε να πειραματιστείτε όσο θέλετε. Μπορείτε π.χ. να βάλετε
μια italic γραμματοσειρά για τα keywords, και μια έντονη για
το κανονικό κείμενο.
Τα ονόματα των γραμματοσειρών μπορείτε να τα δείτε στο fonts.map,
και εξυπακούεται πως σε κάθε .pro που φτιάχνετε πρέπει να χρησιμοποιούνται
γραμματοσειρές με την ίδια κωδικοποίηση (είτε μόνο ΓΡΑΦΙΣ, είτε μόνο
οι άλλες).

Αφού αλλάξετε το .pro, σώστε το με ένα νέο όνομα, π.χ. colorgr.pro.

Τελειώσατε.
Τυπώνετε (π.χ. το xxx.java) με
a2ps -X iso7 --prologue=colorgr xxx.java
(αν φτιάξατε ένα colorgr.pro με τις μη-ΓΡΑΦΙΣ γραμματοσειρές)
ή με
a2ps -X iso1 --prologue=colorgr2 xxx.java
(αν φτιάξατε ένα colorgr1.pro με τις ΓΡΑΦΙΣ γραμματοσειρές)



More information about the I18ngr mailing list