Accepting request 224182 from M17N

- fix version in fonts-config script

- updated to 20140226:
  * FORCE_{SANS,SERIF,MONO}_PREFERENCE replaced by 
    SEARCH_METRIC_COMPATIBLE

- updated to 20140225:
  * introduced FORCE_{SANS,SERIF,MONO}_PREFERENCE

- updated to 20140224:
  * add example of family preference: CFF fonts

- updated to 20140222:
  * don't use autohinter for CFF files
  * hinstlight for CFF files

- updated to 20140221
  * added 31-metric-aliases-bw.conf

- updated to 20140219
- revorked package, fontconfig configuration based on infinality
  one
- added patches:
  * fontconfig-infinality-main.patch (remove parts of original 
    52-infinality.conf)

OBS-URL: https://build.opensuse.org/request/show/224182
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/fonts-config?expand=0&rev=36
This commit is contained in:
Stephan Kulow 2014-03-06 18:29:31 +00:00 committed by Git OBS Bridge
commit 271ca45f2b
17 changed files with 1722 additions and 461 deletions

View File

@ -0,0 +1,62 @@
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<!-- DO NOT EDIT; this is a generated file -->
<!-- modify /etc/sysconfig/fonts-config && run fonts-config instead -->
<!-- using target="pattern", because we want to change pattern in 60-family-prefer.conf
regarding to this setting -->
<fontconfig>
<!-- Choose prefered common hinting style here. -->
<!-- Possible values: no, hitnone, hitslight, hintmedium and hintfull. -->
<!-- Can be overriden with some other options, e. g. force_bw
or force_bw_monospace => hintfull -->
<match target="pattern" >
<edit name="force_hintstyle" mode="assign">
<string>_FORCE_HINTSTYLE_PLACEHOLDER_</string>
</edit>
</match>
<!-- Force autohint always. -->
<!-- If false, for well hinted fonts, their instructions are used for rendering. -->
<match target="pattern">
<edit name="force_autohint" mode="assign">
<bool>_FORCE_AUTOHINT_PLACEHOLDER_</bool>
</edit>
</match>
<!-- Do not use font smoothing (black&white rendering) at all. -->
<match target="pattern" >
<edit name="force_bw" mode="assign">
<bool>_FORCE_BW_PLACEHOLDER_</bool>
</edit>
</match>
<!-- Do not use font smoothing for some monospaced fonts. -->
<!-- Liberation Mono, Courier New, Andale Mono, Monaco, etc. -->
<match target="pattern" >
<edit name="force_bw_monospace" mode="assign">
<bool>_FORCE_BW_MONOSPACE_PLACEHOLDER_</bool>
</edit>
</match>
<!-- Set LCD filter. Amend when you want use subpixel rendering. -->
<!-- Don't forgot to set correct subpixel ordering in 'rgba' element. -->
<!-- Possible values: lcddefault, lcdlight, lcdlegacy, lcdnone -->
<match target="pattern">
<edit name="lcdfilter" mode="assign">
<const>_USE_LCDFILTER_PLACEHOLDER_</const>
</edit>
</match>
<!-- Set LCD subpixel arrangement and orientation. -->
<!-- Possible values: unknown, none, rgb, bgr, vrgb, vbgr. -->
<match target="pattern">
<edit name="rgba" mode="assign">
<const>_USE_RGBA_PLACEHOLDER_</const>
</edit>
</match>
_USE_EMBEDDED_BITMAPS_PLACEHOLDER_
</fontconfig>

123
11-base-rendering.conf Normal file
View File

@ -0,0 +1,123 @@
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<!-- hinting -->
<match target="font">
<!-- hinting is on unconditionally, but that -->
<!-- can be controlled via hintstyle (hintnone) -->
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
</match>
<!-- hint type: autohinter or BCI -->
<match target="font">
<edit name="autohint" mode="assign">
<bool>true</bool>
</edit>
</match>
<match target="font">
<test name="font_type">
<string>TT Instructed Font</string>
</test>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
</match>
<match target="font">
<test name="font_type">
<string>NON TT Instructed Font</string>
</test>
<edit name="autohint" mode="assign">
<bool>true</bool>
</edit>
</match>
<match target="font">
<test name="fontformat">
<string>CFF</string>
</test>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
</match>
<match target="font">
<test name="force_autohint">
<bool>true</bool>
</test>
<edit name="autohint" mode="assign">
<bool>true</bool>
</edit>
</match>
<!-- hint style -->
<match target="font">
<edit name="hintstyle">
<const>hintslight</const>
</edit>
</match>
<match target="font">
<test name="autohint">
<bool>false</bool>
</test>
<test name="fontformat" compare="not_eq">
<string>CFF</string>
</test>
<edit name="hintstyle">
<const>hintfull</const>
</edit>
</match>
<match target="font">
<test name="force_hintstyle">
<string>hintnone</string>
</test>
<edit name="hintstyle">
<const>hintnone</const>
</edit>
</match>
<match target="font">
<test name="force_hintstyle">
<string>hintslight</string>
</test>
<edit name="hintstyle">
<const>hintslight</const>
</edit>
</match>
<match target="font">
<test name="force_hintstyle">
<string>hintmedium</string>
</test>
<edit name="hintstyle">
<const>hintmedium</const>
</edit>
</match>
<match target="font">
<test name="force_hintstyle">
<string>hintfull</string>
</test>
<edit name="hintstyle">
<const>hintfull</const>
</edit>
</match>
<!-- font smooth or don't font smooth -->
<match target="font">
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
</match>
<match target="font">
<test name="force_bw">
<bool>true</bool>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
<edit name="hintstyle" mode="assign">
<const>hintfull</const>
</edit>
<edit name="embeddedbitmap" mode="assign">
<bool>true</bool>
</edit>
</match>
</fontconfig>

View File

@ -0,0 +1,26 @@
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font">
<test name="force_bw_monospace">
<bool>true</bool>
</test>
<test name="spacing" compare="more_eq">
<int>100</int>
</test>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
<edit name="hintstyle" mode="assign">
<const>hintfull</const>
</edit>
<edit name="embeddedbitmap" mode="assign">
<bool>true</bool>
</edit>
</match>
</fontconfig>

View File

