Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

random's BSD tips

[es] :: BSD :: random's BSD tips
(TOP topic)

[ Pregleda: 12119 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

random
Vladimir Vrzić
Beograd

Član broj: 85
Poruke: 3866
194.106.163.*

Sajt: www.last.fm/user/vrza


+4 Profil

icon random's BSD tips21.08.2002. u 15:05 - pre 263 meseci
0x01 :: Antialiasing TrueType fontova u KDE-u (FreeBSD 4.6)

Ovo je pomalo nesrećan problem koji sam imao sa FreeBSD-om 4.6-RELEASE i njegovim XFree-jem 4.2. Naime, XFree odskora podržava antialiasing fontova (umekšavanje ivica slova korišćenjem nijansi sive boje radi bolje čitljivosti na uređajima niske rezolucije, tj. monitorima) preko Xft ekstenzije i FreeType2 biblioteke. Novi XFree takođe podržava renderovanje TrueType fontova bez potrebe za dodatnim softverom.

Kada sam konačno kupio novu grafičku karticu (ATI Radeon 7000) koja mi je omogućila da se igram sa novim X-om, naravno, prvo što sam želeo da uradim je bilo da podesim lepe umekšane fontove u X-u, što sa XFree-jem 3.3.6 nije bilo moguće. Prvo sam instalirao port x11-fonts/webfonts, koji sadrži fontove koji su raspoloživi za besplatan download na Microsoftovom sajtu (Times New Roman, Arial, Verdana, Trebuchet...). Port ih je instalirao u direktorijum /usr/X11R6/lib/X11/fonts/webfonts/. Zatim sam editovao /etc/X11/XF86Config da se uverim da je linija

FontPath "/usr/X11R6/lib/X11/fonts/webfonts/"

na svom mestu u "Files" sekciji. O istom trošku sam proverio da li su u "Module" sekciji učitani moduli za FreeType i Type1 (FreeType2 biblioteku sam inače instalirao iz portova, još pri instalaciji sistema):

Load "type1"
Load "freetype"

Pošto je naizgled bilo sve u redu, stisnuo sam palčeve i podigao X. TrueType fontovi su zaista bili tu. Podigao sam KDE, u Kontrolnom Centru uključio "Use AntiAliasing" opciju za fontove, i restartovao KDE. Međutim sad dolazi nezgodan deo. Naime, antialiasinga nije bilo. Koristeći xfontsel i xmag alate sam proverio i uverio se da su samo tri-četiri fonta (Luxi familija) imali umekšane ivice. AA je očigledno radio, ali "selektivno". Proverio sam još jednom konfiguracione fajlove, prevrnuo web tražeći rešenje, ali nigde nisam našao ništa o problemu sa AA na FreeBSD-u.

Prošlo je nekoliko nedelja od toga, u međuvremenu sam malo bacio to u zapećak, mada mi je problem bio zapisan u ~/TODO listi. Onda sam jedno veče seo, i zainatio se da ga rešim.

Rešenje se pokazalo kao jednostavno, ali nažalost, ne baš očigledno. Naime, Xft rendering ekstenzija pri startovanju čita fajl /usr/X11R6/lib/X11/XftConfig, koji u default instalaciji izgleda ovako:

Code:

# $XFree86: xc/lib/Xft/XftConfig.cpp,v 1.8 2001/11/21 23:41:12 keithp Exp $

dir "/usr/X11R6/lib/X11/fonts/Type1"

#
# alias 'fixed' for 'mono'
#
match any family == "fixed"             edit family =+ "mono";


Potrebno je bilo dodati sve direktorijume sa fontovima koje želimo da renderuje (i umekšava) Xft ekstenzija, ovako:

Code:

# $XFree86: xc/lib/Xft/XftConfig.cpp,v 1.8 2001/11/21 23:41:12 keithp Exp $

dir "/usr/X11R6/lib/X11/fonts/Type1"
dir "/usr/X11R6/lib/X11/fonts/webfonts"
dir "/usr/X11R6/lib/X11/fonts/100dpi"
dir "/usr/X11R6/lib/X11/fonts/75dpi"


#
# alias 'fixed' for 'mono'
#
match any family == "fixed"             edit family =+ "mono";


Izmena je bila jako sitna, ali ne očigledna (jedan od razloga zašto pišem ovo, da bih pomogao nekome ko bude imao isti problem da ne luta), i posle nje mi je ne samo proradio AA na svim fontovima, već su i neki problemi sa prikazom određenih karaktera u fontovima (ćirilica u KDE-u, na primer) nestali.

I naravno, screenshot posle uspešno obavljenog posla. KDE 3.0.2, Mosfet Liquid style, font je uglavnom Tahoma TTF.

[img]http://www.elitesecurity.org/poruka.php?Action=getfile&MessageID=94064[/img]atra isključivo kao komunikaci
int rand(void);

Those who do not understand Unix are condemned to reinvent it, poorly.

Upali lampicu — koristi Jabber!
Prikačeni fajlovi
 
Odgovor na temu

random
Vladimir Vrzić
Beograd

Član broj: 85
Poruke: 3866
*.yubc.net

Sajt: www.last.fm/user/vrza


+4 Profil

icon Re: random's BSD tips23.10.2002. u 13:52 - pre 261 meseci
0x02 :: ttmkfdir i Unicode

ttmkfdir koji se trenutno nalazi u FreeBSD ports stablu ne generiše pravilno listu TrueType fontova u fonts.dir fajlu, u smislu da za svaki font nedostaje linija koja označava da taj font podržava Unicode kodiranje. Primera radi, za svaki font bi u fonts.dir fajlu trebalo da postoji i linija tipa

arial.ttf -monotype-Arial-medium-r-normal--0-0-0-0-p-0-iso10646-1

Ovo dovodi do problema kada aplikacija kao što je browser treba da izabere font za prikaz Unicode dokumenta. Pošto TTF-ovi nisu deklarisani kao da podržavaju Unicode, program će ih zaobići i izabrati prvi Type1 font koji podržava ovo kodiranje.

Rešenje 1: posle svakog korišćenja ttmkfdir alata dodati ručno potrebne redove u fonts.dir.

Rešenje 2: koristiti patch-ovan ttmkfdir. Prilažem patch za ttmkfdir-0.0_1 na FreeBSD-u. Patch možete primeniti nezavisno ili ga staviti u $PREFIX/ports/x11-fonts/ttmkfdir/files direktorijum, pa će automatski biti primenjen pri make-ovanju porta.

Hvala t0wk-u, koji mi je ukazao na problem.
int rand(void);

Those who do not understand Unix are condemned to reinvent it, poorly.

Upali lampicu — koristi Jabber!
Prikačeni fajlovi
 
Odgovor na temu

[es] :: BSD :: random's BSD tips
(TOP topic)

[ Pregleda: 12119 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.