Difference between revisions of "Font configuration (Српски)"

From ArchWiki
Jump to: navigation, search
(Created page with "Category:X Server (Српски) Category:Fonts (Српски) Category:HOWTOs (Српски) {{i18n|Font Configuration}} {{Article summary start}} {{Article summary ...")
 
(rm temporary i18n template)
(5 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
[[Category:X Server (Српски)]]
 
[[Category:X Server (Српски)]]
 
[[Category:Fonts (Српски)]]
 
[[Category:Fonts (Српски)]]
[[Category:HOWTOs (Српски)]]
+
[[en:Font Configuration]]
{{i18n|Font Configuration}}
+
[[it:Font Configuration]]
 +
[[ru:Font Configuration]]
 +
[[tr:Yazıtipi_yapılandırması]]
 +
[[zh-CN:Font Configuration]]
 
{{Article summary start}}
 
{{Article summary start}}
 
{{Article summary text|Pregled opcija za podesavanje fontova i raznih tehnika za unapredjenje citljivosti fontova}}
 
{{Article summary text|Pregled opcija za podesavanje fontova i raznih tehnika za unapredjenje citljivosti fontova}}
Line 13: Line 16:
 
==Font staze==
 
==Font staze==
  
Da bi [[fonts|fontovi]] bili poznati aplikacijama, moraju biti razvrstani za lak i brz pristup. [[Wikipedia:Fontconfig|Fontconfig]] je biblioteka napravljena da pruzi listu dostupnih fontova za aplikacije, i takodje za podesavanja za nacin prikaza fontova. Iako je fontconfig standard u danasnje vreme u Linux-u, neke aplikacije se jos uvek oslanjaju na originalni metod kategorizacije fontova: Xorg server podesavanja.
+
Da bi [[Fonts|fontovi]] bili poznati aplikacijama, moraju biti razvrstani za lak i brz pristup. [[Wikipedia:Fontconfig|Fontconfig]] je biblioteka napravljena da pruzi listu dostupnih fontova za aplikacije, i takodje za podesavanja za nacin prikaza fontova. Iako je fontconfig standard u danasnje vreme u Linux-u, neke aplikacije se jos uvek oslanjaju na originalni metod kategorizacije fontova: Xorg server podesavanja.
  
 
===Fontconfig===
 
===Fontconfig===
  
Fontconfig prikuplja sve podesavanja u centralni fajl ({{Filename|/etc/fonts/fonts.conf}}).  Fontconfig-svesne aplikacije iscitavaju ovaj fajl da saznaju raspolozive fontove i nacin na koji se oni prikazuju. Ovaj fajl je skup pravila iz raznih fontconfig konfiguracionih fajlova (globalna podesavanja ({{Filename|/etc/fonts/local.conf}}), prekonfigurisani fajlovi u {{Filename|/etc/fonts/conf.d/}}, i konfiguracioni fajl korisnika ({{Filename|~/.fonts.conf}}).
+
Fontconfig prikuplja sve podesavanja u centralni fajl ({{ic|/etc/fonts/fonts.conf}}).  Fontconfig-svesne aplikacije iscitavaju ovaj fajl da saznaju raspolozive fontove i nacin na koji se oni prikazuju. Ovaj fajl je skup pravila iz raznih fontconfig konfiguracionih fajlova (globalna podesavanja ({{ic|/etc/fonts/local.conf}}), prekonfigurisani fajlovi u {{ic|/etc/fonts/conf.d/}}, i konfiguracioni fajl korisnika ({{ic|~/.fonts.conf}}).
  
Staze koje su inicijalno poznate fonconfig-u su: {{Filename|/usr/share/fonts/}} i {{Filename|~/.fonts/}} (koje ce fontconfig skenirati rekurzivno). Radi lakse organizacije i instalacije, preporucuje se upotreba ovih font staza kada [[Fonts|instalirate nove fontove]].
+
Staze koje su inicijalno poznate fonconfig-u su: {{ic|/usr/share/fonts/}} i {{ic|~/.fonts/}} (koje ce fontconfig skenirati rekurzivno). Radi lakse organizacije i instalacije, preporucuje se upotreba ovih font staza kada [[Fonts|instalirate nove fontove]].
  
 
Da vidite listu poznatih fontconfig fontova i lako citljivom formatu:
 
Da vidite listu poznatih fontconfig fontova i lako citljivom formatu:
Line 31: Line 34:
 
  $ grep /fonts /var/log/Xorg.0.log
 
  $ grep /fonts /var/log/Xorg.0.log
  
Imajte na umu da Xorg ne pretrazuje rekurzivno kroz {{Filename|/usr/share/fonts}} direktorijum kao sto fontconfig to cini. Da dodate stazu, morate da zadate celu adresu:
+
Imajte na umu da Xorg ne pretrazuje rekurzivno kroz {{ic|/usr/share/fonts}} direktorijum kao sto fontconfig to cini. Da dodate stazu, morate da zadate celu adresu:
  
<pre>
+
{{bc|
 
Section "Files"
 
Section "Files"
 
     FontPath    "/usr/share/fonts/example-font-directory"
 
     FontPath    "/usr/share/fonts/example-font-directory"
 
EndSection
 
EndSection
</pre>
+
}}
  
Da vidite listu poznatih Xorg fontova upotrebite {{Codeline|xlsfonts}}.
+
Da vidite listu poznatih Xorg fontova upotrebite {{ic|xlsfonts}}.
  
 
==Fontconfig podesavanja==
 
==Fontconfig podesavanja==
Line 45: Line 48:
 
Paket za renderovanje fontova na Arch Linux-u sadrzi podrsku za ''freetype2'' sa omogucenim bajtkod interpreterom (BCI). Ali definisanje vasih podesavanja za font ce ponekad biti neophodno. Razmotrite upotrebu [[#Patched_packages|zakrpljenih paketa]] za bolje renderovanje fontova, pogotovo sa LCD monitorom.
 
Paket za renderovanje fontova na Arch Linux-u sadrzi podrsku za ''freetype2'' sa omogucenim bajtkod interpreterom (BCI). Ali definisanje vasih podesavanja za font ce ponekad biti neophodno. Razmotrite upotrebu [[#Patched_packages|zakrpljenih paketa]] za bolje renderovanje fontova, pogotovo sa LCD monitorom.
  
Konfigurisanje se moze obaviti na nivou jednog korisnika preko {{Filename|~/.fonts.conf}}, ili globalno sa {{Filename|/etc/fonts/local.conf}}. Podesavanja za jednog korisnika imaju prednost u odnosu na globalna podesavanja. Oba ova fajla koriste istu sintaksu. Zapamtite da ne editujete {{filename|/etc/fonts/fonts.conf}} fajl; to je privremeni fajl i nebi trebali da ga editujete jer se on prepisuje tokom fontconfig osvezavanja.
+
Konfigurisanje se moze obaviti na nivou jednog korisnika preko {{ic|~/.fonts.conf}}, ili globalno sa {{ic|/etc/fonts/local.conf}}. Podesavanja za jednog korisnika imaju prednost u odnosu na globalna podesavanja. Oba ova fajla koriste istu sintaksu. Zapamtite da ne editujete {{ic|/etc/fonts/fonts.conf}} fajl; to je privremeni fajl i nebi trebali da ga editujete jer se on prepisuje tokom fontconfig osvezavanja.
  
Vec postoji odredjeni broj prekonfigurisanih opcija u direktorijumu {{Filename|/etc/fonts/conf.avail}}. Ova prekonfigurisana podesavanja se mogu linkovati na nivou korisnika ili globalno za brze podesavanje. Imajte na umu da ce ova podesavanja imati prednost u odnosu na podesavanja u njihovim odgovarajucim konfiguracionim fajlovima.
+
Vec postoji odredjeni broj prekonfigurisanih opcija u direktorijumu {{ic|/etc/fonts/conf.avail}}. Ova prekonfigurisana podesavanja se mogu linkovati na nivou korisnika ili globalno za brze podesavanje. Imajte na umu da ce ova podesavanja imati prednost u odnosu na podesavanja u njihovim odgovarajucim konfiguracionim fajlovima.
  
 
Naprimer, da omogucite sub-pixel RGB renderovanje na globalnom nivou:
 
Naprimer, da omogucite sub-pixel RGB renderovanje na globalnom nivou:
Line 59: Line 62:
 
  $ ln -s /etc/fonts/conf.avail/10-sub-pixel-rgb.conf ~/.fonts.conf.d
 
  $ ln -s /etc/fonts/conf.avail/10-sub-pixel-rgb.conf ~/.fonts.conf.d
  
{{Note|Za neka desktop okruzenja (poput [[Gnome|Gnoma]] i [[KDE]]) upotreba "Font Control Panel"-a ce automatski napraviti ili prepisati korisnicki fajl za font podesavanja. Jedno od mogucih resenja je da ne koristite graficki interfejs za podesavanje fontova, vec da to obavljate rucno preko tekstualnog fajla za podesavanje.}}
+
{{Note|Za neka desktop okruzenja (poput [[GNOME|Gnoma]] i [[KDE]]) upotreba "Font Control Panel"-a ce automatski napraviti ili prepisati korisnicki fajl za font podesavanja. Jedno od mogucih resenja je da ne koristite graficki interfejs za podesavanje fontova, vec da to obavljate rucno preko tekstualnog fajla za podesavanje.}}
  
 
Konfiguracioni fajlovi zahtevaju informativno zaglavlje pre nego sto se podesavanja mogu uneti:
 
Konfiguracioni fajlovi zahtevaju informativno zaglavlje pre nego sto se podesavanja mogu uneti:
  
<pre>
+
{{bc|<nowiki>
 
<?xml version="1.0"?>
 
<?xml version="1.0"?>
 
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
Line 71: Line 74:
  
 
</fontconfig>
 
</fontconfig>
</pre>
+
</nowiki>}}
  
 
Da izbegnete ponavljanje, ostatak konfiguracionih primera u ovom clanku ce izbeci ove tagove.
 
Da izbegnete ponavljanje, ostatak konfiguracionih primera u ovom clanku ce izbeci ove tagove.
Line 79: Line 82:
 
[[Wikipedia:Font rasterization (Српски)|Font rasterizacija]] pretvara vektor font podatke u bitmap podatke tako da moze da se prikaze. Rezultat ce izgledati kao da ima ostre ivice zbog [[Wikipedia:Aliasing|aliasing-a]], pa je [[Wikipedia:Anti-aliasing|anti-aliasing]] ukljucen po difoltu da uveca rezolucija ivica fonta.
 
[[Wikipedia:Font rasterization (Српски)|Font rasterizacija]] pretvara vektor font podatke u bitmap podatke tako da moze da se prikaze. Rezultat ce izgledati kao da ima ostre ivice zbog [[Wikipedia:Aliasing|aliasing-a]], pa je [[Wikipedia:Anti-aliasing|anti-aliasing]] ukljucen po difoltu da uveca rezolucija ivica fonta.
  
<pre>
+
{{bc|<nowiki>
 
   <match target="font">
 
   <match target="font">
 
     <edit name="antialias" mode="assign">
 
     <edit name="antialias" mode="assign">
Line 85: Line 88:
 
     </edit>
 
     </edit>
 
   </match>
 
   </match>
</pre>
+
</nowiki>}}
  
 
===Hintovanje===
 
===Hintovanje===
Line 96: Line 99:
 
Da omogucite normalno hintovanje:
 
Da omogucite normalno hintovanje:
  
<pre>
+
{{bc|<nowiki>
 
   <match target="font">
 
   <match target="font">
 
     <edit name="hinting" mode="assign">
 
     <edit name="hinting" mode="assign">
Line 102: Line 105:
 
     </edit>
 
     </edit>
 
   </match>
 
   </match>
</pre>
+
</nowiki>}}
  
 
====Automatsko hintovanje====
 
====Automatsko hintovanje====
Line 109: Line 112:
 
Da ukljucite automatsko hintovanje:
 
Da ukljucite automatsko hintovanje:
  
<pre>
+
{{bc|<nowiki>
 
   <match target="font">
 
   <match target="font">
 
     <edit name="autohint" mode="assign">
 
     <edit name="autohint" mode="assign">
Line 115: Line 118:
 
     </edit>
 
     </edit>
 
   </match>
 
   </match>
</pre>
+
</nowiki>}}
  
 
{{Note|Nemojte da koristite automatsko hintovanje sa subpixel renderovanjem. Ova dva nisu dizajnirana da rade zajedno. [[#Infinality|Infinality]] paket popravlja ovaj konflikt.}}
 
{{Note|Nemojte da koristite automatsko hintovanje sa subpixel renderovanjem. Ova dva nisu dizajnirana da rade zajedno. [[#Infinality|Infinality]] paket popravlja ovaj konflikt.}}
Line 121: Line 124:
 
====Hint stil====
 
====Hint stil====
  
Hint stil je kolicina uticaja koje '''hinting''' mod ima. Hintovanje moze biti podeseno na: {{Codeline|hintfull}}, {{Codeline|hintmedium}}, {{Codeline|hintslight}} i {{Codeline|hintnone}}. Sa BCI hintovanjem, hinfull bi trebalo da radi najbolje za vecinu fontova. Sa autohinter-om, hintslight se preporucuje.
+
Hint stil je kolicina uticaja koje '''hinting''' mod ima. Hintovanje moze biti podeseno na: {{ic|hintfull}}, {{ic|hintmedium}}, {{ic|hintslight}} i {{ic|hintnone}}. Sa BCI hintovanjem, hinfull bi trebalo da radi najbolje za vecinu fontova. Sa autohinter-om, hintslight se preporucuje.
  
<pre>
+
{{bc|<nowiki>
 
   <match target="font">
 
   <match target="font">
 
     <edit name="hintstyle" mode="assign">
 
     <edit name="hintstyle" mode="assign">
Line 129: Line 132:
 
     </edit>
 
     </edit>
 
   </match>
 
   </match>
</pre>
+
</nowiki>}}
  
 
===Subpixel renderovanje===
 
===Subpixel renderovanje===
Line 141: Line 144:
 
Da upalite subpixel renderovanje:
 
Da upalite subpixel renderovanje:
  
<pre>
+
{{bc|<nowiki>
 
   <match target="font">
 
   <match target="font">
 
     <edit name="rgba" mode="assign">
 
     <edit name="rgba" mode="assign">
Line 147: Line 150:
 
     </edit>
 
     </edit>
 
   </match>
 
   </match>
</pre>
+
</nowiki>}}
  
 
Ako primetite neobicne boje oko granica fontova, proverite tip vaseg monitora [http://www.lagom.nl/lcd-test/subpixel.php ovde].
 
Ako primetite neobicne boje oko granica fontova, proverite tip vaseg monitora [http://www.lagom.nl/lcd-test/subpixel.php ovde].
Line 157: Line 160:
 
Kada koristite subpixel renderovanje, trebalo bi da upalite lcd filter.
 
Kada koristite subpixel renderovanje, trebalo bi da upalite lcd filter.
  
{{Codeline|lcddefault}} filter ce raditi za vecinu korisnika. Drugi filteri su dostupni koji se mogu koristiti u specijalnim situacijama: {{Codeline|lcdlight}}; laksi filter idealan za fontove koji izgledaju suvise zadebljani (bold) ili mutni, {{Codeline|lcdlegacy}}, originalni Cairo filter; i {{Codeline|lcdnone}} da ga iskljucite u potpunosti.
+
{{ic|lcddefault}} filter ce raditi za vecinu korisnika. Drugi filteri su dostupni koji se mogu koristiti u specijalnim situacijama: {{ic|lcdlight}}; laksi filter idealan za fontove koji izgledaju suvise zadebljani (bold) ili mutni, {{ic|lcdlegacy}}, originalni Cairo filter; i {{ic|lcdnone}} da ga iskljucite u potpunosti.
  
<pre>
+
{{bc|<nowiki>
 
   <match target="font">
 
   <match target="font">
 
     <edit mode="assign" name="lcdfilter">
 
     <edit mode="assign" name="lcdfilter">
Line 165: Line 168:
 
     </edit>
 
     </edit>
 
   </match>
 
   </match>
</pre>
+
</nowiki>}}
  
 
====Napredna specifikacija za LCD filter====
 
====Napredna specifikacija za LCD filter====
Line 177: Line 180:
 
  # abs extra/freetype2
 
  # abs extra/freetype2
  
Ovaj primer koristi {{Filename|/var/abs/build}} kao direktorijum za pravljenje. Promenite ga u skladu sa vasim licnim ABS podesavanjima. Preuzmite i otpakujte freetype2 paket kao obican korisnik:
+
Ovaj primer koristi {{ic|/var/abs/build}} kao direktorijum za pravljenje. Promenite ga u skladu sa vasim licnim ABS podesavanjima. Preuzmite i otpakujte freetype2 paket kao obican korisnik:
  
 
  $ cd /var/abs/build
 
  $ cd /var/abs/build
Line 184: Line 187:
 
  $ makepkg -o
 
  $ makepkg -o
  
Izmenite fajl {{Filename|src/freetype-VERSION/src/base/ftlcdfil.c}} i pogledajte definiciju konstante {{Filename|default_filter[5]}}:
+
Izmenite fajl {{ic|src/freetype-VERSION/src/base/ftlcdfil.c}} i pogledajte definiciju konstante {{ic|default_filter[5]}}:
  
 
  static const FT_Byte  default_filter[5] =
 
  static const FT_Byte  default_filter[5] =
Line 219: Line 222:
 
Neki korisnici vise vole ostrije renderovanje koje anti-aliasing ne pruza:
 
Neki korisnici vise vole ostrije renderovanje koje anti-aliasing ne pruza:
  
<pre>
+
{{bc|1=
 
...
 
...
 
<match target="font">
 
<match target="font">
Line 245: Line 248:
 
</match>
 
</match>
 
...
 
...
</pre>
+
}}
  
 
===Zameni fontove===
 
===Zameni fontove===
Line 273: Line 276:
 
===Iskljucite bitmap fontove===
 
===Iskljucite bitmap fontove===
  
Da iskljucite bitmap fontove u fontconfigu, upotrebite {{filename|70-no-bitmaps.conf}} (koji nije napravljen od strane fontconfiga po difoltu):
+
Da iskljucite bitmap fontove u fontconfigu, upotrebite {{ic|70-no-bitmaps.conf}} (koji nije napravljen od strane fontconfiga po difoltu):
  
 
  # cd /etc/fonts/conf.d
 
  # cd /etc/fonts/conf.d
Line 288: Line 291:
 
Freetype ima mogucnost da autmoatski napravi ''italic'' i '''bold''' stilove za fontove koji ih nemaju, ali samo ako su eksplicitno zahtevani od strane aplikacije. Dati programi vrlo retko salju ove zahteve. Ova sekcija pokriva manuelno primoravanje generisanja stilova koji nedostaju.
 
Freetype ima mogucnost da autmoatski napravi ''italic'' i '''bold''' stilove za fontove koji ih nemaju, ali samo ako su eksplicitno zahtevani od strane aplikacije. Dati programi vrlo retko salju ove zahteve. Ova sekcija pokriva manuelno primoravanje generisanja stilova koji nedostaju.
  
Startujte editovanjem {{Filename|/usr/share/fonts/fonts.cache-1}} kao sto je objasnjeno ispod. Uskladistite kopiju modifikacija u drugi fajl jer font osvezavanje sa {{Codeline|fc-cache}} ce prepisati {{Filename|/usr/share/fonts/fonts.cache-1}}.
+
Startujte editovanjem {{ic|/usr/share/fonts/fonts.cache-1}} kao sto je objasnjeno ispod. Uskladistite kopiju modifikacija u drugi fajl jer font osvezavanje sa {{ic|fc-cache}} ce prepisati {{ic|/usr/share/fonts/fonts.cache-1}}.
  
 
Pod pretpostavkom da je Dupree font instaliran:
 
Pod pretpostavkom da je Dupree font instaliran:
 
  "dupree.ttf" 0 "Dupree:style=Regular:slant=0:weight=80:width=100:foundry=unknown:index=0:outline=True:''etc...''
 
  "dupree.ttf" 0 "Dupree:style=Regular:slant=0:weight=80:width=100:foundry=unknown:index=0:outline=True:''etc...''
  
Duplirajte liniju pa izmenite {{Codeline|<nowiki>style=Regular</nowiki>}} na {{Codeline|<nowiki>style=Bold</nowiki>}} ili bilo koji drugi stil. Takodje promenite {{Codeline|<nowiki>slant=0</nowiki>}} na {{Codeline|<nowiki>slant=100</nowiki>}} za italic, {{Codeline|<nowiki>weight=80</nowiki>}} na {{Codeline|<nowiki>weight=200</nowiki>}} za bold, ili ih kombinujte za '''''bold italic''''':
+
Duplirajte liniju pa izmenite {{ic|<nowiki>style=Regular</nowiki>}} na {{ic|<nowiki>style=Bold</nowiki>}} ili bilo koji drugi stil. Takodje promenite {{ic|<nowiki>slant=0</nowiki>}} na {{ic|<nowiki>slant=100</nowiki>}} za italic, {{ic|<nowiki>weight=80</nowiki>}} na {{ic|<nowiki>weight=200</nowiki>}} za bold, ili ih kombinujte za '''''bold italic''''':
 
  "dupree.ttf" 0 "Dupree:style=Bold Italic:slant=100:weight=200:width=100:foundry=unknown:index=0:outline=True:''etc...''
 
  "dupree.ttf" 0 "Dupree:style=Bold Italic:slant=100:weight=200:width=100:foundry=unknown:index=0:outline=True:''etc...''
  
Sada dodajte neophodne modifikacije u {{Filename|~/.fonts.conf}}:
+
Sada dodajte neophodne modifikacije u {{ic|~/.fonts.conf}}:
<pre>
+
{{bc|1=
 
...
 
...
 
<match target="font">
 
<match target="font">
Line 325: Line 328:
 
</match>
 
</match>
 
...
 
...
</pre>
+
}}
 
{{Tip| Koristite vrednost 'embolden' za postojece bold fontove da ih ucinite jos vise boldovanim.}}
 
{{Tip| Koristite vrednost 'embolden' za postojece bold fontove da ih ucinite jos vise boldovanim.}}
  
 
===Izmena predupredjivanja pravila===
 
===Izmena predupredjivanja pravila===
  
Fontconfig procesira fajlove u {{Filename|/etc/fonts/conf.d}} u obrnutom numerickom redosledu. Ovo omogucava pravilima ili fajlovima da preduprede jedan drugog, ali obicno zbunjuje korisnike o tome koji se fajl parsuje poslednji.
+
Fontconfig procesira fajlove u {{ic|/etc/fonts/conf.d}} u obrnutom numerickom redosledu. Ovo omogucava pravilima ili fajlovima da preduprede jedan drugog, ali obicno zbunjuje korisnike o tome koji se fajl parsuje poslednji.
  
 
Da obezbedite da ce podesavanja na nivou korisnika imati prednost u odnosu na druga pravila, promenite njihov redosled:
 
Da obezbedite da ce podesavanja na nivou korisnika imati prednost u odnosu na druga pravila, promenite njihov redosled:
Line 350: Line 353:
  
 
===Originalni LCD paketi===
 
===Originalni LCD paketi===
Cairo 1.10 u [extra] dodaje podrsku za LCD filter. Pogledajte [[#LCD filter]]. Mozete da instalirate [http://aur.archlinux.org/packages.php?ID=16458 fontconfig-lcd] iz [[AUR]]-a da omogucite {{Codeline|lcddefault}} filter automatski.
+
Cairo 1.10 u [extra] dodaje podrsku za LCD filter. Pogledajte [[#LCD filter]]. Mozete da instalirate [https://aur.archlinux.org/packages.php?ID=16458 fontconfig-lcd] iz [[AUR]]-a da omogucite {{ic|lcddefault}} filter automatski.
  
Da obezbedite filterovanje sa aplikacijama koje koriste libXft za iscrtavanje fontova, morate da instalirate [http://aur.archlinux.org/packages.php?ID=37044 libxft-lcd] iz [[AUR]]-a.
+
Da obezbedite filterovanje sa aplikacijama koje koriste libXft za iscrtavanje fontova, morate da instalirate [https://aur.archlinux.org/packages.php?ID=37044 libxft-lcd] iz [[AUR]]-a.
  
 
===Ubuntu===
 
===Ubuntu===
Line 373: Line 376:
 
*[http://www.infinality.net/forum/ Forum].
 
*[http://www.infinality.net/forum/ Forum].
  
Infinality skup zakrpa ima za cilj da u velikoj meri unapredi freetype2 renderovanje fonta. On dodaje vise novih mogucnosti, od kojih su svi podesivi preko prostornih promenljivih u {{Filename|/etc/profile.d/infinality-settings.sh}}.
+
Infinality skup zakrpa ima za cilj da u velikoj meri unapredi freetype2 renderovanje fonta. On dodaje vise novih mogucnosti, od kojih su svi podesivi preko prostornih promenljivih u {{ic|/etc/profile.d/infinality-settings.sh}}.
  
 
*'''Emboldening Enhancement''': Iskljucuje Y uvecanje, pruzajuci mnogo lepsi rezultat na fontovima bez bold verzija. Radi na nativnim TT hinter i autohinter.
 
*'''Emboldening Enhancement''': Iskljucuje Y uvecanje, pruzajuci mnogo lepsi rezultat na fontovima bez bold verzija. Radi na nativnim TT hinter i autohinter.
Line 383: Line 386:
 
*'''Embolden Thin Fonts''': Uvecava tanke ili lake fontove tako da ostaju vidljiviji. Radi na autohinter.
 
*'''Embolden Thin Fonts''': Uvecava tanke ili lake fontove tako da ostaju vidljiviji. Radi na autohinter.
  
[http://aur.archlinux.org/packages.php?ID=38888 freetype2-infinality] se moze instalirati iz [[AUR]]-a.
+
{{AUR|freetype2-infinality}} se moze instalirati iz [[Arch User Repository (Српски)|AUR]]-a.
  
Dodatno, ako koristite lib32-freetype2 iz [multilib], zamenite ga sa [http://aur.archlinux.org/packages.php?ID=40264 lib32-freetype2-infinality] iz [[AUR]]-a.
+
Dodatno, ako koristite {{pkg|lib32-freetype2}} iz [multilib], zamenite ga sa {{AUR|lib32-freetype2-infinality}} iz [[Arch User Repository (Српски)|AUR]]-a.
  
Da dobijete filtriranje sa aplikacijama koje koriste libXft za font iscrtavanje, morate da instalirate [http://aur.archlinux.org/packages.php?ID=37044 libxft-lcd] iz [[AUR]]-a.
+
Da dobijete filtriranje sa aplikacijama koje koriste libXft za font iscrtavanje, morate da instalirate {{AUR|libxft-lcd}} iz [[Arch User Repository (Српски)|AUR]]-a.
  
 
{{Note|Infinality paket je dizajniran da radi sa [http://www.infinality.net/files/local.conf this local.conf]. Najverovatnije cete zeleti da napravite izmene na podesavanjima pre nego sto ga upotrebite (pravi dosta font zamena i podesava zeljene fontove na Arial, Times New Roman i Consolas.)}}
 
{{Note|Infinality paket je dizajniran da radi sa [http://www.infinality.net/files/local.conf this local.conf]. Najverovatnije cete zeleti da napravite izmene na podesavanjima pre nego sto ga upotrebite (pravi dosta font zamena i podesava zeljene fontove na Arial, Times New Roman i Consolas.)}}
Line 399: Line 402:
 
==Aplikacije bez fontconfig podrske==
 
==Aplikacije bez fontconfig podrske==
  
Neke aplikacije poput LibreOffice-a ignorisu fontconfig podesavanja. Ovo je vrlo primetno kada koristite infinality zakrpe koje se u velikoj meri oslanjaju na ispravna podesavanja. Mozete ovo zaobici upotrebom ~/.Xresources, ali to nije ni priblizno fleksibilno kao fontconfig. Primer (pogledajte [[#Fontconfig configuration]] za objasnjenja za opcije):
+
Neke aplikacije poput LibreOffice-a ignorisu fontconfig podesavanja. Ovo je vrlo primetno kada koristite infinality zakrpe koje se u velikoj meri oslanjaju na ispravna podesavanja. Mozete ovo zaobici upotrebom {{ic|~/.Xresources}}, ali to nije ni priblizno fleksibilno kao fontconfig. Primer (pogledajte [[#Fontconfig configuration]] za objasnjenja za opcije):
  
{{File|name=~/.Xresources|content=<nowiki>Xft.autohint: 0
+
{{hc|~/.Xresources|<nowiki>Xft.autohint: 0
 
Xft.lcdfilter:  lcddefault
 
Xft.lcdfilter:  lcddefault
 
Xft.hintstyle:  hintfull
 
Xft.hintstyle:  hintfull
Line 409: Line 412:
 
</nowiki>}}
 
</nowiki>}}
  
Uverite se da su podesavanja ucitana ispravno kada X startuje sa '''xrdb -q''' (pogledajte [[Xresources (Српски)]] za vise informacija).
+
Uverite se da su podesavanja ucitana ispravno kada X startuje sa {{ic|xrdb -q}} (pogledajte [[Xresources (Српски)]] za vise informacija).
  
 
==Resavanje problema==
 
==Resavanje problema==
Line 420: Line 423:
 
Fontconfig bi trebalo da moze da detektuje DPI parametre koji su utvrdjeni od strane Xorg servera. Mozete da proverite auto-discovered DPI sa xdpyinfo:
 
Fontconfig bi trebalo da moze da detektuje DPI parametre koji su utvrdjeni od strane Xorg servera. Mozete da proverite auto-discovered DPI sa xdpyinfo:
  
{{Command|<nowiki>xdpyinfo | grep dots</nowiki>|  resolution:    102x102 dots per inch}}
+
{{hc|<nowiki>$ xdpyinfo | grep dots</nowiki>|  resolution:    102x102 dots per inch}}
  
 
Ako je DPI detektovan netacno (obicno zbog netacnog monitor EDID-a), mozete da ga zadate rucno u Xorg podesavanjima, pogledajte [[Xorg (Српски)#Display Size and DPI]]. Ovo je preporucljivo resenje, ali postoji mogucnost da nece raditi sa bagovitim drajverima.
 
Ako je DPI detektovan netacno (obicno zbog netacnog monitor EDID-a), mozete da ga zadate rucno u Xorg podesavanjima, pogledajte [[Xorg (Српски)#Display Size and DPI]]. Ovo je preporucljivo resenje, ali postoji mogucnost da nece raditi sa bagovitim drajverima.
  
Fontconfig ce se vratiti na difolt na Xft.dpi varijablu ako je podesena. Xft.dpi je obicno podesena od strane desktop okruzenja (obicno u Xorg-ovom DPI podesavanju) ili rucno u {{Filename|~/.Xdefaults}} ili {{Filename|~/.Xresources}}. Upotrebite xrdb da izdate upit za vrednoscu:
+
Fontconfig ce se vratiti na difolt na Xft.dpi varijablu ako je podesena. Xft.dpi je obicno podesena od strane desktop okruzenja (obicno u Xorg-ovom DPI podesavanju) ili rucno u {{ic|~/.Xdefaults}} ili {{ic|~/.Xresources}}. Upotrebite xrdb da izdate upit za vrednoscu:
  
{{Command|<nowiki>xrdb -query | grep dpi</nowiki>|Xft.dpi: 102}}
+
{{hc|<nowiki>$ xrdb -query | grep dpi</nowiki>|Xft.dpi: 102}}
  
 
Oni koji i dalje imaju problem mogu rucno da podese dpi koji se koristi od strane fontconfig-a:
 
Oni koji i dalje imaju problem mogu rucno da podese dpi koji se koristi od strane fontconfig-a:
Line 439: Line 442:
 
===Nedostatak karaktera===
 
===Nedostatak karaktera===
  
Ako koristite [[Emacs (Српски)]], {{Package Official|xorg-fonts-75dpi}} i {{Package Official|xorg-fonts-100dpi}} paketi moraju biti instalirani.
+
Ako koristite [[Emacs (Српски)]], {{Pkg|xorg-fonts-75dpi}} i {{Pkg|xorg-fonts-100dpi}} paketi moraju biti instalirani.
  
 
===Starije GTK i QT aplikacije===
 
===Starije GTK i QT aplikacije===
  
Moderne GTK aplikacije po difoltu ukljucuju Xft, ali to nije bio slucaj pre verzije 2.2. Ako nije moguce da osvezite ove aplikacije, primorajte Xft za stare GNOM aplikacije dodavanjem u {{Filename|~/.bashrc}}:
+
Moderne GTK aplikacije po difoltu ukljucuju Xft, ali to nije bio slucaj pre verzije 2.2. Ako nije moguce da osvezite ove aplikacije, primorajte Xft za stare GNOM aplikacije dodavanjem u {{ic|~/.bashrc}}:
  
 
  export GDK_USE_XFT=1
 
  export GDK_USE_XFT=1

Revision as of 09:59, 15 June 2012

Summary help replacing me
Pregled opcija za podesavanje fontova i raznih tehnika za unapredjenje citljivosti fontova
Odnosno
Fonts: Informacije za dodavanje fontova i preporuke fontova
Java fontovi - Sun JRE: Fontovi specificni za Sun-ovu Java masinu
MS Fonts: Dodavanje Microsoft fontova i oponasanje Windows font podesavanja

Font staze

Da bi fontovi bili poznati aplikacijama, moraju biti razvrstani za lak i brz pristup. Fontconfig je biblioteka napravljena da pruzi listu dostupnih fontova za aplikacije, i takodje za podesavanja za nacin prikaza fontova. Iako je fontconfig standard u danasnje vreme u Linux-u, neke aplikacije se jos uvek oslanjaju na originalni metod kategorizacije fontova: Xorg server podesavanja.

Fontconfig

Fontconfig prikuplja sve podesavanja u centralni fajl (/etc/fonts/fonts.conf). Fontconfig-svesne aplikacije iscitavaju ovaj fajl da saznaju raspolozive fontove i nacin na koji se oni prikazuju. Ovaj fajl je skup pravila iz raznih fontconfig konfiguracionih fajlova (globalna podesavanja (/etc/fonts/local.conf), prekonfigurisani fajlovi u /etc/fonts/conf.d/, i konfiguracioni fajl korisnika (~/.fonts.conf).

Staze koje su inicijalno poznate fonconfig-u su: /usr/share/fonts/ i ~/.fonts/ (koje ce fontconfig skenirati rekurzivno). Radi lakse organizacije i instalacije, preporucuje se upotreba ovih font staza kada instalirate nove fontove.

Da vidite listu poznatih fontconfig fontova i lako citljivom formatu:

$ fc-list | sed 's,:.*,,' | sort -u

Xorg

Proverite Xorg-ove poznate font staze pregledanjem njegovog log-a:

$ grep /fonts /var/log/Xorg.0.log

Imajte na umu da Xorg ne pretrazuje rekurzivno kroz /usr/share/fonts direktorijum kao sto fontconfig to cini. Da dodate stazu, morate da zadate celu adresu:

Section "Files"
    FontPath     "/usr/share/fonts/example-font-directory"
EndSection

Da vidite listu poznatih Xorg fontova upotrebite xlsfonts.

Fontconfig podesavanja

Paket za renderovanje fontova na Arch Linux-u sadrzi podrsku za freetype2 sa omogucenim bajtkod interpreterom (BCI). Ali definisanje vasih podesavanja za font ce ponekad biti neophodno. Razmotrite upotrebu zakrpljenih paketa za bolje renderovanje fontova, pogotovo sa LCD monitorom.

Konfigurisanje se moze obaviti na nivou jednog korisnika preko ~/.fonts.conf, ili globalno sa /etc/fonts/local.conf. Podesavanja za jednog korisnika imaju prednost u odnosu na globalna podesavanja. Oba ova fajla koriste istu sintaksu. Zapamtite da ne editujete /etc/fonts/fonts.conf fajl; to je privremeni fajl i nebi trebali da ga editujete jer se on prepisuje tokom fontconfig osvezavanja.

Vec postoji odredjeni broj prekonfigurisanih opcija u direktorijumu /etc/fonts/conf.avail. Ova prekonfigurisana podesavanja se mogu linkovati na nivou korisnika ili globalno za brze podesavanje. Imajte na umu da ce ova podesavanja imati prednost u odnosu na podesavanja u njihovim odgovarajucim konfiguracionim fajlovima.

Naprimer, da omogucite sub-pixel RGB renderovanje na globalnom nivou:

# cd /etc/fonts/conf.d
# ln -s ../conf.avail/10-sub-pixel-rgb.conf

Da ucinite isto ali na nivou podesavanja za jednog korisnika:

$ mkdir ~/.fonts.conf.d
$ ln -s /etc/fonts/conf.avail/10-sub-pixel-rgb.conf ~/.fonts.conf.d
Note: Za neka desktop okruzenja (poput Gnoma i KDE) upotreba "Font Control Panel"-a ce automatski napraviti ili prepisati korisnicki fajl za font podesavanja. Jedno od mogucih resenja je da ne koristite graficki interfejs za podesavanje fontova, vec da to obavljate rucno preko tekstualnog fajla za podesavanje.

Konfiguracioni fajlovi zahtevaju informativno zaglavlje pre nego sto se podesavanja mogu uneti:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>

  <!-- podesavanja idu ovde -->

</fontconfig>

Da izbegnete ponavljanje, ostatak konfiguracionih primera u ovom clanku ce izbeci ove tagove.

Anti-aliasing

Font rasterizacija pretvara vektor font podatke u bitmap podatke tako da moze da se prikaze. Rezultat ce izgledati kao da ima ostre ivice zbog aliasing-a, pa je anti-aliasing ukljucen po difoltu da uveca rezolucija ivica fonta.

  <match target="font">
    <edit name="antialias" mode="assign">
      <bool>true</bool>
    </edit>
  </match>

Hintovanje

Font hintovanje (takodje poznato zadavanje instrukcija) je upotreba matematickih instrukcija za podesavanje prikaza fonta tako da bude poravnat sa rasterizovanom mrezom, kao sto je piksel mreza na ekranu. Fontovi se nece poravnati ispravno bez hintovanja dok ekran nema 300 DPI (tacaka po incu) ili vise. Postoje dva tipa hintovanja.

Bajt-kod interpreter (BCI)

Upotrebom normalnog hintovanja, instrukcije za TrueType hintovanje u fontu se interpretiraju od strane freetype Bajt-kod interpretera. Ovo radi najbolje za fontove sa dobrim instrukcijama za hintovanje.

Da omogucite normalno hintovanje:

  <match target="font">
    <edit name="hinting" mode="assign">
      <bool>true</bool>
    </edit>
  </match>

Automatsko hintovanje

Automatsko otkrivanje za hintovanje. Ovo izgleda gore nego normalno hintovanje za fontove sa dobrim instrukcijama, ali bolje za one sa losim ili nikakvim instrukcijama.

Da ukljucite automatsko hintovanje:

  <match target="font">
    <edit name="autohint" mode="assign">
      <bool>true</bool>
    </edit>
  </match>
Note: Nemojte da koristite automatsko hintovanje sa subpixel renderovanjem. Ova dva nisu dizajnirana da rade zajedno. Infinality paket popravlja ovaj konflikt.

Hint stil

Hint stil je kolicina uticaja koje hinting mod ima. Hintovanje moze biti podeseno na: hintfull, hintmedium, hintslight i hintnone. Sa BCI hintovanjem, hinfull bi trebalo da radi najbolje za vecinu fontova. Sa autohinter-om, hintslight se preporucuje.

  <match target="font">
    <edit name="hintstyle" mode="assign">
      <const>hintfull</const>
    </edit>
  </match>

Subpixel renderovanje

Subpixel renderovanje efikasno utrostrucuje horizontalnu (ili vertikalnu) rezoluciju za fontove upotrebom subpixela.

Vecina monitora proizvedenih u danasnje vreme koristi crvenu, zelenu, plavu (RGB) specifikaciju. Fontconfig ce morati da zna vas tip monitora da bi bio u mogucnosti da prikaze vase fontove na ispravan nacin.

RGB (najcesci), BGR, V-RGB (vertikalno), ili V-BGR

Da upalite subpixel renderovanje:

  <match target="font">
    <edit name="rgba" mode="assign">
      <const>rgb</const>
    </edit>
  </match>

Ako primetite neobicne boje oko granica fontova, proverite tip vaseg monitora ovde.

Note: Nemojte da koristite autohinter sa subpixel renderovanjem. Ove dve opcije nisu dizajnirane da rade zajedno. Infinality paket popravlja ovaj konflikt.

LCD filter

Kada koristite subpixel renderovanje, trebalo bi da upalite lcd filter.

lcddefault filter ce raditi za vecinu korisnika. Drugi filteri su dostupni koji se mogu koristiti u specijalnim situacijama: lcdlight; laksi filter idealan za fontove koji izgledaju suvise zadebljani (bold) ili mutni, lcdlegacy, originalni Cairo filter; i lcdnone da ga iskljucite u potpunosti.

  <match target="font">
    <edit mode="assign" name="lcdfilter">
      <const>lcddefault</const>
    </edit>
  </match>

Napredna specifikacija za LCD filter

Ako su dostupni, ugradjeni LCD filteri nisu zadovoljavajuci. Moguce je podesiti font renderovanje vrlo specificno tako sto cete napraviti prilagodjen freetype2 paket i modifikovati tesko kodorane filtere. Ako ne znate kako da napravite i instalirate pakete iz izvornog koda, upoznajte se sa ABS (Српски)-om prvo.

Note: Infinality paket pruza mogucnost da dodatno podesite filter podesavanja sa prostornom promenljivom (varijablom), bez rekompajliranja.

Prvo, osvezite freetype2 PKGBUILD kao root:

# abs extra/freetype2

Ovaj primer koristi /var/abs/build kao direktorijum za pravljenje. Promenite ga u skladu sa vasim licnim ABS podesavanjima. Preuzmite i otpakujte freetype2 paket kao obican korisnik:

$ cd /var/abs/build
$ cp -r ../extra/freetype2 .
$ cd freetype2
$ makepkg -o

Izmenite fajl src/freetype-VERSION/src/base/ftlcdfil.c i pogledajte definiciju konstante default_filter[5]:

static const FT_Byte  default_filter[5] =
    { 0x10, 0x40, 0x70, 0x40, 0x10 };

Ova konstanta definise low-pass filter primenjen na renderovan glif. Izmenite ga po potrebi. Sacuvajte fajl, napravite i instalirajte prilagodjeni paket:

$ makepkg -e
$ sudo pacman -Rd freetype2
$ sudo pacman -U freetype2-VERSION-ARCH.pkg.tar.xz

Restartujte racunar ili samo X. Lcddefault filter bi sada trebalo da renderuje fontove drugacije.

Iskljucite auto-hinter za bold fontove

Auto-hinter koristi sofisticirane metode za renderovanje fontova, ali obicno pravi bold fontove suvise sirokim. Srecom, to se moze resiti iskljucivanjem autohinter-a samo za bold fontove:

...
<match target="font">
    <test name="weight" compare="more">
        <const>medium</const>
    </test>
    <edit name="autohint" mode="assign">
        <bool>false</bool>
    </edit>
</match>
...
Note: Infinality paket pruza mogucnost autohinteru da radi kako treba sa bold fontovima.

Omogucite anti-aliasing samo za vece fontove

Takodje pogledajte sharpfonts.co.cc za dodatne informacije

Neki korisnici vise vole ostrije renderovanje koje anti-aliasing ne pruza:

...
<match target="font">
    <edit name="antialias" mode="assign">
        <bool>false</bool>
    </edit>
</match>

<match target="font" >
    <test name="size" qual="any" compare="more">
        <double>12</double>
    </test>
    <edit name="antialias" mode="assign">
        <bool>true</bool>
    </edit>
</match>

<match target="font" >
    <test name="pixelsize" qual="any" compare="more">
        <double>17</double>
    </test>
    <edit name="antialias" mode="assign">
        <bool>true</bool>
    </edit>
</match>
...

Zameni fontove

Najpouzdaniji nacin da to uradite je da dodate XML deo slican ovom ispod. Ovo ce rezultirati time da Bitstream Vera Sans bude koriscen umesto Helvetica-e:

...
<match target="pattern" name="family" >
    <test name="family" qual="any" >
        <string>Helvetica</string>
    </test>
    <edit name="family" mode="assign">
        <string>Bitstream Vera Sans</string>
    </edit>
</match>
...

Alternativni pristup je da podesite "preferirani" font, ali ovo radi samo ako originalni font nije na sistemu, u kom slucaju onaj koji je zadat ce biti zamenjen:

...
< !-- Zamenite Helvetica sa Bitstream Vera Sans Mono -->
< !-- Napomena, alias za Helvetica bi vec trebalo da postoji u difolt conf fajlovima -->
<alias>
    <family>Helvetica</family>
    <prefer><family>Bitstream Vera Sans Mono</family></prefer>
    <default><family>fixed</family></default>
</alias>
...

Iskljucite bitmap fontove

Da iskljucite bitmap fontove u fontconfigu, upotrebite 70-no-bitmaps.conf (koji nije napravljen od strane fontconfiga po difoltu):

# cd /etc/fonts/conf.d
# rm 70-yes-bitmaps.conf
# ln -s ../conf.avail/70-no-bitmaps.conf

Mozete da izaberete sa kojim fontovima da zamenite bitmap fontove (Helvetica, Courier i Times bitmap mapira na TTF fontove) sa:

# cd /etc/fonts/conf.d
# ln -s ../conf.avail/29-replace-bitmap-fonts.conf

Napravite bold i italic stilove za nekompletne fontove

Freetype ima mogucnost da autmoatski napravi italic i bold stilove za fontove koji ih nemaju, ali samo ako su eksplicitno zahtevani od strane aplikacije. Dati programi vrlo retko salju ove zahteve. Ova sekcija pokriva manuelno primoravanje generisanja stilova koji nedostaju.

Startujte editovanjem /usr/share/fonts/fonts.cache-1 kao sto je objasnjeno ispod. Uskladistite kopiju modifikacija u drugi fajl jer font osvezavanje sa fc-cache ce prepisati /usr/share/fonts/fonts.cache-1.

Pod pretpostavkom da je Dupree font instaliran:

"dupree.ttf" 0 "Dupree:style=Regular:slant=0:weight=80:width=100:foundry=unknown:index=0:outline=True:etc...

Duplirajte liniju pa izmenite style=Regular na style=Bold ili bilo koji drugi stil. Takodje promenite slant=0 na slant=100 za italic, weight=80 na weight=200 za bold, ili ih kombinujte za bold italic:

"dupree.ttf" 0 "Dupree:style=Bold Italic:slant=100:weight=200:width=100:foundry=unknown:index=0:outline=True:etc...

Sada dodajte neophodne modifikacije u ~/.fonts.conf:

...
<match target="font">
    <test name="family" qual="any">
        <string>Dupree</string>
         <!-- other fonts here .... -->
     </test>
     <test name="weight" compare="more_eq"><int>140</int></test>
     <edit name="embolden" mode="assign"><bool>true</bool></edit>
</match>

<match target="font">
    <test name="family" qual="any">
        <string>Dupree</string>
        <!-- other fonts here .... -->
    </test>
    <test name="slant" compare="more_eq"><int>80</int></test>
    <edit name="matrix" mode="assign">
        <times>
            <name>matrix</name>
                <matrix>
                    <double>1</double><double>0.2</double>
                    <double>0</double><double>1</double>
                </matrix>
        </times>
    </edit>
</match>
...
Tip: Koristite vrednost 'embolden' za postojece bold fontove da ih ucinite jos vise boldovanim.

Izmena predupredjivanja pravila

Fontconfig procesira fajlove u /etc/fonts/conf.d u obrnutom numerickom redosledu. Ovo omogucava pravilima ili fajlovima da preduprede jedan drugog, ali obicno zbunjuje korisnike o tome koji se fajl parsuje poslednji.

Da obezbedite da ce podesavanja na nivou korisnika imati prednost u odnosu na druga pravila, promenite njihov redosled:

# cd /etc/fonts/conf.d
# mv 50-user.conf 00-user.conf

Ova izmena je uglavnom bespotrebna za vecinu slucajeva, jer je korisniku data dovoljna kontrola po difoltu da podesi licna font podesavanja, hinting i antialiasing opcije, alias novih fontova u genericke font familije, itd...

Primer fontconfig podesavanja

Primer fontconfig podesavanja se moze naci na ovoj stranici.

Zakrpljeni paketi

Ovi zakrpljeni paketi su dostupni u AUR-u i mogu se jednostavno instalirati upotrebom AUR helper (Српски). Nekoliko napomena:

  • Podesavanje je obicno neophodno.
  • Novo font renderovanje nece proraditi dok se aplikacija ne restartuje.

Originalni LCD paketi

Cairo 1.10 u [extra] dodaje podrsku za LCD filter. Pogledajte #LCD filter. Mozete da instalirate fontconfig-lcd iz AUR-a da omogucite lcddefault filter automatski.

Da obezbedite filterovanje sa aplikacijama koje koriste libXft za iscrtavanje fontova, morate da instalirate libxft-lcd iz AUR-a.

Ubuntu

Ubuntu koristi originalne LCD zakrpljene pakete i dodaje dodatna podesavanja i zakrpe.

Instalirajte zakrpljene pakete iz AUR-a. Imena paketa su:

freetype2-ubuntu fontconfig-ubuntu libxft-ubuntu cairo-ubuntu

Cleartype

Note: -cleartype paketi su zastareli. Razmotrite upotrebu novijeg freetype2-infinality paketa umesto njega. Mozete da podesite FIR filter prostornu promenljivu da se poklopi sa onim sto su cleartype zakrpe pruzale.

Ovi paketi su pokusali da emuliraju ClearType, tip subpixel renderovanja i filtriranja koji se koristi na Windows-u.

Infinality

Infinality skup zakrpa ima za cilj da u velikoj meri unapredi freetype2 renderovanje fonta. On dodaje vise novih mogucnosti, od kojih su svi podesivi preko prostornih promenljivih u /etc/profile.d/infinality-settings.sh.

  • Emboldening Enhancement: Iskljucuje Y uvecanje, pruzajuci mnogo lepsi rezultat na fontovima bez bold verzija. Radi na nativnim TT hinter i autohinter.
  • Auto-Autohint: Automatski forsira autohint na fontovima koji ne sadrza TT instrukcije.
  • Autohint Enhancement: Cini da se autohint talas pruza horizontalno do pixela. Daje rezultat koji deluje kao dobro hintovan truetype font, ali je 100% patent slobodan.
  • Customized FIR Filter: Izaberite vase filter vrednosti tokom rada. Radi na prirodnim TT hinter i autohinter.
  • Stem Alignment: Poravnava bitmap glifove na optimizovane piksel granice. Radi na nativnim TT hinter i autohinter.
  • Pseudo Gamma Correction: Posvetljava i zamracuje glifove na zadatu vrednost, ispod zadate velicine. Radi na nativnim TT hinter i autohinter.
  • Embolden Thin Fonts: Uvecava tanke ili lake fontove tako da ostaju vidljiviji. Radi na autohinter.

freetype2-infinalityAUR se moze instalirati iz AUR-a.

Dodatno, ako koristite lib32-freetype2 iz [multilib], zamenite ga sa lib32-freetype2-infinalityAUR iz AUR-a.

Da dobijete filtriranje sa aplikacijama koje koriste libXft za font iscrtavanje, morate da instalirate libxft-lcdAUR iz AUR-a.

Note: Infinality paket je dizajniran da radi sa this local.conf. Najverovatnije cete zeleti da napravite izmene na podesavanjima pre nego sto ga upotrebite (pravi dosta font zamena i podesava zeljene fontove na Arial, Times New Roman i Consolas.)

Povratak na pakete bez zakrpa

Da se vratite na pakete bez zakrpa, reinstalirajte originale:

# pacman -S --asdeps freetype2 libxft cairo fontconfig

Aplikacije bez fontconfig podrske

Neke aplikacije poput LibreOffice-a ignorisu fontconfig podesavanja. Ovo je vrlo primetno kada koristite infinality zakrpe koje se u velikoj meri oslanjaju na ispravna podesavanja. Mozete ovo zaobici upotrebom ~/.Xresources, ali to nije ni priblizno fleksibilno kao fontconfig. Primer (pogledajte #Fontconfig configuration za objasnjenja za opcije):

~/.Xresources
Xft.autohint: 0
Xft.lcdfilter:  lcddefault
Xft.hintstyle:  hintfull
Xft.hinting: 1
Xft.antialias: 1
Xft.rgba: rgb

Uverite se da su podesavanja ucitana ispravno kada X startuje sa xrdb -q (pogledajte Xresources (Српски) za vise informacija).

Resavanje problema

Iskrivljeni fontovi

Note: 96 DPI nije standard. Trebalo bi da koristite DPI od vaseg monitora da dobijete ispravno renderovanje fontova, pogotovo kada koristite subpixel-e.

Ako su fontovi i dalje neocekivano veliki ili mali, siromasno proporcionisani ili se jednostavno renderuju lose, moguce je da fontconfig koristi neispravan DPI.

Fontconfig bi trebalo da moze da detektuje DPI parametre koji su utvrdjeni od strane Xorg servera. Mozete da proverite auto-discovered DPI sa xdpyinfo:

$ xdpyinfo | grep dots
  resolution:    102x102 dots per inch

Ako je DPI detektovan netacno (obicno zbog netacnog monitor EDID-a), mozete da ga zadate rucno u Xorg podesavanjima, pogledajte Xorg (Српски)#Display Size and DPI. Ovo je preporucljivo resenje, ali postoji mogucnost da nece raditi sa bagovitim drajverima.

Fontconfig ce se vratiti na difolt na Xft.dpi varijablu ako je podesena. Xft.dpi je obicno podesena od strane desktop okruzenja (obicno u Xorg-ovom DPI podesavanju) ili rucno u ~/.Xdefaults ili ~/.Xresources. Upotrebite xrdb da izdate upit za vrednoscu:

$ xrdb -query | grep dpi
Xft.dpi:	102

Oni koji i dalje imaju problem mogu rucno da podese dpi koji se koristi od strane fontconfig-a:

...
<match target="pattern">
   <edit name="dpi" mode="assign"><double>96</double></edit>
</match>
...

Nedostatak karaktera

Ako koristite Emacs (Српски), xorg-fonts-75dpi i xorg-fonts-100dpi paketi moraju biti instalirani.

Starije GTK i QT aplikacije

Moderne GTK aplikacije po difoltu ukljucuju Xft, ali to nije bio slucaj pre verzije 2.2. Ako nije moguce da osvezite ove aplikacije, primorajte Xft za stare GNOM aplikacije dodavanjem u ~/.bashrc:

export GDK_USE_XFT=1

Za starije QT aplikacije:

export QT_XFT=true

Izvori