NASIL Archlinux Xorg Yazıtipi Ayarları
From Lapis Wiki
Bu makale NASIL bölümü serisinin bir parçasıdır
|
| MasaÜstü • Donanım • Ağ • Dağıtımlar |
| Tarayıcılar• Programlama • Linux ve Oyunlar |
X.org Yazıtipi Ayarları ve Güzelleştirilmesi
- XOrg Font Documentation sayfasından ayrıntılı bilgi alınabilir.
- Ya da FreeType2 Project Page sayfasından da freetype ile ilgili bilgilere ulaşılabilir.
xorg.conf modulleri
- freetype - True Type (ttf, ttc), Type1 (pfa, pfb), CID (cid), CFF, Open Type, bitmap (bdf, pcf, snf), Windows (fnt), PFR, ve Type42 yazıtiplerini destekler.
- type1 - Type1 (pfa, pfb) ve CID (cid) yazıtiplerini destekler.
- speedo - Bitstream Speedo (spd) yazıtiplerini destekler.
- xtt - True Type (ttf, ttc) yazıtiplerini (freetype ile çakışır.) destekler.
- bitmap - Bitmap (bdf, pcf, snf) yazıtiplerini destekler.
Görüldüğü üzere istenilen herşeyi freetype desteklemektedir. Tüm diğer modüller yerine freetype tek modül olarak bunu karşılar. Buna ek olarak xtt ise freetype ile çakışmaktadır.
X.org Yazıtipleri Dizini ve /etc/fonts/
xorg.conf font dizini
xorg.conf içerisinde belirtilen yazıtipleri dizinleri XFT olmayan yazıtiplerini ifade etmek için kullanılır. Öncelikli olan yazıtiplerini burada belirtmek önemlidir. XFT yazıtipini desteklemeyen uygulamalar bu kısımdaki dizinleri atlayıp Xserver'ın yazıtipi dizinine bakacaktır. Genelde xorg.conf içerisinde minimum düzeyde yazıtipi dizini belirlenir. Bunlarda xterm veya bu tarz XFT kullanan uygulamalar için olur.
/etc/fonts/ yazıtipi dizinleri
/etc/fonts altında bulunan conf dosyaları (fonts.conf ve local.conf) XFT yazıtipleri için konfigürasyonları belirlemek için kullanılır. fonts.conf hiçbir şekilde değiştirilmemelidir. Sistem genelini etkileyecek tüm değişiklikler local.conf dosyası içerisinde yapılmalıdır. Ya da kullanıcı bazlı olarak ~/.fonts.conf dosyasında yapılabilir. /etc/fonts/conf.d içerisindeki dosyalar kaynak dosyalarıdır. Bir numara ile başlar ve .conf şeklinde biterler.
fonts.conf içerisinde belirtilen dizinler , yazıtipi yapılandırması için kullanılmak üzere fc-cache tarafından taranırlar.(/usr/share/fonts ve ~/.fonts). Tüm yazıtipleri bu dizinler altında belirtilmelidir. Bu dizinlere atılan yeni yazıtipleri sonrası çalıştırılan fc-cache -fv, tüm bu değişiklikleri tarayıp algılayacaktır.
Yeni Yazıtipleri Eklemek
Sistem içerisine yeni yazıtipleri eklendiği zaman bunlar sadece birer dosyadan ibarettir. Sisteme yeni yazıtiplerinin aktarıldığını anlatmak için belirli uygulamaların çalıştırılması gerekmektedir.
/usr/bin/fc-cache
Bu uygulama yazıtipleri konfigürasyon deposunu güncelleyecektir.Eklenmiş olan yeni yazıtipleri bu tarama sırasında sisteme yazıtipi olarak eklenmiş olacaktır.(Yukarıdaki /etc/fonts bölümüne bakabilirsiniz.)
/usr/bin/mkfontscale /usr/bin/mkfontdir ln -s /usr/X11R6/lib/X11/fonts/encodings/encodings.dir encodings.dir
Bu araçlar yeni yazıtiplerinin eklendiği dizin içerisinde çalıştırılması gereken komutları içerir. mkfontscale, fonts.scale isimli bir dosya yaratır. mkfontdir ise fonts.dir isimli dosyayı yaratır. Bu dosyalar Xserver tarafından kullanılan dosyalardır. Bundan sonra yapılması gereken ise Xorg yazıtipleri dizininde yer alıp almadığı olacaktır. Encodings linki Xserver'ın bu yeni yazıtiplerini her şekilde desteklenen bir encoding olarak kullanmasını sağlar. Tüm bunlardan sonra yazıtipi dizininizde 3 adet dosya bulunacaktır: fonts.scale, fonts.dir, ve encodings.dir
fc-list ve xlsfont araçları
Bu araçlar, her yazıtipi alt sisteminde yer alan tüm yazıtiplerini komut satırında listeler. xlsfont tüm X yazıtiplerini listelerken, fc-list yazıtipleri konfigürasyonunda yer alan tüm fontları listeler. grep komutu ile birleştiği zaman oldukça kullanışlı bir konfigürasyondur, örn: "xlsfonts || grep -i bitstream" komutu ile mevcut tüm bitstream fontlar listelenebilir.
İndirmek İçin Bazı Fontlar
Ek Olarak Yapılabilecekler
Herşeyi Düzgün Ayarlamama Rağmen Yazıtipleri Hala Düzgün Gözükmüyor
Bunu düzeltmek için aşağıdaki yazıtipi paketlerinin yüklenmesi tavsiye edilir:
pacman -S ttf-ms-fonts ttf-cheapskate artwiz-fonts
Uygulamalarım Gtk+ 2.2 ve Altına Uygun Olarak Derlenmiş Olmasına Rağmen Yazıtipleri Kötü Gözüküyor
Bu olabiliyor. Modern GTK uygulamaları Xft'yi varsayılan olarak aktif ediyorlar. Nasılsa bu 2.2 öncesinde bir sorun teşkil etmiyordu. Belki bu uygulamalar yeni GTK'ya güncellenmelidirler. Eğer bu bir seçenek değilse, o zaman export GDK_USE_XFT=1 satırlarını global ayar dosyalarına ekleriz. (/etc/profile, /etc/profile.d/gnome.sh, ~/.xinitrc, vs..) Böylelikle Xft ve eski uygulamalara desteği sağlayabiliriz.
Qt bazlı uygulamalar için yukarıdakine benzer bir problemim var.
Benzer bir çözüm, export QT_XFT=true satırlarını ekleyebilirsiniz.
KDE kullanırken Gtk uygulamalarının yazıtipleri çok küçük oluyor.
gtk-qt-engine paketini yükleyin:
# pacman -Sy gtk-qt-engine
- `Denetim Masasında' Gtk uygulamalarının yazıtipi boyutunu değiştirin -> `Görünüm & Temalar' -> `GTK Stil ve Yazıtipleri'.
Bytecode interpreter özelliği yazıtiplerimi kötü gösteriyor. Tekrar derlemem gerekir mi?
Hayır gerek yoktur. Sadece freetype'ın auto-hinting özelliği kapanmıştır. Bazı dağıtımlarda , bytecode interpreter derlenmiş ve varsayılan olarak aktif edilmiştir. Sonuç olarak, bytecode interpreter freetype'ın autohinter özelliğinin üzerine yazmaktadır.(ki bu geliştiricilerin gurur duyduğu bir konudur).Autohinter'ın tekrar aktif olması için, aşağıdakileri /etc/fonts/local.conf veya ~/.fonts.conf dosyalarının içerisine ekleyebilirsiniz.
<match target="pattern">
<edit name="autohint" mode="assign">
<bool>true</bool>
</edit>
</match>
Bytecode interpreter, autohinter'a göre daha üstün olmasına rağmen hala insanlar neden autohinter isterler anlaşılamamaktadır.
Autohint gayet güzel çalışıyor fakat kalın yazıtiplerinde sorun çıkarıyor.Sadece kalın yazıtipleri için devre dışı bırakabilir miyim?
Autohinter özelliği yazıtiplerini güzel gösterir ama genelde yazıtiplerini çok geniş gösterir.Bu özellikle kalın yazıtiplerinde çekilmez bir hal alır. Neyse ki kalın yazıtipleri için autohinter özelliğini kapatabilirsiniz.Aynı zamanda geri kalan yazıtipleri için autohinter kullanmaya devam edersiniz.
- Önce yukarıdaki şekilde autohinter özelliğini aktif edin. Sonra aşağıdakileri /etc/fonts/local.conf veya ~/.fonts.conf dosyası içerisine ekleyin.
<match target="font">
<test name="weight" compare="more">
<const>medium</const>
</test>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
</match>
DVI kullanan bir TFT/DFP/LCD ekrana sahibim. Yazıtipleri pek bir düzensiz ve bulanık gözüküyor.
Bu tam olarak CRT ve CRT olamayan ekranlar arasındaki oynatma farklılığındandır. Bu problemi çözmek için, sub-pixel rendering özelliğini aktif etmeniz gerekmektedir./etc/fonts/local.conf dosyasını düzenleyin ve "Enable subpixel rendering" şeklinde işaretlenmiş olan kısmı bulun. Bu özelliği etkinleştirmek için işaretlerini kaldırın.Bu, CRT ekranlarda çok az etki sağlayan bir çalışmadır. Herhangi bir şekilde görüntü kalitesini artıran bir özellik değildir. const bölümlerinin içereceği olası değerler - rgb, bgr, vrgb, bgrv, ve hiçbirşey.
<match target="font">
<test qual="all" name="rgba"><const>unknown</const></test>
<edit name="rgba" mode="assign"><const>rgb</const></edit>
</match>
Belirli bir boyut altındaki yazıtiplerimin anti-aliasing özelliğini kapatmak istiyorum.
Bunun bir örneği /etc/fonts/local.conf dosyası içerisindedir. Subpixel rendering bölümü gibi işaretlenmiş şekildedir. Eğer bir değişiklik yapılması gerekiyorsa compare="less_eq" bölümüne, ve <int>12</int> bölümüne yapılması gerekmektedir - bunlar karşılaştırma operasyonları ve boyut karşılaştırmalarını ifade etmektedir.
<match target="pattern">
<test qual="any" name="size" compare="less_eq">
<int>12</int>
</test>
<edit name="antialias" mode="assign"><bool>false</bool></edit>
</match>
MS TrueType Yazıtiplerini kullanıyorum (verdana) ve anti-aliasing özelliğini etkinleştirmek istiyorum. Ama sadece çok sivri uçlu gözüken büyük fontlar için?
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="font" >
<test compare"more" name"size" qual="any" >
<double>12</double>
</test>
<edit mode"assign" name"antialias" >
<bool>true</bool>
</edit>
</match>
<match target="font" >
<test compare"more" name"pixelsize" qual="any" >
<double>17</double>
</test>
<edit mode"assign" name"antialias" >
<bool>true</bool>
</edit>
</match>
</fontconfig>
Daha çok yazıtipi eklemek istiyorum
Yazıtiplerinizi bir dizin altına kaydedin ve dizini /etc/fonts/local.conf içerisine aşağıdaki örnek gibi ekleyin.
<dir>/dizin/olduğu/adres</dir>
Yazıtipi boyutlarımın DPI ayarlarıma uygun olmasını istiyorum.
Bu konu /etc/fonts/local.conf dosyasıyla ilgilidir. Burada yapılacak DPI ayarlarının xorg.conf veya sizin startx komutunuzla eşleşmiş olması gerekmektedir. Mevcut Dpi ayarlarınıza ulaşmak için xdpyinfo komutunu kullanın. Çoğu insan 96 veya 100 arası değer kullanır/önerir. X için dpi ayarlarını yapmak ve değiştirmek bu döküman içeriği ile ilgili değildir. Web üzerinde ayrıntılı bilgilere ulaşabilirsiniz. /etc/fonts/local.conf dosyası içeriği aşağıdaki gibi bir örnekle sunulabilir.
<match target="pattern">
<edit name="dpi" mode="assign"><double>100</double></edit>
</match>
İstemediğim bir font var. <istemediğim yazıtipi adı> ve yerine bunu kullanmak istiyorum <kullanılmak istenen yazıtipi>
Kolay!, Bu /etc/fonts/local.conf dosyası içinde bir girdidir. Teknik olarak bu sadece "tercih edilen" yazıtipini, kullanılmak üzere, listedeki diğer isimlerin önüne ekler. Yani eksik bir yazıtipi olması durumunda, 100% garantili sonuç vermeyebilir.
<alias>
<family>Helvetica </family>
<prefer><family>Bitstream Vera Sans Mono</family></prefer>
<default><family>fixed</family></default>
</alias>
Tonlarca istemediğim aralıkta kötü yazıtipim var ve bunları istemiyorum
X'i başlatmak ve kullanmak üzere ihtiyacınız olabilecek sadece 'cursor' ve 'fixed' gibi iki aralığa ihtiyacınız vardır. Bunların ikisi de fonts/misc dizini altındadır. Bu ikisinin dışındakilerden kurtulmak istiyorsanız misc dizini içerisinde cursor.pcf.gz,9x18.pcf.gz ve 9x18-ISO8859-1.pcf.gz benzeri dosyalar dışındaki tüm dosyaları silebilirsiniz. Ben bu işlemleri yaptıktan sonra, yani misc dizini içerisinde bahsedilenler dışındaki yazıtiplerini sildikten sonra yaklaşık olarak 337 dosya kaldı. Eğer bunun aşağısında bir sayı kalmışsa X'i yeniden başlatmada tekrar yerine koymanız doğru olacaktır.
Ölçeklenemez (bitmap) yazıtiplerim bir şekilde inaktif oldu, Nasıl geri getirebilirim?
Varsayılan olarak, fontconfig 2.3.2-4 ve üstü bitmap yazıtiplerinin kullanımını inaktif eder. Bu ayarlar /etc/fonts/conf.d/10-no-bitmaps.conf dosyası içerisinden idare edilir, veya daha üst versiyon olarak, /etc/fonts/conf.d/10-bitmaps.conf dosyasına bakılabilir. Bitmap yazıtiplerini aktif etmek ve fontconfig paket yükseltmeleri sonrası aktif tutmak için, yes-bitmaps.conf dosyasından 10-bitmaps.conf dosyasına no-bitmaps.conf dosyasının üzerine yazacak şekilde bir symlink atayabilirsiniz.
Bağlantılar
Konu ile ilgili fikirlerinizi paylaşmak için; Lapis Wiki Başlığı
XOrg Font Configuration , Archwikideki orjinal belge Türkçe'ye çevirilmiştir.
Çeviren : Alper "Kullanıcı:Xalphas" Orus