@ -0,0 +1,81 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- IPA* fonts: setting hintstyle=hintnone for now, IPA font
setting should be improved in the future [bnc#766319]
We are using fullname element instead of family, because
some programs may use Japanese name instead, which would
double this list, when using family element. See comment
47 and 48 of referred bug. -->
<!--
The IPA fonts have bitmaps only in 12, 14, and 16 pixels.
That is rather useless, it is not nice to see a bitmaps at 12
pixels, antialiased glyphs at 13 pixels and bitmaps at 14
pixels again.
-->
<match target="font">
<test name="fullname"><string>IPAexGothic</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAexMincho</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAGothic BoldItalic</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAGothic Bold</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAGothic Italic</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAGothic</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAMincho</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAPGothic BoldItalic</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAPGothic Bold</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAPGothic Italic</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAPGothic</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAPMincho</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
<match target="font">
<test name="fullname"><string>IPAUIGothic</string></test>
<edit name="hintstyle"><const>hintnone</const></edit>
<edit name="embeddedbitmap"><bool>false</bool></edit>
</match>
</fontconfig>

46
31-metric-aliases-bw.conf Normal file
View File

@ -0,0 +1,46 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- according to infinality database, e.g. Helvetica or Nimbus Sans L
are not well hinted. Fall back to Liberation Sans instead, when
black and white rendering was chosen. -->
<match target="pattern">
<test name="force_bw">
<bool>true</bool>
</test>
<!-- Helvetica represents group here as defined in
30-metric-aliases.conf -->
<test name="family">
<string>Helvetica</string>
</test>
<edit name="family" mode="append" binding="same">
<string>Liberation Sans</string>
</edit>
</match>
<match target="pattern">
<test name="force_bw">
<bool>true</bool>
</test>
<!-- Times represents group here as defined in
30-metric-aliases.conf -->
<test name="family">
<string>Times</string>
</test>
<edit name="family" mode="append" binding="same">
<string>Liberation Serif</string>
</edit>
</match>
<match target="pattern">
<test name="force_bw">
<bool>true</bool>
</test>
<!-- Courier represents group here as defined in
30-metric-aliases.conf -->
<test name="family">
<string>Courier</string>
</test>
<edit name="family" mode="append" binding="same">
<string>Liberation Mono</string>
</edit>
</match>
</fontconfig>

335
49-family-default.conf Normal file
View File

@ -0,0 +1,335 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- ************************************************************ -->
<!-- assigning families to generic names -->
<!-- ************************************************************ -->
<!--
Serif faces
-->
<alias>
<family>Georgia</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>Bell MT</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>Thorndale AMT</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>SUSE Serif</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>FreeSerif</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>DejaVu Serif</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>Droid Serif</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>Liberation Serif</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>HGMinchoL</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>HGPMinchoL</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>HGPMinchoB</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>HGSMinchoB</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>HGMinchoE</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>HGPMinchoE</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>HGSMinchoE</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>IPAMincho</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>IPAPMincho</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>IPAexMincho</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>Sazanami Mincho</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>STIXGeneral</family>
<default><family>serif</family></default>
</alias>
<alias>
<family>Tinos</family>
<default><family>serif</family></default>
</alias>
<!--
Sans-serif faces
-->
<alias>
<family>Trebuchet</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Segoe</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Andale Sans</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Albany AMT</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>SUSE Sans</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>FreeSans</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>DejaVu Sans</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Droid Sans</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Liberation Sans</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Cantarell</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>HGGothicB</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>HGPGothicB</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>HGGothicE</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>HGPGothicE</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>HGSGothicE</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>HGGothicM</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>HGPGothicM</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>HGSGothicM</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>IPAGothic</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>IPAPGothic</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>IPAexGothic</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Sazanami Gothic</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Baekmuk Gulim</family>
<default><family>sans-serif</family></default>
</alias>
<alias>
<family>Arimo</family>
<default><family>sans-serif</family></default>
</alias>
<!--
Monospace faces
-->
<alias>
<family>Fixed</family>
<default><family>monospace</family></default>
</alias>
<alias>
<family>Cumberland AMT</family>
<default><family>monospace</family></default>
</alias>
<alias>
<family>SUSE Sans Mono</family>
<default><family>monospace</family></default>
</alias>
<alias>
<family>FreeMono</family>
<default><family>monospace</family></default>
</alias>
<alias>
<family>DejaVu Sans Mono</family>
<default><family>monospace</family></default>
</alias>
<alias>
<family>Droid Sans Mono</family>
<default><family>monospace</family></default>
</alias>
<alias>
<family>Liberation Mono</family>
<default><family>monospace</family></default>
</alias>
<alias>
<family>Cousine</family>
<default><family>monospace</family></default>
</alias>
<!-- ************************************************************ -->
<!-- Font replacements and fallbacks -->
<!-- ************************************************************ -->
<!--
If the original Adobe "Symbol" font is not available, use
the URW font "Standard Symbols L" or the font "OpenSymbol" coming
with OpenOffice as a replacement. The last font appended in this
rule will win.
(needed for Mozilla/Firefox to display symbols correctly).
-->
<match target="pattern">
<test name="family">
<string>symbol</string>
</test>
<edit name="family" mode="append" binding="strong">
<string>OpenSymbol</string>
</edit>
<edit name="family" mode="append" binding="strong">
<string>Standard Symbols L</string>
</edit>
</match>
<!--
Use "Misc Console" (or "Misc Console Wide") instead of "console"
(needed to make the menu entry labelled "Linux" in the font menu of
KDE's konsole choose the same font as it used to).
-->
<match target="pattern">
<test name="family">
<string>console</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>Misc Console</string>
</edit>
<edit name="family" mode="prepend" binding="strong">
<string>Misc Console Wide</string>
</edit>
</match>
<!-- ************************************************************ -->
<!-- Blacklisting fonts which cannot work -->
<!-- ************************************************************ -->
<!--
the Hershey-Fonts from ghostscript-fonts-other.rpm are so called
"Stroke" fonts which are currently not supported by Freetype
-->
<selectfont>
<rejectfont>
<pattern>
<patelt name="family">
<string>Hershey-Gothic-English</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Plain-Duplex</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Plain-Duplex-Italic</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Plain-Triplex</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Plain-Triplex-Italic</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Script-Simplex</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Script-Complex</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Gothic-German</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Gothic-Italian</string>
</patelt>
</pattern>
</rejectfont>
</selectfont>
</fontconfig>

201
60-family-prefer.conf Normal file
View File

@ -0,0 +1,201 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!--
Set fonts to be preferred when the standard aliases "serif", "sans-serif",
and "monospace" are used.
-->
<alias>
<family>serif</family>
<prefer>
<family>Times New Roman</family>
<family>Thorndale AMT</family>
<family>Liberation Serif</family>
<family>DejaVu Serif</family>
<family>Droid Serif</family>
<family>Tinos</family>
<family>SUSE Serif</family>
<family>Bitstream Vera Serif</family>
<family>Nimbus Roman No9 L</family>
<family>Luxi Serif</family>
<family>Likhan</family>
<family>KacstBook</family>
<family>Frank Ruehl CLM</family>
<family>Times</family>
<family>Khmer OS System</family>
<family>Lohit Punjabi</family>
<family>Lohit Oriya</family>
<family>Pothana2000</family>
<family>TSCu_Times</family>
<family>BPG Chveulebrivi</family>
<family>Nazli</family>
<family>FreeSerif</family>
<family>MS PMincho</family>
<family>MS Mincho</family>
<family>HGPMinchoL</family>
<family>HGMinchoL</family>
<family>IPAPMincho</family>
<family>IPAMincho</family>
<family>IPAexMincho</family>
<family>Sazanami Mincho</family>
<family>Kochi Mincho</family>
<family>CMEXSong</family>
<family>FZSongTi</family>
<family>WenQuanYi Micro Hei</family>
<family>WenQuanYi WenQuanYi Bitmap Song</family>
<family>WenQuanYi Zen Hei</family>
<family>AR PL ShanHeiSun Uni</family>
<family>FZMingTiB</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>NanumMyeongjo</family>
<family>UnBatang</family>
<family>Baekmuk Batang</family>
<family>SimSun</family>
<family>HanyiSong</family>
<family>ZYSong18030</family>
<family>STIXGeneral</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Arial</family>
<family>Albany AMT</family>
<family>Verdana</family>
</prefer>
</alias>
<!-- Choose sans-serif alias depending on antialias.
Liberation when antialias off, otherwise DejaVu Sans -->
<match target="pattern">
<test name="family">
<string>sans-serif</string>
</test>
<test name="force_bw">
<bool>true</bool>
</test>
<edit name="family" mode="prepend">
<string>Liberation Sans</string>
</edit>
<edit name="family" mode="prepend">
<string>DejaVu Sans</string>
</edit>
</match>
<match target="pattern">
<test name="family">
<string>sans-serif</string>
</test>
<test name="force_bw">
<bool>false</bool>
</test>
<edit name="family" mode="prepend">
<string>DejaVu Sans</string>
</edit>
<edit name="family" mode="prepend">
<string>Liberation Sans</string>
</edit>
</match>
<alias>
<family>sans-serif</family>
<prefer>
<family>Droid Sans</family>
<family>Arimo</family>
<family>Cantarell</family>
<family>SUSE Sans</family>
<family>Bitstream Vera Sans</family>
<family>Nimbus Sans L</family>
<family>Luxi Sans</family>
<family>Mukti Narrow</family>
<family>KacstBook</family>
<family>Nachlieli CLM</family>
<family>Helvetica</family>
<family>Khmer OS System</family>
<family>Lohit Punjabi</family>
<family>Lohit Oriya</family>
<family>Pothana2000</family>
<family>TSCu_Paranar</family>
<family>BPG Glaho</family>
<family>Terafik</family>
<family>FreeSans</family>
<family>Meiryo</family>
<family>MS PGothic</family>
<family>MS Gothic</family>
<family>HGPGothicB</family>
<family>HGGothicB</family>
<family>IPAPGothic</family>
<family>IPAGothic</family>
<family>IPAexGothic</family>
<family>VL PGothic</family>
<family>VL Gothic</family>
<family>Sazanami Gothic</family>
<family>Kochi Gothic</family>
<family>CMEXSong</family>
<family>FZSongTi</family>
<family>WenQuanYi Micro Hei</family>
<family>WenQuanYi WenQuanYi Bitmap Song</family>
<family>WenQuanYi Zen Hei</family>
<family>AR PL ShanHeiSun Uni</family>
<family>FZMingTiB</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>NanumGothic</family>
<family>UnDotum</family>
<family>Baekmuk Gulim</family>
<family>Baekmuk Dotum</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Consolas</family>
<family>Liberation Mono</family>
<family>DejaVu Sans Mono</family>
<family>Droid Sans Mono</family>
<family>Andale Mono</family>
<family>Cousine</family>
<family>SUSE Sans Mono</family>
<family>Bitstream Vera Sans Mono</family>
<family>Courier New</family>
<family>Cumberland AMT</family>
<family>Nimbus Mono L</family>
<family>Luxi Mono</family>
<family>Mukti Narrow</family>
<family>KacstBook</family>
<family>Miriam Mono CLM</family>
<family>Terafik</family>
<family>Khmer OS System</family>
<family>Lohit Punjabi</family>
<family>Lohit Oriya</family>
<family>Pothana2000</family>
<family>TSCu_Paranar</family>
<family>BPG Courier</family>
<family>FreeMono</family>
<family>MS Gothic</family>
<family>HGGothicB</family>
<family>IPAGothic</family>
<family>VL Gothic</family>
<family>Sazanami Gothic</family>
<family>Kochi Gothic</family>
<family>CMEXSong</family>
<family>FZSongTi</family>
<family>WenQuanYi Micro Hei Mono</family>
<family>WenQuanYi WenQuanYi Bitmap Song</family>
<family>WenQuanYi Zen Hei Mono</family>
<family>AR PL ShanHeiSun Uni</family>
<family>FZMingTiB</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>NanumGothicCoding</family>
<family>UnDotum</family>
<family>Baekmuk Gulim</family>
<family>Baekmuk Dotum</family>
<family>NSimSun</family>
<family>HanyiSong</family>
<family>ZYSong18030</family>
</prefer>
</alias>
</fontconfig>

58
70-reject.conf Normal file
View File

@ -0,0 +1,58 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<selectfont>
<rejectfont>
<glob>*.bdf</glob>
</rejectfont>
</selectfont>
<selectfont>
<rejectfont>
<pattern>
<patelt name="family">
<string>Hershey-Gothic-English</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Plain-Duplex</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Plain-Duplex-Italic</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Plain-Triplex</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Plain-Triplex-Italic</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Script-Simplex</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Script-Complex</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Gothic-German</string>
</patelt>
</pattern>
<pattern>
<patelt name="family">
<string>Hershey-Gothic-Italian</string>
</patelt>
</pattern>
</rejectfont>
</selectfont>
</fontconfig>

5
empty.conf Normal file
View File

@ -0,0 +1,5 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
</fontconfig>

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:07c79d4383a62f100e4c690c212f575670a9c026b3e782b31c44885e41efa5ba
size 22222

View File

@ -0,0 +1,42 @@
Index: infinality/conf.src/generate60/60-group-non-tt-fonts.conf.awk
===================================================================
--- infinality/conf.src/generate60/60-group-non-tt-fonts.conf.awk.orig 2013-01-05 02:11:58.000000000 +0100
+++ infinality/conf.src/generate60/60-group-non-tt-fonts.conf.awk 2014-02-14 09:44:34.518450937 +0100
@@ -22,23 +22,6 @@
}
END {
- printf "\t<match target=\"font\">\n"
- printf "\t\t<test name=\"font_type\">\n"
- printf "\t\t\t<string>NON TT Instructed Font</string>\n"
- printf "\t\t</test>\n"
- printf "\t\t<edit name=\"autohint\" mode=\"assign\">\n"
- printf "\t\t\t<bool>true</bool>\n"
- printf "\t\t</edit>\n"
- printf "\t\t<edit name=\"hintstyle\" mode=\"assign\">\n"
- printf "\t\t\t<const>hintslight</const>\n"
- printf "\t\t</edit>\n"
- printf "\t\t<edit name=\"hinting\" mode=\"assign\">\n"
- printf "\t\t\t<bool>true</bool>\n"
- printf "\t\t</edit>\n"
- printf "\t\t<edit name=\"antialias\" mode=\"assign\">\n"
- printf "\t\t\t<bool>true</bool>\n"
- printf "\t\t</edit>\n"
- printf "\t</match>\n\n"
printf "</fontconfig>\n\n"
}
Index: infinality/conf.src/generate60/60-group-tt-fonts.conf.awk
===================================================================
--- infinality/conf.src/generate60/60-group-tt-fonts.conf.awk.orig 2013-01-05 02:11:58.000000000 +0100
+++ infinality/conf.src/generate60/60-group-tt-fonts.conf.awk 2014-02-14 09:45:47.492311657 +0100
@@ -9,9 +9,6 @@
{
printf "\t<match target=\"font\">\n"
- printf "\t\t<test name=\"force_autohint\">\n"
- printf "\t\t\t<bool>false</bool>\n"
- printf "\t\t</test>\n"
printf "\t\t<test name=\"family\">\n"
printf "\t\t\t<string>"
printf $0

View File

@ -20,6 +20,107 @@ fonts-config [B<OPTION>]...
=over 4
=item B<--force-hintstyle> string
By default, "hintstyle" is chosen depending on value of autohint for given font.
Apart from exceptions (e. g. IPA fonts for example): for fonts, with good
instructions*) "hintfull" used and for other fonts "hintslight" is used. You can
enforce hinstyle here. Possible values are "none", "hintnone", "hintslight",
"hintmedium" and "hintfull". This option can be overriden by --force-bw* options,
where "hintfull" is always used.
*) see /usr/share/doc/packages/fonts-config/infinality/good-hinted-tt-fonts.list
for reference
=item B<--force-autohint>
By default, FreeType's autohinter is used for fonts, which have no or not good
native hinting instructions. You can enforce to use autohinter even for
fonts with good instructions*) with this option. hintstyle="hintslight" is used then,
when --force-hintstyle do not everrides it.
*) see /usr/share/doc/packages/fonts-config/infinality/good-hinted-tt-fonts.list
for fonts with good hinting instructions
=item B<--force-bw>
FreeType is instructed to use antialias (font smoothing) in rendering by default.
You can override this settings with this option, which means that fonts will not
bee smoothed but contranst with background will be high, which can suit
one's eyes. Liberation Sans family is then automatically prefered over DejaVu Sans.
Force using bitmap strikes from the font. Hintstlyle is forced to "hintfull"
(this even overrides --force-hintstyle option).
This can produce bitmap quality rendering for good instructed fonts.
=item B<--force-bw-monospace>
This option has lower impact than --force-bw. Sets black and white rendering only
for good hinted monospaced fonts (e. g. Liberation Mono). "hintfull" hinstyle is
used.
=item B<--lcd-filter> string
Defines lcd filter to be used. If not overriden by this option, "lcdnone" is used.
Possible values are "lcdnone", "lcddefault", "lcdlight" and "lcdlegacy".
=item B<--rgba> string
Defines lcd subpixel arrangement and orientation for your monitor. Default value
is "none". Possible values are "none", "rgb", "vrgb", "bgr", "vbgr", "unknown".
=item B<--(no)ebitmaps>
Use (or don't use) embedded bitmaps from font.
=item B<--ebitmapslang> string
Limit use of embedded bitmaps to specified in string separated by colons.
=item B<--sans-families> string
Given colon-separated list of prefered sans families, they will be
prefered over system preference list of sans families*).
*) see /etc/fonts/conf.d/60-family-prefer.conf for details
=item B<--mono-families> string
Given colon-separated list of prefered monospace families, they will be
prefered over system preference list of monospace families*).
*) see /etc/fonts/conf.d/60-family-prefer.conf for details
=item B<--serif-families> string
Given colon-separated list of prefered serif families, they will be
prefered over system preference list of serif families*).
*) see /etc/fonts/conf.d/60-family-prefer.conf for details
=item B<--(no)metric>
Value of B<--*-families> can be overriden when document
or GUI is requesting metric compatible font as defined
in /etc/fonts/conf.d/30-metric-aliases.conf,
e. g. request to Times New Roman will get Liberation Serif
even if other family is explicitely prefered by B<--serif-families>
option. (hint, that's because binding="same" in that fontconfig)
You can change this default behaviour with B<--nometric>, but be careful
with that. Metric compatibility means that every glyph, say 'A', has
the same width and height in both fonts, so document should have same
line wraps for example.
=item B<--(no)ttcap>
Generate (or don't generate) TTCap entries. TTCap entries can be used
with the xtt module and with recent versions of the freetype module.
=item B<--(no)java>
Generate (or don't generate) font setup for Java.
=item B<-f>, B<--force>
Force the update of all generated files even if it appears to be
@ -37,28 +138,6 @@ Print some progress messages to standard output.
Print a lot of debugging messages to standard output.
=item B<--(no)ttcap>
Generate (or don't generate) TTCap entries. TTCap entries can be used
with the xtt module and with recent versions of the freetype module.
=item B<--(no)java>
Generate (or don't generate) font setup for Java 1.4.x and Java 1.5.x.
=item B<--bcbwmax> size
Maximum pixel size to use the byte code interpreter with black and
white rendering.
=item B<--(no)ebitmap>
Use (or don't use) embedded bitmaps from font.
=item B<--ebitmaplang> string
Limit use of embedded bitmaps to specified in string separated by colons.
=item B<--version>
Display version and exit.
@ -107,6 +186,13 @@ Finally, the time stamps of the directory, B<fonts.scale>,
B<fonts.dir>, and B<.fonts-config-timestamp> are set to the time when
B<fonts-config> started.
=item B<generate rendering options>
Generates /etc/fonts/conf.d/10-rendering-options.conf according to
rendering options or its bound sysconfig variables. See
--force-hintstyle, --force-autohint, --force-bw, --force-bw-monospace,
--lcdfilter, --rgba, --ebitmaps, --ebitmapslang options.
=item B<call fc-cache>
creates cache files for fonts to use with client side font rendering
@ -132,6 +218,62 @@ Default values for some command line options of fonts-config are read
from this file if it exists. The options currently supported in
this file are:
=item FORCE_HINSTYLE
can be set to "none", "hintfull", "hintmedium" , "hintslight" or "hintnone" and
is bound to B<--force-hintstyle> option.
=item FORCE_AUTOHINT
can be set to "yes" or "no" and is bound to B<--force-autohint> option.
=item FORCE_BW
can be set to "yes" or "no" and is bound to B<--force-bw> option.
=item FORCE_BW_MONOSPACE
can be set to "yes" or "no" and is bound to B<--force-bw-monospace> option.
=item USE_LCDFILTER
can be set to "lcdnone", "lcddefault", "lcdlight" and "lcdlegacy" and
is bound to B<--lcdfilter> option.
=item USE_RGBA
can be set to "none", "rgb", "vrgb", "bgr", "vrgb" or "unknown" and is
bound to B<--rgba> option.
=item USE_EMBEDDED_BITMAPS
can be set to "yes" or "no" and sets the default for the option
B<--ebitmaps>.
=item EMBEDDED_BITMAPS_LANGUAGES
can be set to colon separated list of languages, sets the default for
the B<--ebitmapslang>
=item PREFER_SANS_FAMILIES
can be set to colon separated list of sans families, bound to the
B<--sans-families> option.
=item PREFER_SERIF_FAMILIES
can be set to colon separated list of serif families, bound to the
B<--serif-families> option.
=item PREFER_MONO_FAMILIES
can be set to colon separated list of monospace families, bound to the
B<--mono-families> option.
=item SEARCH_METRIC_COMPATIBLE
can be set to "yes" or "no" and is bound to B<--(no)metric> option.
=item GENERATE_TTCAP_ENTRIES
can be set to "yes" or "no" and sets the default for the option B<--(no)ttcap>.
@ -141,21 +283,6 @@ can be set to "yes" or "no" and sets the default for the option B<--(no)ttcap>.
can be set to "yes" or "no" and sets the default for the option
B<--(no)java>.
=item BYTECODE_BW_MAX_PIXEL
can be set to any integer value and sets the default for the
option B<--bcbwmax>.
=item USE_EMBEDDED_BITMAPS
can be set to "yes" or "no" and sets the default for the option
B<--embeddedbitmaps>.
=item EMBEDDED_BITMAPS_LANGUAGES
can be set to colon separated list of languages, sets the default for
the B<--eblanguages>
=back
=head1 SEE ALSO
@ -164,7 +291,7 @@ L<fc-cache(1)>, L<cidfont-x11-config(1)>, L<mkfontdir(1)>, L<mkfontscale(1)>
=head1 AUTHOR
Mike FABIAN, 2003, Petr Gajdos <I<pgajdos@suse.com>>, 2013.
Mike FABIAN, 2003, Petr Gajdos <I<pgajdos@suse.com>>, 2014.
=cut
@ -177,7 +304,7 @@ use Env;
use strict;
my $script_start_time = time();
my $version = 20131102;
my $version = 20140226;
#
# OPTIONS
@ -187,11 +314,20 @@ my $OPT_FORCE = 0;
my $OPT_QUIET = 0;
my $OPT_VERBOSE = 0;
my $OPT_DEBUG = 0;
my $OPT_TTCAP = 0;
my $OPT_JAVA = 1;
my $OPT_BCBWMAX = 0;
my $OPT_FHINTSTYLE = "none";
my $OPT_FAUTOHINT = 0;
my $OPT_FBW = 0;
my $OPT_FBWMONOSPACE = 0;
my $OPT_LCDFILTER = "none";
my $OPT_RGBA = "none";
my $OPT_EBITMAP = 1;
my $OPT_EBITMAP_LANG = "ja:ko:zh-CN:zh-TW:zh-HK:zh-SG";
my $OPT_SANS_FAMILIES = "";
my $OPT_SERIF_FAMILIES = "";
my $OPT_MONO_FAMILIES = "";
my $OPT_SEARCH_METRIC_COMPATIBLE = 1;
my $OPT_TTCAP = 0;
my $OPT_JAVA = 1;
my $OPT_VERSION = 0;
my $OPT_HELP = 0;
@ -204,32 +340,49 @@ my $VERBOSITY = $VERBOSITY_QUIET;
my %sysconfig_options = (
"VERBOSITY" , "VERBOSITY",
"FORCE_HINTSTYLE" , "OPT_FHINTSTYLE",
"FORCE_AUTOHINT" , "OPT_FAUTOHINT",
"FORCE_BW" , "OPT_FBW",
"FORCE_BW_MONOSPACE" , "OPT_FBWMONOSPACE",
"USE_LCDFILTER" , "OPT_LCDFILTER",
"USE_RGBA" , "OPT_RGBA",
"USE_EMBEDDED_BITMAPS" , "OPT_EBITMAP",
"EMBEDDED_BITMAPS_LANGUAGES" , "OPT_EBITMAP_LANG",
"PREFER_SANS_FAMILIES" , "OPT_SANS_FAMILIES",
"PREFER_SERIF_FAMILIES" , "OPT_SERIF_FAMILIES",
"PREFER_MONO_FAMILIES" , "OPT_MONO_FAMILIES",
"SEARCH_METRIC_COMPATIBLE" , "OPT_SEARCH_METRIC_COMPATIBLE",
"GENERATE_TTCAP_ENTRIES" , "OPT_TTCAP",
"GENERATE_JAVA_FONT_SETUP" , "OPT_JAVA",
"BYTECODE_BW_MAX_PIXEL" , "OPT_BCBWMAX",
"USE_EMBEDDED_BITMAPS" , "OPT_EBITMAP",
"EMBEDDED_BITMAPS_LANGUAGES" , "OPT_EBITMAP_LANG"
);
my $sysconfig_file = "/etc/sysconfig/fonts-config";
get_option_defaults_from_sysconfig();
get_option_defaults_from_sysconfig("/etc/sysconfig/fonts-config");
# process command line options
my %opt;
unless (GetOptions(\%opt,
'force|f', \$OPT_FORCE,
'quiet|q', \$OPT_QUIET,
'verbose|v', \$OPT_VERBOSE,
'debug|d', \$OPT_DEBUG,
'ttcap!', \$OPT_TTCAP,
'java!', \$OPT_JAVA,
'bcbwmax=i', \$OPT_BCBWMAX,
'ebitmap!', \$OPT_EBITMAP,
'ebitmaplang=s', \$OPT_EBITMAP_LANG,
'version', \$OPT_VERSION,
'help|h', \$OPT_HELP,
'force|f', \$OPT_FORCE,
'quiet|q', \$OPT_QUIET,
'verbose|v', \$OPT_VERBOSE,
'debug|d', \$OPT_DEBUG,
'force-hintstyle=s', \$OPT_FHINTSTYLE,
'force-autohint+', \$OPT_FAUTOHINT,
'force-bw+', \$OPT_FBW,
'force-bw-monospace+', \$OPT_FBWMONOSPACE,
'lcdfilter=s', \$OPT_LCDFILTER,
'rgba=s', \$OPT_RGBA,
'ebitmaps!', \$OPT_EBITMAP,
'ebitmapslang=s', \$OPT_EBITMAP_LANG,
'sans-families=s', \$OPT_SANS_FAMILIES,
'serif-families=s', \$OPT_SERIF_FAMILIES,
'mono-families=s', \$OPT_MONO_FAMILIES,
'metric!', \$OPT_SEARCH_METRIC_COMPATIBLE,
'ttcap!', \$OPT_TTCAP,
'java!', \$OPT_JAVA,
'version', \$OPT_VERSION,
'help|h', \$OPT_HELP,
)) {
&usage ();
exit 1;
@ -305,17 +458,12 @@ mkfont_scale_dir();
# changed in /etc/fonts after calling fc-cache, fontconfig
# will think that the cache files are out of date again.
#
# HINTING SETUP
#
# FONTCONFIG RENDERING SETUP
#
hinting_setup ();
#
# EMBEDDED BITMAP SETUP
#
embedded_bitmap_setup ();
rendering_options();
family_preference_config();
#
# FONTCONFIG CACHE
@ -349,22 +497,30 @@ exit 0;
sub usage {
print "Usage: fonts-config [option] ...\n";
print "-f, --force Force the update of all generated files even\n";
print " if it appears unnecessary according to the time stamps\n";
print "-q, --quiet Work silently, unless an error occurs.\n";
print "-v, --verbose Print some progress messages to standard output.\n";
print "-d, --debug Print a lot of debugging messages to standard output.\n";
print " --(no)ttcap generate TTCap entries.\n";
print " --(no)java generate font setup for Java 1.4.x and Java 1.5.x.\n";
print " --bcbwmax size maximum pixel size to use the byte code interpreter with\n";
print " black and white rendering.\n";
print " --(no)ebitmap whether to use embedded bitmaps or not.\n";
print " --ebitmaplang string the argument is a string which contains a list of colon\n";
print " separated languages, for example \"ja:ko:zh-CN\" \n";
print " which means \"use embedded bitmaps only for\n";
print " fonts supporting Japanese, Korean, or simplified Chinese.\n";
print " --version Display version and exit.\n";
print "-h, --help Display this help and exit.\n";
print "-f, --force Force the update of all generated files even\n";
print " if it appears unnecessary according to the time stamps\n";
print "-q, --quiet Work silently, unless an error occurs.\n";
print "-v, --verbose Print some progress messages to standard output.\n";
print "-d, --debug Print a lot of debugging messages to standard output.\n";
print " --force-hintstyle string Use hintfull, hintmedium, hintslight or hintnone \n";
print " --force-autohint Use autohint even for well hinted fonts.\n";
print " --force-bw Do not use antialias.\n";
print " --force-bw-monospace Do not use antialias for well instructed monospace fonts.\n";
print " --lcdfilter string Which lcdfilter to use: lcdnone, lcddefault, lcdlight,\n";
print " lcdlegacy\n";
print " --rgba string Which subpixel arangement your monitor use: none, rgb,\n";
print " vrgb, bgr, vbgr, unknown\n";
print " --(no)ebitmaps Whether to use embedded bitmaps or not.\n";
print " --ebitmapslang string Argument contains a list of colon\n";
print " separated languages, for example \"ja:ko:zh-CN\" \n";
print " which means \"use embedded bitmaps only for\n";
print " fonts supporting Japanese, Korean, or simplified Chinese.\n";
print " --(no)ttcap generate TTCap entries.\n";
print " --(no)java generate font setup for Java.\n";
print " --version Display version and exit.\n";
print "-h, --help Display this help and exit.\n";
print "\n";
print "See fonts-config(1) manual page for details.\n";
exit 1;
}
@ -375,6 +531,8 @@ sub usage {
#
sub get_option_defaults_from_sysconfig {
my $sysconfig_file = shift;
if (open (SYSCONFIG, "$sysconfig_file")) {
no strict "vars";
# print "reading defaults from $sysconfig.\n";
@ -387,16 +545,19 @@ sub get_option_defaults_from_sysconfig {
}
close (SYSCONFIG);
for my $i (keys %sysconfig_options) {
if (eval ("\$$i") =~ /yes/i) {
if (! defined eval("\$$i")) {
next;
}
if (eval ("\$$i") =~ /^yes$/i) {
eval("\$$sysconfig_options{$i}=1");
}
elsif (eval ("\$$i") =~ /no/i) {
elsif (eval ("\$$i") =~ /^no$/i) {
eval("\$$sysconfig_options{$i}=0");
}
elsif (eval ("\$$i") =~ /[0-9]+/) { # Type integer
elsif (eval ("\$$i") =~ /^[0-9]+$/) { # Type integer
eval("\$$sysconfig_options{$i}=\$$i");
}
elsif (eval ("\$$i") =~ /[-:a-zA-Z0-9]+/) { # Type string
elsif (eval ("\$$i") =~ /^[-:a-zA-Z0-9 ]+$/) { # Type string
eval("\$$sysconfig_options{$i}=\$$i");
}
else { # this case also occurs when the variable is the empty string!
@ -406,7 +567,7 @@ sub get_option_defaults_from_sysconfig {
return (0);
}
else {
# print "$sysconfig doesn't exist, using builtin defaults.\n";
print "--- NOTE: $sysconfig_file doesn't exist, using builtin defaults.\n";
return (1);
}
}
@ -846,10 +1007,7 @@ sub create_symbolic_links {
if ($file =~ /$forbidden_character/) {
my $file_new;
($file_new = $file) =~ s/$forbidden_character/_/g;
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "symlink ($file, $file_new)\n";
}
symlink ($file, $file_new);
my_symlink ($file, $file_new);
}
}
}
@ -859,119 +1017,222 @@ sub create_symbolic_links {
########################################################################
#
# hinting_setup -- amend fontconfig hinting setup in regard to fonts-config
# sysconfig variables or parameters
# rendering_options -- reflect fonts-config syconfig variables or
# parameters in fontconfig setting to control rendering
#
sub hinting_setup {
my $suse_hinting_file = "/usr/share/fonts-config/conf.avail/12-suse-hinting-bc.conf";
my $suse_hinting_template_file = "/usr/share/fonts-config/suse-hinting.conf.template";
my $suse_hinting = "";
my $suse_hinting_template = "";
sub rendering_options {
my $suse_rendering_file = "/usr/share/fonts-config/conf.avail/10-rendering-options.conf";
my $suse_rendering_template_file = "/usr/share/fonts-config/10-rendering-options.conf.template";
my $suse_rendering = "";
my $suse_rendering_template = "";
if (-f "$suse_hinting_template_file") {
open (TEMPLATE, "$suse_hinting_template_file") || die "can't open file $suse_hinting_template_file: $!";
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- Generating $suse_rendering_file ---\n";
}
if (-f "$suse_rendering_template_file") {
open (TEMPLATE, "$suse_rendering_template_file") || die "can't open file $suse_rendering_template_file: $!";
binmode TEMPLATE, ":utf8";
while (<TEMPLATE>) {
$ARG =~ s/_BYTECODE_BW_MAX_PIXEL_/$OPT_BCBWMAX/;
$suse_hinting_template .= $ARG;
if ($ARG =~ /_FORCE_HINTSTYLE_PLACEHOLDER_/) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- forcing hinstyle: $OPT_FHINTSTYLE\n";
}
$ARG =~ s/_FORCE_HINTSTYLE_PLACEHOLDER_/$OPT_FHINTSTYLE/;
$suse_rendering_template .= $ARG;
}
elsif ($ARG =~ /_FORCE_AUTOHINT_PLACEHOLDER_/) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- forcing autohint: $OPT_FAUTOHINT\n";
}
if ($OPT_FAUTOHINT) {
$ARG =~ s/_FORCE_AUTOHINT_PLACEHOLDER_/true/;
} else {
$ARG =~ s/_FORCE_AUTOHINT_PLACEHOLDER_/false/;
}
$suse_rendering_template .= $ARG;
}
elsif ($ARG =~ /_FORCE_BW_PLACEHOLDER_/) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- force black and white: $OPT_FBW\n";
}
if ($OPT_FBW) {
$ARG =~ s/_FORCE_BW_PLACEHOLDER_/true/;
} else {
$ARG =~ s/_FORCE_BW_PLACEHOLDER_/false/;
}
$suse_rendering_template .= $ARG;
}
elsif ($ARG =~ /_FORCE_BW_MONOSPACE_PLACEHOLDER_/) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- force black and white for good hinted monospace: $OPT_FBWMONOSPACE\n";
}
if ($OPT_FBWMONOSPACE) {
$ARG =~ s/_FORCE_BW_MONOSPACE_PLACEHOLDER_/true/;
} else {
$ARG =~ s/_FORCE_BW_MONOSPACE_PLACEHOLDER_/false/;
}
$suse_rendering_template .= $ARG;
}
elsif ($ARG =~ /_USE_LCDFILTER_PLACEHOLDER_/) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- lcdfilter: $OPT_LCDFILTER\n";
}
$ARG =~ s/_USE_LCDFILTER_PLACEHOLDER_/$OPT_LCDFILTER/;
$suse_rendering_template .= $ARG;
}
elsif ($ARG =~ /_USE_RGBA_PLACEHOLDER_/) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- subpixel arrangement: $OPT_RGBA\n";
}
$ARG =~ s/_USE_RGBA_PLACEHOLDER_/$OPT_RGBA/;
$suse_rendering_template .= $ARG;
}
elsif ($ARG =~ /_USE_EMBEDDED_BITMAPS_PLACEHOLDER_/) {
if (! $OPT_EBITMAP) {
$suse_rendering_template .= "\t<match target=\"font\">\n";
$suse_rendering_template .= "\t\t<edit name=\"embeddedbitmap\" mode=\"assign\">\n";
$suse_rendering_template .= "\t\t\t<bool>false</bool>\n";
$suse_rendering_template .= "\t\t</edit>\n";
$suse_rendering_template .= "\t</match>\n";
} elsif ($OPT_EBITMAP && $OPT_EBITMAP_LANG =~ /0/) {
$suse_rendering_template .= "\t<match target=\"font\">\n";
$suse_rendering_template .= "\t\t<edit name=\"embeddedbitmap\" mode=\"assign\">\n";
$suse_rendering_template .= "\t\t\t<bool>true</bool>\n";
$suse_rendering_template .= "\t\t</edit>\n";
$suse_rendering_template .= "\t</match>\n";
} else {
$suse_rendering_template .= "\t<match target=\"font\">\n";
$suse_rendering_template .= "\t\t<edit name=\"embeddedbitmap\" mode=\"assign\">\n";
$suse_rendering_template .= "\t\t\t<bool>false</bool>\n";
$suse_rendering_template .= "\t\t</edit>\n";
$suse_rendering_template .= "\t</match>\n";
my @languages = split (":", "$OPT_EBITMAP_LANG");
for my $i (@languages) {
$suse_rendering_template .= "\t<match target=\"font\">\n";
$suse_rendering_template .= "\t\t<test name=\"lang\" compare=\"contains\"><string>$i</string></test>\n";
$suse_rendering_template .= "\t\t<edit name=\"embeddedbitmap\" mode=\"assign\"><bool>true</bool></edit>\n";
$suse_rendering_template .= "\t</match>\n";
}
}
}
else {
$suse_rendering_template .= $ARG;
}
}
close (TEMPLATE);
if (open (CONF, "$suse_hinting_file")) {
if (open (CONF, "$suse_rendering_file")) {
while (<CONF>) {
$suse_hinting .= $ARG;
$suse_rendering .= $ARG;
}
close (CONF);
}
if ("$suse_hinting_template" eq "$suse_hinting") {
if ("$suse_rendering_template" eq "$suse_rendering") {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- $suse_hinting_file unchanged ---\n";
printf "--- $suse_rendering_file unchanged ---\n";
}
} else {
if ($VERBOSITY == $VERBOSITY_VERBOSE) {
print "Setting black and white rendering for selected fonts up to ${OPT_BCBWMAX}px in $suse_hinting_file\n";
print "Setting embedded bitmap usage in $suse_rendering_file\n";
}
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- writing $suse_hinting_file ---\n";
printf "--- writing $suse_rendering_file ---\n";
}
open (CONF, ">$suse_hinting_file") || die "can't open file $suse_hinting_file: $!";
print CONF $suse_hinting_template;
open (CONF, ">$suse_rendering_file") || die "can't open file $suse_rendering_file: $!";
print CONF $suse_rendering_template;
close (CONF);
}
} else {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "--- WARNING: $suse_rendering_template_file doesn't exist!\n";
}
}
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "---\n";
}
}
########################################################################
#
# embedded_bitmap_setup -- reflect fonts-config syconfig variables or
# parameters in embedded bitmaps in fontconfig setting
# family_preference_config -- reflect fonts-config syconfig variables or
# parameters in fontconfig setting to control rendering
#
sub embedded_bitmap_setup {
my $suse_bitmaps_file = "/usr/share/fonts-config/conf.avail/17-suse-bitmaps.conf";
my $suse_bitmaps_template_file = "/usr/share/fonts-config/suse-bitmaps.conf.template";
my $suse_bitmaps = "";
my $suse_bitmaps_template = "";
sub family_preference_list {
my ($family, $prefered_families) = @_;
my $cfg;
my @families = split(/:/, $prefered_families);
if (! $prefered_families) {
return "";
}
if (-f "$suse_bitmaps_template_file") {
open (TEMPLATE, "$suse_bitmaps_template_file") || die "can't open file $suse_bitmaps_template_file: $!";
binmode TEMPLATE, ":utf8";
while (<TEMPLATE>) {
if ($ARG !~ /_USE_EMBEDDED_BITMAPS_PLACEHOLDER_/) {
$suse_bitmaps_template .= $ARG;
}
else {
if (! $OPT_EBITMAP) {
$suse_bitmaps_template .= " <match target=\"font\">\n";
$suse_bitmaps_template .= " <edit name=\"embeddedbitmap\" mode=\"assign\">\n";
$suse_bitmaps_template .= " <bool>false</bool>\n";
$suse_bitmaps_template .= " </edit>\n";
$suse_bitmaps_template .= " </match>\n";
} elsif ($OPT_EBITMAP && $OPT_EBITMAP_LANG =~ /0/) {
$suse_bitmaps_template .= " <match target=\"font\">\n";
$suse_bitmaps_template .= " <edit name=\"embeddedbitmap\" mode=\"assign\">\n";
$suse_bitmaps_template .= " <bool>true</bool>\n";
$suse_bitmaps_template .= " </edit>\n";
$suse_bitmaps_template .= " </match>\n";
} else {
$suse_bitmaps_template .= " <match target=\"font\">\n";
$suse_bitmaps_template .= " <edit name=\"embeddedbitmap\" mode=\"assign\">\n";
$suse_bitmaps_template .= " <bool>false</bool>\n";
$suse_bitmaps_template .= " </edit>\n";
$suse_bitmaps_template .= " </match>\n";
my @languages = split (":", "$OPT_EBITMAP_LANG");
for my $i (@languages) {
$suse_bitmaps_template .= " <match target=\"font\">\n";
$suse_bitmaps_template .= " <test name=\"lang\" compare=\"contains\"><string>$i</string></test>\n";
$suse_bitmaps_template .= " <edit name=\"embeddedbitmap\" mode=\"assign\"><bool>true</bool></edit>\n";
$suse_bitmaps_template .= " </match>\n";
}
}
}
}
close (TEMPLATE);
if (open (CONF, "$suse_bitmaps_file")) {
while (<CONF>) {
$suse_bitmaps .= $ARG;
}
close (CONF);
}
if ("$suse_bitmaps_template" eq "$suse_bitmaps") {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- $suse_bitmaps_file unchanged ---\n";
}
} else {
if ($VERBOSITY == $VERBOSITY_VERBOSE) {
print "Setting embedded bitmap usage in $suse_bitmaps_file\n";
}
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- writing $suse_bitmaps_file ---\n";
}
open (CONF, ">$suse_bitmaps_file") || die "can't open file $suse_bitmaps_file: $!";
print CONF $suse_bitmaps_template;
close (CONF);
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "--- Prefered $family families: ";
}
$cfg .= " <alias>\n";
$cfg .= " <family>$family</family>\n";
$cfg .= " <prefer>\n";
for my $f (@families) {
$cfg .= " <family>$f</family>\n";
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "[$f] ";
}
}
$cfg .= " </prefer>\n";
$cfg .= " </alias>\n";
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "\n";
}
return $cfg;
}
sub family_preference_config {
my $suse_pref_file = "/usr/share/fonts-config/conf.avail/58-family-prefer-local.conf";
my $metric_file = "/usr/share/fontconfig/conf.avail/30-metric-aliases.conf";
my $bw_metric_file = "/usr/share/fonts-config/conf.avail/31-metric-aliases-bw.conf";
my $metric_symlink = "/etc/fonts/conf.d/30-metric-aliases.conf";
my $bw_metric_symlink = "/etc/fonts/conf.d/31-metric-aliases-bw.conf";
my $suse_pref = "";
my $edit_options;
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- Generating $suse_pref_file ---\n";
}
if ($OPT_SEARCH_METRIC_COMPATIBLE) {
my_symlink($metric_file, $metric_symlink);
my_symlink($bw_metric_file, $bw_metric_symlink);
} else {
my_remove_symlink($metric_symlink);
my_remove_symlink($bw_metric_symlink);
}
$suse_pref .= "<?xml version=\"1.0\"?>\n";
$suse_pref .= "<!DOCTYPE fontconfig SYSTEM \"fonts.dtd\">\n";
$suse_pref .= "\n";
$suse_pref .= "<!-- DO NOT EDIT; this is a generated file -->\n";
$suse_pref .= "<!-- modify /etc/sysconfig/fonts-config && run fonts-config instead -->\n";
$suse_pref .= "\n";
$suse_pref .= "<fontconfig>\n";
$suse_pref .= family_preference_list("sans-serif", $OPT_SANS_FAMILIES);
$suse_pref .= family_preference_list("serif", $OPT_SERIF_FAMILIES);
$suse_pref .= family_preference_list("monospace", $OPT_MONO_FAMILIES);
$suse_pref .= "</fontconfig>\n";
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "--- writing $suse_pref_file ---\n";
print "---\n";
}
open (CONF, ">$suse_pref_file") || die "can't open file $suse_pref_file: $!";
print CONF $suse_pref;
close (CONF);
}
########################################################################
@ -995,7 +1256,7 @@ sub run_fccache {
print "Creating$bits_print cache files for fontconfig ";
}
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "--- creating$bits_print cache files for fontconfig ";
print "--- Creating$bits_print cache files for fontconfig ";
}
if ($VERBOSITY >= $VERBOSITY_VERBOSE) {
$command .= " --verbose ";
@ -1053,7 +1314,7 @@ sub run_fp_rehash {
print "It is not a local display, do not reread X font databases for now\n";
}
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "--- WARNING: do not run 'xset fp rehash', no local display detected\n";
print "--- NOTE: do not run 'xset fp rehash', no local display detected\n";
}
}
}
@ -1163,7 +1424,7 @@ sub generate_java_font_setup {
printf "Generating java font setup ...\n";
}
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
printf "--- generating java font setup\n";
printf "--- Generating java font setup\n";
}
my ($font, $file);
@ -1370,7 +1631,7 @@ sub select_java_font {
#
sub reload_xfs_config {
my $pids = `/sbin/pidof xfs`;
my $pids = `ps -C xfs -o pid= | sed 's:[ \t]::g'`;
$pids =~ s/\n//;
if ($pids) {
@ -1400,11 +1661,59 @@ sub reload_xfs_config {
sub my_system {
my ($command) = @_;
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "executing: $command\n";
print "--- executing: $command\n";
}
return system ($command);
}
sub my_symlink {
my ($file, $link) = @_;
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "--- symlink: $link -> $file .. ";
}
if (-e $link) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "does exist yet\n";
}
return;
}
if (symlink($file, $link)) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "success\n";
}
} else {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "failure\n";
} else {
print "--- WARNING: can't create $link -> $file symlink\n"
}
}
}
sub my_remove_symlink {
my ($link) = @_;
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "--- remove symlink: $link .. ";
}
if (! -l $link) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "does not exist\n";
}
return;
}
if (unlink $link) {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "success\n";
}
} else {
if ($VERBOSITY >= $VERBOSITY_DEBUG) {
print "failure\n";
} else {
print "--- WARNING: can't remove $link symlink\n"
}
}
}
sub search_executable {
for my $file (@_) {
if (-x $file) {

View File

@ -1,3 +1,51 @@
-------------------------------------------------------------------
Fri Feb 28 07:34:57 UTC 2014 - pgajdos@suse.com
- fix version in fonts-config script
-------------------------------------------------------------------
Wed Feb 26 11:44:23 UTC 2014 - pgajdos@suse.com
- updated to 20140226:
* FORCE_{SANS,SERIF,MONO}_PREFERENCE replaced by
SEARCH_METRIC_COMPATIBLE
-------------------------------------------------------------------
Tue Feb 25 10:05:36 UTC 2014 - pgajdos@suse.com
- updated to 20140225:
* introduced FORCE_{SANS,SERIF,MONO}_PREFERENCE
-------------------------------------------------------------------
Mon Feb 24 09:43:34 UTC 2014 - pgajdos@suse.com
- updated to 20140224:
* add example of family preference: CFF fonts
-------------------------------------------------------------------
Fri Feb 21 14:36:24 UTC 2014 - pgajdos@suse.com
- updated to 20140222:
* don't use autohinter for CFF files
* hinstlight for CFF files
-------------------------------------------------------------------
Fri Feb 21 10:15:23 UTC 2014 - pgajdos@suse.com
- updated to 20140221
* added 31-metric-aliases-bw.conf
-------------------------------------------------------------------
Thu Feb 13 13:17:33 UTC 2014 - pgajdos@suse.com
- updated to 20140219
- revorked package, fontconfig configuration based on infinality
one
- added patches:
* fontconfig-infinality-main.patch (remove parts of original
52-infinality.conf)
-------------------------------------------------------------------
Thu Jan 30 12:38:10 UTC 2014 - pgajdos@suse.com

View File

@ -16,22 +16,35 @@
#
%define infinality_srcver 1-20130104_1
%define infinality_name fontconfig-infinality
Name: fonts-config
Version: 20131102
Version: 20140226
Release: 0
Summary: Configures Fonts for X Windows and other applications
License: GPL-2.0+
License: GPL-2.0+ and MIT
Group: System/X11/Fonts
# MIT for infinality
Source0: fonts-config
Source1: sysconfig.fonts-config
Source2: fontconfig.SuSE.properties.template
Source3: suse-hinting.conf.template
Source4: suse-bitmaps.conf.template
Source3: %{infinality_name}-%{infinality_srcver}.tar.bz2
Source4: 10-rendering-options.conf.template
Source5: 11-base-rendering.conf
Source6: empty.conf
Source7: 12-tt-monospace-rendering.conf
Source8: 13-selective-rendering-ipa.conf
Source9: 49-family-default.conf
Source10: 60-family-prefer.conf
Source11: 70-reject.conf
Source12: 31-metric-aliases-bw.conf
Patch0: fontconfig-infinality-generate-tt-groups.patch
BuildRequires: fontconfig
BuildRequires: fontpackages-devel
Requires(pre): %fillup_prereq
%reconfigure_fonts_prereq
Requires: fontconfig
Requires: gawk
Requires: perl(English)
Recommends: mkfontscale
Recommends: mkfontdir
@ -47,30 +60,58 @@ fonts-config directly, which is mainly useful to debug it (use
--debug flag).
%prep
%setup -cT -a 3 -n %{infinality_name}-%{infinality_srcver}
%patch0
%build
cd infinality/conf.src/generate60
./generate60.sh
mv 60-group-tt-fonts.conf ../../../10-group-tt-hinted-fonts.conf
mv 60-group-non-tt-fonts.conf ../../../10-group-tt-non-hinted-fonts.conf
cd ../../..
# empty configuration now, should be filled after fonts-config call
cp %{SOURCE6} 10-rendering-options.conf
# empty configuration now, can be filled after fonts-config call
cp %{SOURCE6} 58-family-prefer-local.conf
mv infinality/conf.src/80-selective-rendering-inf-win-lin.conf 13-selective-rendering.conf
mv infinality/conf.src/21-aliases-wine-linux.conf 61-wine-aliases.conf
cp -a %{SOURCE5} %{SOURCE7} %{SOURCE8} %{SOURCE9} %{SOURCE10} %{SOURCE11} %{SOURCE12} .
%install
mkdir -p %{buildroot}/sbin/conf.d
mkdir -p %{buildroot}%{_prefix}/sbin
mkdir -p %{buildroot}%{_datadir}/fonts-config
mkdir -p %{buildroot}%{_datadir}/%{name}
mkdir -p %{buildroot}/%{_mandir}/man1
mkdir -p %{buildroot}/%{_docdir}/%{name}/infinality
mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates
install -m 755 %{SOURCE0} %{buildroot}%{_prefix}/sbin
install -m 644 %{SOURCE2} %{SOURCE3} %{SOURCE4} %{buildroot}%{_datadir}/fonts-config
pod2man --section 1 --center=" " %{SOURCE0} > \
%{buildroot}/%{_mandir}/man1/fonts-config.1
install -m 644 %{SOURCE1} \
%{buildroot}%{_localstatedir}/adm/fillup-templates/
install -m 644 %{SOURCE2} %{buildroot}%{_datadir}/fonts-config
install -m 644 infinality/README infinality/LICENSE %{buildroot}%{_docdir}/%{name}/infinality
install -m 644 infinality/conf.src/generate60/60-group-non-tt-fonts.list %{buildroot}%{_docdir}/%{name}/infinality/good-hinted-tt-fonts.list
install -m 644 infinality/conf.src/generate60/60-group-tt-fonts.list %{buildroot}%{_docdir}/%{name}/infinality/non-hinted-tt-fonts.list
pod2man --section 1 --center=" " %{SOURCE0} > \
%{buildroot}/%{_mandir}/man1/fonts-config.1
#
install -m 644 %{SOURCE4} %{buildroot}%{_datadir}/%{name}
mkdir %{buildroot}%{_datadir}/%{name}/conf.avail/
sed -e's/_BYTECODE_BW_MAX_PIXEL_/0/' %{SOURCE3} \
> %{buildroot}%{_datadir}/%{name}/conf.avail/12-suse-hinting-bc.conf
sed -e's/_USE_EMBEDDED_BITMAPS_PLACEHOLDER_//' %{SOURCE4} \
> %{buildroot}%{_datadir}/%{name}/conf.avail/17-suse-bitmaps.conf
#
%link_avail_to_system_fontsconf 12-suse-hinting-bc.conf
%link_avail_to_system_fontsconf 17-suse-bitmaps.conf
for conf in 10-rendering-options.conf \
10-group-tt-hinted-fonts.conf \
10-group-tt-non-hinted-fonts.conf \
11-base-rendering.conf \
12-tt-monospace-rendering.conf \
13-selective-rendering.conf \
13-selective-rendering-ipa.conf \
31-metric-aliases-bw.conf \
49-family-default.conf \
58-family-prefer-local.conf \
60-family-prefer.conf \
61-wine-aliases.conf \
70-reject.conf; do \
install -m 644 $conf %{buildroot}%{_datadir}/%{name}/conf.avail/
%link_avail_to_system_fontsconf $conf
done
%post
%{fillup_only -n fonts-config}
@ -90,8 +131,9 @@ exit 0
%{_sbindir}/fonts-config
%{_datadir}/fonts-config/*.template
%{_mandir}/man1/fonts-config.1.gz
%{_docdir}/%{name}
%{_localstatedir}/adm/fillup-templates/sysconfig.fonts-config
%files_fontsconf_file -l 12-suse-hinting-bc.conf
%files_fontsconf_file -l 17-suse-bitmaps.conf
%{_fontsconfavaildir}/*.conf
%{_fontsconfddir}/*.conf
%changelog

View File

@ -1,84 +0,0 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Generated by SuSEconfig.fonts, don't edit, your changes will get lost. -->
<!-- Edit /etc/sysconfig/fonts-config instead. -->
<!-- Or put rules into your personal config file ~/.fonts.conf. -->
<!-- ************************************************************ -->
<!-- Bitmap related stuff -->
<!-- ************************************************************ -->
<!--
As rendering of outlines is often not perfect at small sizes, some
TrueType or OpenType fonts contain "embedded" bitmaps for small sizes.
This is very common in CJK fonts.
(By the way, apparently there are some western fonts which have
embedded bitmaps as well. Recently I found that "Courier New"
also has embedded bitmaps. But, for reasons unknown to me,
the embedded bitmaps in "Courier New" are not used, even when
embedded bitmaps are unconditionally enabled for all fonts.
On top of that, the embedded bitmaps in "Courier New" appear
to be of far lower quality than the results achieved when rendering
"Courier New" with the byte code interpreter enabled and the
antialiasing turned off. I.e. the existance of these low quality
embedded bitmaps in "Courier New" is quite mysterious).
Using embedded bitmaps usually gives clearly readable results as the bitmaps
are handtuned for good readability and do not suffer from imperfections
of the rendering algorithms.
On the other hand, anti-aliasing is only possible when the outlines
are used.
Often, using the outlines with anti-aliasing looks more "beautiful".
But using the embedded bitmaps is often better readable.
It is a matter of taste, decide by yourself which style you prefer.
To use embedded bitmaps in TrueType fonts always when available
put the following rule in your personal ~/.fonts.conf file:
<match target="font">
<edit name="embeddedbitmap">
<bool>true</bool>
</edit>
</match>
To avoid using the embedded bitmaps and always use the outlines,
put the following rule in your personal ~/.fonts.conf file:
<match target="font">
<edit name="embeddedbitmap">
<bool>false</bool>
</edit>
</match>
It is also possible to enable embedded bitmaps only for fonts
which support certain languages. For example, if you want to
enable embedded bitmaps only for Japanese, Chinese, and Korean
fonts, put the following rule in your personal ~/.fonts.conf file:
<match target="font">
<edit name="embeddedbitmap">
<bool>false</bool>
</edit>
</match>
<match target="font">
<test name="lang" compare="contains">
<string>ja</string>
<string>zh</string>
<string>ko</string>
</test>
<edit name="embeddedbitmap" mode="assign">
<bool>true</bool>
</edit>
</match>
-->
_USE_EMBEDDED_BITMAPS_PLACEHOLDER_
</fontconfig>

View File

@ -1,156 +0,0 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Generated by SuSEconfig.fonts, don't edit, your changes will get lost. -->
<!-- Edit /etc/sysconfig/fonts-config instead. -->
<!-- Or put rules into your personal config file ~/.fonts.conf. -->
<!-- ************************************************************ -->
<!-- Hinting and antialiasing -->
<!-- ************************************************************ -->
<!--
The following rule sets up black and white rendering with
the byte code interpreter for a small list of fonts which
are known to have good byte code and give bitmap quality
results at small sizes.
The pixelsize limit is set to '0' though, which effectively
disables this rule by default because most users don't like
that bitmap look and feel.
If you like a bitmap look and feel of your desktop,
edit BYTECODE_BW_MAX_PIXEL sysconfig variable - replace '0'
with non-zero pixelsize limit. Using '18' as the pixelsize
limit is a good choice if you have the fonts in this list installed
and like a bitmap look and feel.
-->
<match target="font">
<test name="family"><string>Andale Mono</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Arial</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Comic Sans MS</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Georgia</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Impact</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Trebuchet MS</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Verdana</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Courier New</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Times New Roman</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Tahoma</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Webdings</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Albany AMT</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Thorndale AMT</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Cumberland AMT</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Andale Sans</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Andy MT</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Bell MT</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Monotype Sorts</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Lucida Sans Typewriter</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Lucida Sans</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
<match target="font">
<test name="family"><string>Lucida Bright</string></test>
<test name="pixelsize" compare="less_eq"><double>_BYTECODE_BW_MAX_PIXEL_</double></test>
<edit name="autohint"><bool>false</bool></edit>
<edit name="antialias"><bool>false</bool></edit>
</match>
</fontconfig>

View File

@ -3,48 +3,87 @@
## Type: integer
## Default: quiet
#
# type of output (quiet=0, verbose=1, debug=256)
# Type of output (quiet=0, verbose=1, debug=256) while reconfiguring
# fonts.
#
VERBOSITY="0"
## Path: Desktop
## Description: Display font configuration
## Type: yesno
## Default: yes
## Type: string
## Default: none
#
# generate TTCap entries in fonts.dir, which can be used by
# xtt/freetype font module
# Prefered common hinting style.
#
# By default, hinslight is prefered for autohinter and hintfull for
# BCI. You can enforce one hinstyle here. This value is not final
# though, hinstyle can be overriden by other option in this file
# (e. g. FORCE_BW_MONOSPACE => hintfull)
#
GENERATE_TTCAP_ENTRIES="yes"
# Possible values: none, hintnone, hintslight, hintmedium, hintfull
#
FORCE_HINTSTYLE="none"
## Path: Desktop
## Description: Display font configuration
## Type: yesno
## Default: yes
## Default: no
#
# generate font setup for Java 1.4.x and Java 1.5.x
# Force autohint even for fonts, which are said to have good
# hinting instructions.
#
GENERATE_JAVA_FONT_SETUP="yes"
FORCE_AUTOHINT="no"
## Path: Desktop
## Description: Display font configuration
## Type: integer
## Default: 0
## Type: yesno
## Default: no
#
# Fonts which have high quality byte code interpreter instructions
# can look very good in small sizes when rendered in black and white
# (no anti-aliasing!) using the byte code interpreter (not the autohinter!).
# The results look as good as high quality bitmap fonts.
# Force black and white rendering. Fonts will not get smoothed with
# the benefit of high contrast betwen font and background.
#
# If you want to use this rendering style by default for all fonts
# which are known to have good byte code instructions (these are the
# fonts from the agfa-fonts package and the Microsoft webfonts), enter
# an integer number greater than 0 here. For example, if you enter "18",
# black and white rendering using the byte code interpreter will be used
# for pixel sizes <= 18, for larger sizes the autohinter and anti-aliasing
# will be used. You can disable this by entering "0".
FORCE_BW="no"
## Path: Desktop
## Description: Display font configuration
## Type: yesno
## Default: no
#
BYTECODE_BW_MAX_PIXEL="0"
# Force black and white rendering for well hinted monospaced fonts.
# That makes look them in bitmap quality.
#
FORCE_BW_MONOSPACE="no"
## Path: Desktop
## Description: Display font configuration
## Type: string
## Default: lcdnone
#
# LCD filter.
#
# I is mandatory to set to something else than 'lcdnone'
# when you want subpixel rendering. lcddefault seems to
# be most used value here.
#
# Possible values: lcdnone, lcddefault, lcdlight, lcdlegacy
#
USE_LCDFILTER="lcdnone"
## Path: Desktop
## Description: Display font configuration
## Type: string
## Default: lcdnone
#
# Subpixel arrangement for your monitor and its rotation.
#
# Possible values: none, rgb, vrgb, bgr, vbgr, unknown
#
USE_RGBA="none"
## Path: Desktop
## Description: Display font configuration
## Type: yesno
## Default: no
## Path: Desktop
## Description: Display font configuration
@ -83,7 +122,88 @@ USE_EMBEDDED_BITMAPS="yes"
#
EMBEDDED_BITMAPS_LANGUAGES="ja:ko:zh-CN:zh-TW:zh-HK:zh-SG"
## Path: Desktop
## Description: Display font configuration
## Type: string
## Default: ""
#
# Colon-separated list of prefered sans families. Most prefered family first.
#
# Empty string means 'system default'. Following example will convince your
# system to use CFF fonts (if at least one of them installed). See
# http://fontinfo.opensuse.org/fontformats.html for details.
#
# PREFER_SANS_FAMILIES="Source Sans Pro:CMU Sans Serif:CMU Bright:Linux Biolinum O:Latin Modern Sans"
#
PREFER_SANS_FAMILIES=""
## Path: Desktop
## Description: Display font configuration
## Type: string
## Default: ""
#
# Colon-separated list of prefered serif families. Most prefered family first.
#
# Empty string means 'system default'. Following example will convince your
# system to use CFF fonts (if at least one of them installed). See
# http://fontinfo.opensuse.org/fontformats.html for details.
#
# PREFER_SERIF_FAMILIES="CMU Serif:CMU Serif Extra:Linux Libertine O:Crimson:Old Standard:Rachana:Latin Modern Roman:Latin Modern Roman"
#
PREFER_SERIF_FAMILIES=""
## Path: Desktop
## Description: Display font configuration
## Type: string
## Default: ""
#
# Colon-separated list of prefered sans families. Most prefered family first.
#
# Empty string means 'system default'. Following example will convince your
# system to use CFF fonts (if at least one of them installed). See
# http://fontinfo.opensuse.org/fontformats.html for details.
#
# PREFER_MONO_FAMILIES="Source Code Pro:CMU Typewriter Text:Linux Libertine Mono O:Tempora:Latin Modern Mono:Latin Modern Mono Light"
#
PREFER_MONO_FAMILIES=""
## Path: Desktop
## Description: Display font configuration
## Type: yesno
## Default: no
#
# Do not metric substitutions.
#
# When set to yes, value of PREFER_*_FAMILIES can be overriden when document
# or GUI is requesting metric compatible font as defined
# in /etc/fonts/conf.d/30-metric-aliases.conf,
# e. g. request to Courier New will get Liberation Mono even if
# other family is explicitely prefered by PREFER_MONO_FAMILIES
# (hint, that's because binding="same" in that fontconfig)
#
# You can change this default behaviour with "no", but be careful with that.
# Metric compatibility means that every glyph, say 'A', has the same width
# and height in both fonts, so document should have same line wraps for
# example.
#
SEARCH_METRIC_COMPATIBLE="yes"
## Path: Desktop
## Description: Display font configuration
## Type: yesno
## Default: yes
#
# generate TTCap entries in fonts.dir, which can be used by
# xtt/freetype font module
#
GENERATE_TTCAP_ENTRIES="yes"
## Path: Desktop
## Description: Display font configuration
## Type: yesno
## Default: yes
#
# generate font setup for Java 1.4.x and Java 1.5.x
#
GENERATE_JAVA_FONT_SETUP="yes"