PDA

Επιστροφή στο Forum : Linux Font Rendering (sub-pixel hinting)



holyghost
23-06-06, 03:22
Λοιπόν πρόσφατα έπεσα σε αυτό (http://turnerdavid.neuf.fr/freetype/patches/font-patches.html) το site αλλά μόλις πρίν λίγη ώρα το δοκίμασα τελικά...
Έχει patches για τα libXft,cairo

Λοπόν αφορά το sub-pixel hinting για τις γραμματοσειρές... Σαν αποτέλεσμα δίνει κάτι καλύτερο απο το Cleartype της Microsoft. Λέω καλύτερο γιατί δεν έχει τόσο ενοχλητική σκιά όσο των Windows.
Προς το παρόν χρησιμοποίησα μόνο το patch για την libXft και όλα δουλεύουν ρολόι.

Η ποιότητα εμφάνισης των γραμματοσειρών σε περιβάλλον Χ (για console και freetype οι genti δείτε το use flag bindist) είναι σαφώς βελτιωμένη αλλά ειναι λίγο υποκειμενικό αυτό...
Προσωπικά δεν μπορώ να πω πως έχω ενθουσιαστεί αλλα μου φαίνεται πως που κουράζει λίγο τα μάτια, ειδικά μέσα στον konqueror κατά το surfing. Μπορεί να είναι και η ιδέα μου η μπορεί να γίνεται γιατί η ώρα ειναι περασμένη...who knows

Φυσικά για να λειτουργήσει πρέπει να έχετε ενεργοποιήσει το sub-pixel hinting στο DE σας. Στο KDE είναι στο Kcontrol--> Appearance & Themes --> Fonts και τσεκάρουμε το Use anti-aliasing for fonts (άμα γουστάρετε κοιτάξτε κ το configure)

Θα έβαζα και κανά screenshot αλλά το σκέφτηκα τελευτάια στιγμή και τώρα είναι λιιιίγο θέμα να ξαναγυρίζω στην παλιά libXft.
Με λίγα λόγια βαριέμαι...Να με συγχωράτε

[EDIT_2] Για gentoo έχει οδηγίες παρακάτω.

anodizer
23-06-06, 13:31
Στο αντίστοιχο thread του ubuntuforums, μερικοί λένε πως το subpixel rendering κάνει δουλειά μόνο στις LCD, ενώ κάποιος που το δοκίμασε με CRT λέει ότι είδε μεγάλη διαφορά.
Εσύ, και όποιος άλλος το δοκιμάσει, τι monitor έχεις; Θέλω να διαπιστώσω αν αξίζει τον κόπο (έχω CRT), γιατί τα πακέτα θέλουν μερικές ταρζανιές για να μπούν.

holyghost
23-06-06, 14:12
Εγώ δουλεύω σε laptop με TFT 15.4inch και η διαφορά είναι άκρως αισθητή... τώρα σε CRT δεν ξέρω πως θα δείχνει... δεν χάνεις τπτ να το δοκιμάσεις

mrsaccess
23-06-06, 14:22
Τι κάρτα γραφικών έχει το laptop σου;
Έχω την εντύπωση πως συνήθως αναλαμβάνει ο driver της κάρτας γραφικών, αν όμως έχεις onboard intel ο driver είναι μέσα στον Χ και χρησιμοποείται το antialiasing του Xorg.

Πάντως οι drivers της nVidia (και της ATi από ότι ακούγεται) έχουν καλό antialiasing και υποστηρίζουν sub-pixel hinting (εκτός και αν η ρύθμιση δεν κάνει τίποτα :p).

holyghost
23-06-06, 14:32
Έχει μια ATI Radeon 9200... παίζω σε Xorg modular 7.1 με KDE

Eγώ ενεργοποιώντας το sub-pixel hinting (σε gentoo και σε Fedora πιο παλιά) με ανοιχτό το RenderAccel και με Accel "exa" στο xorg.conf έβλεπα αλλαγή στην ποιότητα αποικόνισης των γραμματοσειρών αλλά με τούτα τα patches η διαφορά είναι χαοτική στο laptop μου...

Απ' ότι καταλαβαίνω αυτή είναι software επιτάχυνση... είναι όπως είπα και παραπάνω κάτι σαν το Cleartype της MS (ως αποτέλεσμα) αλλά λίγο πιο γήινο...

holyghost
23-06-06, 15:10
Δείτε και ένα screenshot... σίγουρα η συμπίεση κάνει τα πράματα λίγο δύσκολα αλλά η διαφορά φαίνεται...

Απάνω είναι με το patch και κάτω χωρίς. Και στις δύο περιπτώσεις το sub-pixel hinting είναι ανοιχτό χρησιμοποιώντας για οδηγό τον open-source radeon

9102

KLG
23-06-06, 15:22
Το κοινό ζητάει how to και οδηγίες για Gentoo!!!!:clap:

mrsaccess
23-06-06, 15:28
Τι fonts χρησιμοποιείς; Tahoma είναι αυτά ή FreeSans;

xaxa1982
23-06-06, 15:32
Δείτε και ένα screenshot... σίγουρα η συμπίεση κάνει τα πράματα λίγο δύσκολα αλλά η διαφορά φαίνεται...

Απάνω είναι με το patch και κάτω χωρίς. Και στις δύο περιπτώσεις το sub-pixel hinting είναι ανοιχτό χρησιμοποιώντας για οδηγό τον open-source radeon

9102

Μου φαίνεται ότι στην πάνω φωτογραφία, είναι όλα λίγο πιο μουντζουρωμένα.Δεν ξέρω!Προσωπικά δεν μ'αρέσει...:hmm:

KLG
23-06-06, 15:43
Είναι όντως μουτζουρωμένα, αλλά δεν φταίει σε αυτό το patch, αλλά το .png format. Η εικόνα είναι μικρή αλλά δίνει μια γενική ιδέα. Αν ζουμάρεις στην εικόνα θα δείς τις μουτζουρες. Αν ζουμάρεις όμως στο desktop σου δεν θα τις δείς (Ctrl+ροδελλα για να ζουμαρεις).

anodizer
23-06-06, 15:43
Μου φαίνεται ότι στην πάνω φωτογραφία, είναι όλα λίγο πιο μουντζουρωμένα.Δεν ξέρω!Προσωπικά δεν μ'αρέσει...:hmm:

Πιο θαμπά είναι, αυτό κάνει το hinting, το ίδιο και το cleartype των windows. Κατά τη γνώμη μου θα έπρεπε ήδη να υπάρχει μια τέτοια λειτουργία σε μια τυπική linux εγκατάσταση.

mrsaccess
23-06-06, 16:13
Μα υπάρχει!
Στο KDE: Control Center -> Appearance & Themes -> Fonts -> Use antialiasing for fonts.
Εν τω μεταξύ έχει πολλές επιλογές και κάνει πολύ καλύτερη δουλειά από το cleartype των windows.

Για του λόγου το αληθές δύο παλιότερα posts μου που μιλάω για το font rendering - antialiasing:
http://www.adslgr.com/forum/showpost.php?p=553255&postcount=9
http://www.adslgr.com/forum/showpost.php?p=454143&postcount=261

KLG
23-06-06, 16:18
Έχω την εντύπωση πάντως οτι το antialiasing του Gnome, είναι καλύτερο απο του KDE. Δεν ξέρω γιατί, αλλά η optimized εικόνα του holyghost, μου θύμισε πολύ το Gnome desktop μου. Στο KDE, φαίνονται όλα λίγο πιο "σκληρά" και ας έχω παντού τις ίδεις γραμματοσειρές.

holyghost
23-06-06, 16:38
Τι fonts χρησιμοποιείς; Tahoma είναι αυτά ή FreeSans;

Tahoma είναι ;)


