181 γραμμές
18 KiB
Markdown
181 γραμμές
18 KiB
Markdown
|
+++
|
|||
|
title = 'Προσθέτοντας γραμματοσειρές στο StarOffice (και όχι μόνο)'
|
|||
|
date = '1998-07-01T00:00:00Z'
|
|||
|
description = ''
|
|||
|
author = 'Ευθύμιος Μαυρογεωργιάδης'
|
|||
|
issue = ['Magaz 06']
|
|||
|
issue_weight = 3
|
|||
|
+++
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
*Όταν πριν από έναν χρόνο αποφάσισα να ξεφύγω από τον κόσμο του \"General Protection Fault\" και την γνωστή τριδάχτυλη κίνηση που το ακολουθούσε, εγκατέστησα το
|
|||
|
Linux στον υπολογιστή μου επιδιώκοντας να γλυτώσω και νεύρα και χρήμα.*
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
Στην αρχή το σύστημα που ξεκίνησε ο Linus Torvalds κατελάμβανε μόνο ένα μικρό μέρος του σκληρού μου δίσκου. Αυτό που κρατούσε ακόμη το αντίπαλον δέος εν ζωή
|
|||
|
ήταν η έλλειψη ενός εύχρηστου πακέτου επεξεργασίας κειμένου για Linux. Το τελευταίο, βέβαια, θα έπρεπε να προσφέρεται και δωρεάν. Τότε ήταν που στις αναζητήσεις
|
|||
|
μου ανά το διαδίκτυο ανακάλυψα το StarOffice, ένα πακέτο προγραμμάτων που προσφέρεται δωρεάν για προσωπική χρήση. Η χαρά μου μετριάστηκε όμως όταν προσπάθησα να
|
|||
|
βρω πώς θα μπορούσα να εγκαταστήσω ελληνικές και άλλες γραμματοσειρές για χρήση από το StarOffice. Απότοκος των επισκέψεών μου σε διάφορα απίθανα μέρη του
|
|||
|
δικτύου προκειμένου να βρω τις πληροφορίες που με ενδιέφεραν είναι το παρόν αρθρίδιο (όπως λέμε υβρίδιο ;-)
|
|||
|
|
|||
|
Η εγκατάσταση γραμματοσειρών στο StarOffice είναι λίγο προβληματική καθώς δεν υπάρχει κάποιο πρόγραμμα που να την αυτοματοποιεί. Επιπλέον, επειδή το StarOffice
|
|||
|
τρέχει κάτω από περιβάλλον X-Windows και χρησιμοποιεί Ghostscript για τις εκτυπώσεις των αρχείων του, πρέπει οι γραμματοσειρές τις οποίες θέλουμε να
|
|||
|
χρησιμοποιήσουμε να είναι διαθέσιμες όχι μόνο στο StarOffice αλλά και στα X-Windows και στη Ghostscript. Πρέπει ακόμη να σημειωθεί ότι το StafOffice μπορεί να
|
|||
|
διαβάζει μόνο γραμματοσειρές τεχνολογίας Type-1 (.pfa και .pfb). Για να περιπλακούν μάλιστα τα πράγματα περισσότερο, οι τελευταίες μπορούν να απεικονιστούν
|
|||
|
σωστά επί της οθόνης μόνο αν συνοδεύονται από μία ιδιάζουσα μορφή αντίστοιχου αρχείου .afm. Όσο παράξενα ακούγονται όλα αυτά, τόσο εύκολη είναι η εγκατάσταση
|
|||
|
αυτή καθ\' αυτή ;-) Απλώς ακολουθήστε προσεκτικά τα παρακάτω βήματα έτσι ώστε οι γραμματοσειρές που θέλετε να εγκαταστήσετε να είναι διαθέσιμες και στα
|
|||
|
X-Windows και στη Ghostscript αλλά, φυσικά, και στο StarOffice:
|
|||
|
|
|||
|
**1. Προετοιμασία γραμματοσειρών για χρήση από το StarOffice**
|
|||
|
-------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
**2. Εγκατάσταση των καινούριων γραμματοσειρών στα X-windows**
|
|||
|
-------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
**3. Εγκατάσταση των καινούριων γραμματοσειρών στη Ghostscript**
|
|||
|
---------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
**4. Εγκατάσταση των καινούριων γραμματοσειρών στο StarOffice**
|
|||
|
--------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
|
|||
|
### [1. Προετοιμασία γραμματοσειρών για χρήση από το StarOffice]{#s1}
|
|||
|
|
|||
|
1. Αποσυμπίεσε το αρχείο με τις καινούριες γραμματοσειρές σου σε κάποιο υποφάκελο, π.χ. /fonts/greek.
|
|||
|
|
|||
|
2. Διάγραψε οποιαδήποτε παραπανίσια αρχεία υπάρχουν (π.χ. README, .afm, .ttf, και δεν ξέρω εγώ τι άλλο) αφήνοντας μόνο τα .pfb ή .pfa αρχεία που περιέχονται
|
|||
|
στο /fonts/greek. (Δεν πειράζει αν δεν διαγράψεις τίποτε, αλλά συνήθως η πληθώρα αρχείων σε κάποιον υποφάκελο μόνο να μας μπερδέψει μπορεί).
|
|||
|
|
|||
|
3. Εφόσον έχεις εγκαταστήσει Ghostscript στον υπολογιστή σου, πρέπει να έχει ήδη εγκατασταθεί και κάποιο πρόγραμμα γνωστό ως printafm (αν δεν βρίσκεις τίποτε
|
|||
|
τέτοιο, προφανώς πρέπει να αναβαθμίσεις την Ghostscript σου στην τελευταία έκδοση). Για κάθε γραμματοσειρά στο /fonts/greek πρέπει να κάνεις:
|
|||
|
|
|||
|
printafm font0.pfb > font0.afm
|
|||
|
printafm font1.pfb > font1.afm κλπ.
|
|||
|
|
|||
|
Έτσι θα δημιουργήσεις τα αρχεία .afm που πρέπει να συνοδεύουν τις γραμματοσειρές σου (αυτά που έρχονται με το συμπιεσμένο αρχείο προτιμώ να τα σβήνω και να
|
|||
|
δημιουργώ καινούρια με αυτόν τον τρόπο).
|
|||
|
|
|||
|
4. Προσοχή! Τα αρχεία που δημιούργησες δεν μπορούν να χρησιμοποιηθούν από το StafOffice ως έχουν (υπάρχει κάποιο πρόβλημα με τη σειρά με την οποία εμφανίζονται
|
|||
|
τα διάφορα δεδομένα). [Πάρε](../files/afm.pl.gz) και αποσυμπίεσε το αρχείο που κάνει την μετατροπή, και τοποθέτησέ το στο /fonts/greek. Έπειτα δημιούργησε
|
|||
|
καινούρια αρχεία .afm (τα οποία θα μπορούν να χρησιμοποιηθούν χωρίς πρόβλημα και από όλα τα άλλα προγράμματα που τυχόν θα τα χρειαστούν) δίνοντας τις
|
|||
|
παρακάτω εντολές για κάθε αρχείο .afm σε αυτόν τον υποφάκελο (ελπίζω να έχεις εγκατεστημένη την perl στο σύστημά σου):
|
|||
|
|
|||
|
perl ./afm.pl font0.afm
|
|||
|
rm -f font0.afm
|
|||
|
mv font0.afm.new font0.afm
|
|||
|
|
|||
|
5. Τώρα πρέπει να δημιουργήσεις τα αρχεία Fontmap, fonts.dir, και fonts.scale. Αυτό το κάνεις με το [type1inst](../files/type1inst.tgz). Απλώς πληκτρολόγησε
|
|||
|
type1inst μέσα στο /fonts/greek και το πρόγραμμα θα κάνει τη δουλειά του.
|
|||
|
|
|||
|
6. Με κάποιον κειμενογράφο \[editor\] διόρθωσε τη γραμμή 2 των αρχείων .afm ως εξής:\
|
|||
|
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
|
|||
|
\ Διορθωμένο
|
|||
|
Παλιό
|
|||
|
|
|||
|
StartFontMetrics 2.0 StartFontMetrics 2.0
|
|||
|
|
|||
|
`FontName mgpmab__.pfb` FontName MgPolMemApla-Bold
|
|||
|
|
|||
|
FullName MgPolMemApla-Bold FullName MgPolMemApla-Bold
|
|||
|
|
|||
|
FamilyName MgPolMemApla FamilyName MgPolMemApla
|
|||
|
|
|||
|
|
|||
|
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
|
|||
|
|
|||
|
Απλώς δηλαδή αντίγραψε το FullName στη θέση του FontName.\
|
|||
|
Σημείωση: Το συγκεκριμένο βήμα είναι δική μου προσθήκη (δεν αναφέρεται πουθενά στο διαδίκτυο, απ\' όσο ξέρω) γι\' αυτό δοκιμάστε την εγκατάσταση με και
|
|||
|
χωρίς αυτό. Στο δικό μου σύστημα το StarOffice, αν και απεικόνιζε σωστά τις γραμματοσειρές στην οθόνη, δεν τύπωνε σωστά. Μόνο όταν έκανα την παραπάνω αλλαγή
|
|||
|
κατάφερα να το κάνω να εκτυπώνει και σωστά.
|
|||
|
|
|||
|
|
|||
|
### [2. Εγκατάσταση των καινούριων γραμματοσειρών στα X-windows]{#s2}
|
|||
|
|
|||
|
1. Για να βλέπεις τις καινούριες γραμματοσειρές στα X-Windows πρόσθεσε στο .xinitrc τις γραμμές:
|
|||
|
|
|||
|
xset +fp /fonts/greek
|
|||
|
xset fp rehash
|
|||
|
|
|||
|
Αν είσαι super user τότε καλύτερα να προσθέσεις το /fonts/greek απευθείας στο /etc/X11/XF86Config. Ταυτόχρονα, έλεγξε τους υποφακέλους γραμματοσειρών που
|
|||
|
υπάρχουν στο /etc/X11/XF86Config και άλλαξε τη σειρά με την οποία τους διαβάζουν τα X-Windows τοποθετώντας πρώτα αυτούς που περιέχουν κλιμακωτές
|
|||
|
\[scalable\] (Type-1) γραμματοσειρές και έπειτα αυτούς που περιέχουν γραμματοσειρές τύπου .pcf.
|
|||
|
|
|||
|
Επειδή το StarOffice ψάχνει για την κατά περίπτωση ζητούμενη γραμματοσειρά με τη σειρά που αυτές έχουν φορτωθεί, αν φορτωθούν πρώτα οι γραμματοσειρές .pcf
|
|||
|
και ζητείται μια γραμματοσειρά η οποία είναι διαθέσιμη και σε .pcf και σε μορφή Type-1, τότε θα επιλεγεί η μη κλιμακωτή \[unscalable\] γραμματοσειρά για την
|
|||
|
απεικόνιση του κειμένου στην οθόνη. Κάτι τέτοιο είναι τουλάχιστον αντιαισθητικό αν όχι εκνευριστικό! Πάντως, αν για κάποιο λόγο δεν θέλεις να πειράξεις τη
|
|||
|
σειρά με την οποία φορτώνονται οι γραμματοσειρές, τότε μπορείς απλώς να προσθέσεις την ένδειξη \":unscaled\" (χωρίς τα εισαγωγικά) στο τέλος της διαδρομής
|
|||
|
\[pathname\] του υποφακέλου όπου υπάρχουν μη κλιμακωτές γραμματοσειρές, π.χ.:
|
|||
|
|
|||
|
FontPath "/usr/X11R6/lib/X11/fonts/misc/:unscaled"
|
|||
|
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
|
|||
|
FontPath "/usr/X11R6/lib/X11/fonts/Type1/" κλπ.
|
|||
|
|
|||
|
Αν οι γραμματοσειρές του συστήματός σου φορτώνονται από το αρχείο /.xinitrc, τότε οι αντίστοιχες αλλαγές εκεί θα έμοιαζαν κάπως έτσι:
|
|||
|
|
|||
|
xset +fp /usr/applic/X/lib/fonts/misc:unscaled
|
|||
|
xset +fp /usr/applic/X/lib/fonts/75dp:unscaled
|
|||
|
xset +fp /usr/applic/X/lib/fonts/Type1
|
|||
|
xset fp rehash
|
|||
|
|
|||
|
Σε κάθε περίπτωση οι οποιεσδήποτε αλλαγές θα πρέπει να γίνουν και στα δύο αρχεία (/etc/X11/XF86Config και /.xinitrc). Προσωπικώς, στον δικό μου υπολογιστή
|
|||
|
έχω αλλάξει τη σειρά με την οποία φωρτώνονται οι γραμματοσειρές (έτσι ώστε να φορτώνονται πρώτα οι τύπου 1) και, για καλό και για κακό, έχω προσθέσει και
|
|||
|
την ένδειξη \":unscaled\" στις διαδρομές των υποφακέλων που περιέχουν μη κλιμακωτές γραμματοσειρές. Έτσι τουλάχιστον ξέρω πως όταν τα γράμματα φαίνονται
|
|||
|
τετράγωνα στην οθόνη μάλλον γραμματοσειρά πρέπει να αλλάξω παρά οθόνη. ;-)
|
|||
|
|
|||
|
|
|||
|
### [3. Εγκατάσταση των καινούριων γραμματοσειρών στη Ghostscript]{#s3}
|
|||
|
|
|||
|
1. Για να μπορεί η Ghostscript να χρησιμοποιεί τις καινουριές γραμματοσειρές που προσθέτεις κάνε τα ακόλουθα:
|
|||
|
|
|||
|
Με έναν κειμενογράφο άνοιξε το αρχείο /fonts/greek/Fontmap. Αυτό που βλέπεις πρέπει να μοιάζει κάπως έτσι:
|
|||
|
|
|||
|
MgPolMemApla-Bold (mgpmab__.pfb) ;
|
|||
|
MgPolMemApla-BoldItalic (mgpmad__.pfb) ;
|
|||
|
MgPolMemApla-Italic (mgpmai__.pfb) ;
|
|||
|
MgPolMemApla-Normal (mgpman__.pfb) ;
|
|||
|
|
|||
|
Πρόσθεσε ένα \"/\" (χωρίς τα εισαγωγικά) στην αρχή κάθε σειράς και συμπλήρωσε το όνομα της κάθε γραμματοσειράς με την πλήρη διαδρομή υποφακέλου \[full path
|
|||
|
name\] του κάθε αρχείου. Έτσι πρέπει να έχεις:
|
|||
|
|
|||
|
/MgPolMemApla-Bold (/fonts/greek/mgpmab__.pfb) ;
|
|||
|
/MgPolMemApla-BoldItalic (/fonts/greek/mgpmad__.pfb) ;
|
|||
|
/MgPolMemApla-Italic (/fonts/greek/mgpmai__.pfb) ;
|
|||
|
/MgPolMemApla-Normal (/fonts/greek/mgpman__.pfb) ;
|
|||
|
|
|||
|
Μην σώσεις το αρχείο, απλώς άνοιξε το /usr/share/ghostscript/(version-number)/Fontmap με έναν κειμενογράφο και αντίγραψε το μεταλλαγμένο αυτό
|
|||
|
/fonts/greek/Fontmap μέσα στο Fontmap του ghostscript (ας πούμε, στην αρχή). Σώσε μόνο το Fontmap του Ghostscript, όχι το /fonts/greek/Fontmap!
|
|||
|
|
|||
|
|
|||
|
### [4. Εγκατάσταση των καινούριων γραμματοσειρών στο StarOffice]{#s4}
|
|||
|
|
|||
|
1. Το StarOffice στο σύστημά μου είναι εγκατεστημένο στον υποφάκελο /opt/Office40. Κάνοντας, λοιπόν, τις ανάλογες αλλαγές, δώσε τις πρακάτω εντολές:
|
|||
|
|
|||
|
cd /opt/Office40/xp3/pssoftfonts/
|
|||
|
ln -s /fonts/greek/*.pfb .
|
|||
|
cd /opt/Office40/xp3/fontmetrics/afm/
|
|||
|
ln -s /fonts/greek/*.afm .
|
|||
|
|
|||
|
2. Με έναν κειμενογράφο άνοιξε το /fonts/greek/fonts.dir (Προσοχή! Και σε αυτή την περίπτωση θα κάνουμε μόνο αλλαγές προς αντιγραφή. Δεν πρέπει να σώσεις το
|
|||
|
αρχείο κλείνοντάς το!). Πρέπει να φαίνεται κάπως έτσι:
|
|||
|
|
|||
|
4
|
|||
|
mgpmab__.pfb --mgpolmemapla-bold-r-normal--0-0-0-0-p-0-iso8859-1
|
|||
|
mgpmad__.pfb --mgpolmemapla-bold-i-normal--0-0-0-0-p-0-iso8859-1
|
|||
|
mgpmai__.pfb --mgpolmemapla-medium-i-normal--0-0-0-0-p-0-iso8859-1
|
|||
|
mgpman__.pfb --mgpolmemapla-medium-r-normal--0-0-0-0-p-0-iso8859-1
|
|||
|
|
|||
|
Σβήσε τον αριθμό στην αρχή του αρχείου και αντικατέστησε τα \".pfb\" με \",\" και τα \"-0-0-0-0-\" με \"-%d-%d-%d-%d-\" (φυσικά χωρίς τα εισαγωγικά). Το
|
|||
|
έκτρωμα που θα δημιουργηθεί αντίγραψέ το στο τέλος του αρχείου /opt/Office40/xp3/psstd.fonts
|
|||
|
|
|||
|
3. Βγες από τα X-Windows, ξαναμπές και τρέξε το StarOffice! Τι περιμένεις; ;-)
|
|||
|
|
|||
|
Κανονικά, μετά απ\' όλ\' αυτά, τα πάντα θα πρέπει να δουλεύουν τέλεια. Θα πρέπει να μπορείς και να βλέπεις και να εκτυπώνεις με τις καινούριες γραμματοσειρές
|
|||
|
που έχεις εγκαταστήσει. Αν όμως παρ\' ελπίδα και πάλι δεν γίνεται τίποτε, τότε αυτό μάλλον οφείλεται στο γεγονός ότι οι καινούριες (ελληνικές;) γραμματοσειρές
|
|||
|
σου έχουν το ίδιο όνομα με κάποια άλλη (ξένη;) γραμματοσειρά (π.χ.times, arial, κλπ.) - το ότι προφανώς ανήκουν σε διαφορετικές οικογένειες δεν φαίνεται να
|
|||
|
πολυνοιάζει το StarOffice). Σε αυτή την περίπτωση, αλλάζεις την ονομασία των γραμματοσειρών σου στα αρχεία /fonts/greek/fonts.dir, /fonts/greek/fonts.scale, και
|
|||
|
/opt/Office40/xp3/psstd.fonts από π.χ times σε timesgr (ή κάτι τέτοιο, τέλος πάντων) και αν δεν είσαι εξαιρετικά γκαντέμης θα πρέπει επιτέλους κάτι να αρχίσει
|
|||
|
να δουλεύει! ;-)
|
|||
|
|