OpenOffice.org και ελληνικές γραμματοσειρές

Το OpenOffice.org εμφανίζει πρόβλημα στις ελληνικές γραμματοσειρές, σε ορισμένα συστήματα. Σε εκείνα τα συστήματα που οι βασικές γραμματοσειρές δεν περιλαμβάνουν ελληνικούς χαρακτήρες, για παράδειγμα σε τυπική εγκατάσταση Linux.

Αυτό που συμβαίνει είναι το OOo να επιλέγει ελληνικά από ιαπωνικές/κορεάτικες γραμματοσειρές που τυχαίνει να έχουν μερικούς ελληνικούς χαρακτήρες.

ΟΟο και ελληνικά, δείχνει το πρόβλημα της αυτόματης επιλογής ελληνικών. Ιαπωνική γραμματοσειρά δείχνει τα ελληνικά.

Αυτή η ιαπωνική γραμματοσειρά (γραμμές 1, 3-6) έχει πλήρες πλάτος (full width) με αποτέλεσμα να φαίνονται οι χαρακτήρες αραιοί σε εμάς. Ακόμα, δεν περιλαμβάνει χαρακτήρες για τα περισσότερα φωνήεντα. Το αντίστοιχο κείμενο με την FreeSans (γραμμές 2, 7-10) δείχνει πως πρέπει να εμφανίζονται οι προγούμενες γραμμές.

Γιατί γίνεται χρήση των ιαπωνικών γραμματοσειρών; Μάλλον σχετίζεται με το σφάλμα #4639/freedesktop. Το OOo έχει μια δική του υλοποίηση της λίστα προτεραιότητας στις γραμματοσειρές και έχεις εκείνες τις ιαπωνικές σε μεγαλύτερη προτεραιότητα. Στην αναφορά σφάλματος #57426/openoffice.org περιγράφουμε το πρόβλημα και αναζητούμε την λύση, ποιο αρχείο εσωτερικά στο OOo έχει να κάνει με την προτίμηση γραμματοσειρών.

Το σημαντικό σημείο είναι ότι διανομές όπως το Ubuntu διατίθενται με καλές ελληνικές γραμματοσειρές, FreeFonts (FreeSans, FreeSerif, FreeMono) και MgOpen (MgOpen Canonica, MgOpen Moderna, MgOpen Modata, MgOpen Cosmetica) που μπορούν να χρησιμοποιηθούν στην προεπιλεγμένη εγκατάσταση. Τώρα συμπεριλαμβάνονται στο βασικό πρώτο CD του Ubuntu Linux 5.10! Όπως, το OOo δεν τις επιλέγει για να εμφανίσει ελληνικά.

Το θέμα των ελληνικών γραμματοσειρών μάς είχε ταλαιπωρήσει και παλαιότερα, με την αναφορά σφάλματος #2374/Ubuntu.

Υπάρχει ένα αρχείο στο OOo, το VCL.xcu, που επιτρέπει την επιλογή γραμματοσειρών ανάλογα με την γλώσσα του εγγράφου. Εδώ δεν υπάρχει ενότητα για την ελληνική γλώσσα, που εξηγεί ένα μέρος του προβλήματος. Στο ελληνικό κομμάτι μπορούμε να βάλουμε ελληνικές γραμματοσειρές και το ΟΟο θα τις δείξει. Όμως, το ίδιο πρέπει να κάνουμε και για κάθε άλλη γλώσσα (π.χ. Αγγλικά, Γερμανικά, κτλ), που δείχνει ότι είναι μεν μια σωστή κίνηση, δεν είναι η πλήρης λύση. Αυτό είναι το πρόβλημα που θέλουμε να λύσουμε.