Πιο θαμπά είναι, αυτό κάνει το hinting, το ίδιο και το cleartype των windows. Κατά τη γνώμη μου θα έπρεπε ήδη να υπάρχει μια τέτοια λειτουργία σε μια τυπική linux εγκατάσταση.

Δεν νομίζω ότι το θαμπά είναι η λέξη...νομίζω smooth είναι πιο καλό

Όσο για την θαμπάδα της εικόνας που λέτε, φυσικά και οφείλεται στο format png (όπως είπε και ο KLG παραπάνω) και στη κατακρεούργηση της ποιότητας και της ανάλυσης ώστε να είναι ελαφριά η εικόνα για το forum. Φυσικά δεν φαίνεται έτσι στο desktop...


Το κοινό ζητάει how to και οδηγίες για Gentoo!!!!

Η διαδικασία ειναι πολύ απλή.

Πιστεύω πως στο /etc/make.conf έχεις ορίσει που είναι το Portage Overlay σου.
Δλδ. κάτι τέτοιο


PORTDIR_OVERLAY="/usr/local/portage"

Εάν προυπάρχει έχει καλώς αλλιώς δημιούργησε το...

Για να αποφύγουμε τώρα το διπλό compile της libXft θα χρησιμοποιήσουμε το quickpkg ώστε να πάρουμε ένα backup της ήδη compiled εγκατεστημένης έκδοσης και να βάλουμε την καινούργια.

Αφού δούμε ποια έκδοση της libXft έχουμε εγκατεστημένη γράφουμε σε μία κονσόλα:


quickpkg =x11-libs/libXft-ΕΚΔΟΣΗ

Στο τέλος το portage θα ειδοποιήσει για το που έχει βάλει το backup .tbz2 (συνήθως είναι /usr/portage/packages)

αποσυμπιέζουμε το 9106 στο x11-libs κατάλογο στο portage_overlay μας (εάν δε υπάρχει δημιουργήστε τον) και κάνουμε:

ebuild libXft-2.1.10-r1.ebuild digest
emerge -av libXft (το οποίο θα περάσει την νέα και θα σβήσει την παλιά)

Εάν έγιναν όλα σωστά τότε θα ζητήσει να τραβήξει την libXft-2.1.10-r1...

Οι χρήστες του KDE πρέπει να ενεργοποιήσουν το sub-pixel hinting από το Kcontrol--> Appearance & Themes --> Fonts και τσεκάρουμε το Use anti-aliasing for fonts, κοιτάμε και τις επιλογές στο configure, εγώ έχω στο use sub-pixel hinting = RGB και στο hinting style=Full

Μόλις τελειώσετε κάντε ένα log-off και log-on (δεν χρειάστηκε restart ο Χ σε εμένα) και voila...

Εάν τελικά δε μας αρέσει το αποτέλεσμα και θέλουμε να επιστρέψουμε στη παλιά τότε εκτελούμε


emerge -Ca libXft (για να σβήσουμε την καινούργια)
emerge -av --oneshot /path/to/libXft.tbz2 (μας είπε το portage που είναι, όταν κάναμε το backup)

Αυτά...

anodizer
23-06-06, 18:08
Μα υπάρχει!
Στο KDE: Control Center -> Appearance & Themes -> Fonts -> Use antialiasing for fonts.
Εν τω μεταξύ έχει πολλές επιλογές και κάνει πολύ καλύτερη δουλειά από το cleartype των windows.


Το ξέρω, αλλά καλύτερα απο το cleartype με τίποτα. Τουλάχιστον δεν το έχω δει εγώ. Π.χ. κοίτα πόσο άσχημα φαίνονται τα fonts (εννοείται ότι τρέχω gnome βασικά, δεν ξέρω αν φταίει αυτό):

mrsaccess
23-06-06, 18:35
Παιδιά τι να πω; :what:
Επισυνάπτω εικόνα με το δικό μου antialiasing. Είναι το ίδιο και στα δύο pc με κάρτα nvidia.

9115

KLG
23-06-06, 18:45
Και εμένα μου φαίνονται κάπως θαμπά πάντως. Τα μαύρα όχι και τόσο, αλλά το μπλέ tab, είναι πολύ έντονο (laptop oθονη τυπου "Crystalview")

anodizer
23-06-06, 18:46
Αυτό που έχω καταλάβει εγώ είναι πως το font rendering στο linux χρειάζεται δουλίτσα ακόμη, ενώ παίζει ρόλο και η γραμματοσειρά που χρησιμοποιείς, άλλες δουλεύουν πολύ καλά με antialiasing, άλλες χωρίς αυτό.
Πάντως, κρίνοντας το δικό σου screenshot, το antialiasing φαίνεται όμοιο με αυτό του gnome.

KLG
23-06-06, 18:53
Ναι, και δεν μπορώ να πω οτι μου αρέσει στο KDE. Ενώ στο Gnome φαίνεται ΟΚ.

Τώρα γύρισα στο αρχικό, έιναι σαφώς χειρότερο. Βασικά μου φαίνεται ανύπαρκτο!

Παίζει να κάνω κάτι λάθος στο xorg.conf?

ckoul
23-06-06, 21:01
Gnome 2.14, ATi fgrlx, DejaVu Sans 12

With Font Rendering
9121
Without
9122
(Click για να φανεί η τεράστια διαφορά!

Σε CRT, το Subpixel Smoothing (LCDs) δεν έχει καμμία διαφορά (αφού δεν υπάρχουν subpixels).

holyghost
23-06-06, 21:53
Ίσως κάποιοι χρειαστούν ένα patch για το freetype
πληροφορίες εδώ (http://lists.nongnu.org/archive/html/freetype/2006-04/msg00012.html)

Επίσης έχω την εντύπωση πως οι χρήστες του gnome πρέπει να βάλουν και το patch για το cairo
το οποίο θα το βρείτε στο link του πρώτου post.
Προσόχή όμως!!! το patch δεν μπορεί προς το παρόν να εφαρμοστεί σε cairo > 1.0.4

Για να δουλέψει σωστά πρέπει επίσης στο xorg.conf να υπάρχει το παρακάτω στο Section Device, τουλάχιστον για τις ΑΤΙ κάρτες.


Option "RenderAccel" "1"

Επίσης μη ξεχνάτε πώς το επίπεδο subpixel hinting μπορεί να ρυθμιστεί σε κάθε DE

[EDIT] Παραθέτω και το .fonts.conf μου μήπως και σε κάποιον φανεί χρήσιμο


<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="font" >
<edit mode="assign" name="rgba" >
<const>rgb</const>
</edit>
</match>
<match target="font" >
<edit mode="assign" name="hinting" >
<bool>true</bool>
</edit>
</match>
<match target="font" >
<edit mode="assign" name="hintstyle" >
<const>hintfull</const>
</edit>
</match>
<match target="font" >
<edit mode="assign" name="antialias" >
<bool>true</bool>
</edit>
</match>
</fontconfig>

@ ADSLgr.com All rights reserved.