9 comments

  • Βασίλης

    Σε εγκατάσταση του OOO2 από τα επίσημα rpm σε Slackware με τις ελεύθερες ελληνικές γραμματοσειρές που κυκλοφορούν (freefont, arev, dejavu, mgopen) τα ελληνικά εμφανίζονται μια χαρά. Έχω κάνει αλλαγές στο /etc/fonts/fonts.conf για να υπάρχουν γραμματοσειρές με ελληνικούς χαρακτήρες πάνω από τις υπόλοιπες. Μάλιστα ακόμα και μη ελληνική γραμματοσειρά επιλεγμένη (πχ Bitstream Charter) οι ελληνικοί χαρακτήρες αντικαθίστανται με σωστούς από ελληνική. Αν δεν είμαι αρκετά σαφής και θα θέλατε screenshots δεν είναι δύσκολο να ανεβάσω.

  • Simos

    Ναι, θα ήταν χρήσιμο ένα στιγμιότυπο (screenshot).
    Μπορείς να χρησιμοποιήσεις το ίδιο αρχείο (.odt) όπως είναι διαθέσιμο στο http://www.openoffice.org/issues/show_bug.cgi?id=57426
    για σύγκριση.
    Θα ήθελα να εξακριβώσω ποια γραμματοσειρά αντικαθιστά τους ελληνικούς χαρακτήρες.

    Δοκίμασα το OOo2 του Ubuntu 5.10 και την δοκιμαστική έκδοση από
    https://mailman2.grnet.gr/pipermail/open-source/2005-November/002375.html
    και είχα το ίδιο αποτέλεσμα (Ubuntu 5.10). Ίσως να είναι πρόβλημα της διανομής.

    Έχω βάλει ελληνικές γραμματοσειρές πιο πάνω στο /etc/fonts/fonts.conf κατά το https://bugs.freedesktop.org/show_bug.cgi?id=4639
    Όμως, το OOo2 μου δεν φαίνεται να καταλαβαίνει την σειρά προτεραιότητας του fontconfig, και χρησιμοποιεί κάποια δική του.

  • Βασίλης

    Τελικά σε εμένα λειτουργεί ανεξήγητα καλά. Φαίνεται να χρησιμοποιεί Arev Sans (δεν είμαι σίγουρος για αυτό) αν και έχω ξεχάσει να τη βάλω στο fonts.conf. Εκεί υπάρχουν μόνο οι MgOpen και Freefont.

    Στιγμιότυπο στο http://users.ntua.gr/el03020/ooo2shot.png .
    Και το fonts.conf μου στο http://users.ntua.gr/el03020/fonts.conf .

  • Simos

    Είναι πράγματι παράξενο που υπάρχει διαφορετική συμπεριφορά.
    Αναφέρεις ότι χρησιμοποιείς Slackware, έχεις το 10.2 (κατά http://distrowatch.com/table.php?distribution=slackware);

    Είναι πιθανό το πρόβλημα να σχετίζεται με τον βαθμό ενσωμάτωσης (integration) του fontconfig στο OOo2. Προσωπικά χρησιμοποίησα το OOo2.0 του Ubuntu καθώς και την δοκιμαστική ελληνική έκδοση που ανακοίνωσε ο Κώστας.

    Στο fonts.conf που έχεις, είδα ότι έχεις βάλει τις γραμματοσειρές με ελληνικά στην αρχή, πάνω από τις BitStream Vera, Arial κτλ.
    Μπορείς να δοκιμάσεις με την μορφή που βρίσκεται στο
    https://bugs.freedesktop.org/show_bug.cgi?id=4639
    Εδώ οι ελληνικές γραμματοσειρές δεν είναι πάνω πάνω αλλά στην μέση, πάνω από τις ασιατικές. Γενικά είναι σημαντικό να δουλέψει έτσι, διότι διαφορετικά δεν θα μπορέσουμε να περάσουμε την αλλαγή upstream. Βάζοντας τις ελληνικές γραμματοσειρές στην αρχή θα επηρεάσει τους χρήστες από τις άλλες γλώσσες.

    Δοκίμασα στο σύστημά μου να βάλω τις ελληνικές γραμματοσειρές στην αρχή, δεν είχα όμως διαφορετικό αποτέλεσμα.

  • Simos

    Το fc-list πως εμφανίζει το όνομα της Arev/Dejavu;
    Δοκίμασε

    fc-list | grep -i arev
    fc-list | grep -i dejavu

    Πιστεύω ότι αναφέρουν το όνομά τους με το όνομα της γραμματοσειράς (δεν δηλώνονται π.χ. ως Bitstream Vera).

    Το αποτέλεσμα θα το χρησιμοποιήσω και για την ενημέρωση του VCL.xcu.

    Το VCL.xcu του συστήματός σου δεν το έχεις αλλάξει, έτσι δεν είναι;

  • Βασίλης

    Το σύστημά μου τρέχει Slackware 10.2 (Xorg 6.8.2) και εγκατέστησα OpenOffice.org από την επίσημη build (από το αρχείο OOo_2.0.0_LinuxIntel_install.tar.gz, το οποίο περιέχει rpm τα οποία και μετέτρεψα σε πακέτα Slackware).

    Το VCL.xcu δεν το έχω αλλάξει, αγνοούσα την ύπαρξή του.
    Οι Arev και MgOpen εμφανίζονται με fc-list με τα ονόματά τους (όχι ως Bitstream π.χ.).

    Αρχικά έβαλα τις ελληνικές γραμματοσειρές χαμηλότερα στο fonts.conf όπως στο patch που αναφέρεις, αν και εκεί υπήρχαν μόνο οι Free και MgOpen οι οποίες δεν φαίνεται να χρησιμοποιούνται. Έχω την εντύπωση ότι το ooo δεν διαβάζει το αρχείο.
    Στη συνέχεια αφαίρεσα πλήρως τις Arev και Dejavu από το σύστημα.

    Και στις δύο περιπτώσεις δεν μπορώ να αναπαράγω τη δική σου συμπεριφορά. Οι ελληνικοί χαρακτήρες αντικαθίστανται με σωστούς όχι από τις ελληνικές truetype που υπάρχουν στο σύστημα! Εξακολουθούν να μοιάζουν με Arev/Dejavu/Bitstream.

    Υπάρχει περίπτωση οι χαρακτήρες αντικατάστασης να μην υπάρχουν σε κάποια truetype γραμματοσειρά; Η Vera οικογένεια περιέχεται και στο /opt/openoffice.org2.0/share/fonts/truetype αλλά τα εκεί αρχεία φαίνονται πανομοιότυπα με τα κανονικά.

    Δεν νομίζω ότι κάνω κάτι λάθος. Ούτε με locate -i Arev |grep Arev -i ούτε με fc-list|grep Arev -i εμφανίζεται κάτι (αντίστοιχα με dejavu).

  • Simos

    Ευχαριστώ πολύ για την εξακρίβωση.

    Αυτό που πιστεύω είναι ότι δεν είναι εγκατεστημένες στο σύστημά σου ασιατικές γραμματοσειρές (Baekmuk Batang, MS Mincho, κτλ). Πιστεύω ότι το Slackware δεν τις εγκαθιστά ως προεπιλογή.

    Ο valis (Πρόβλημα με τα fonts σε slackware 10.2) αναφέρει ακριβώς αυτό, ότι δεν είναι εγκατεστημένες στο σύστημά του Ασιατικές γραμματοσειρές.

    Σε διανομές όπως το Ubuntu που έχουν υποστήριξη για ασιατικές γλώσσες, δεν μπορείς να απεγκαταστήσεις τις γραμματοσειρές αυτές. Μπορείς όμως να τις σβήσεις με το χέρι. Θα προσπαθήσω κάποια στιγμή να δοκιμάσω να απενεργοποιήσω (=σβήσω) τις ασιατικές γραμματοσειρές σε Ubuntu 5.10 για να δω αν μπορεί να διορθωθεί η κατάσταση στο OOo.

  • Βασίλης

    Ναι, η διανομή δεν περιλαμβάνει ασιατικές γραμματοσειρές. Συγγνώμη που δεν το πρόσεξα αυτό εξ’αρχής.

    Μια διόρθωση για το προηγούμενο μήνυμα, οι Arev και Dejavu (όχι MgOpen) εμφανίζονται σωστά με fc-list.

Leave a Reply

%d bloggers like this: