Accepting request 224056 from home:pgajdos
- 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/224056 OBS-URL: https://build.opensuse.org/package/show/M17N/fonts-config?expand=0&rev=38
This commit is contained in:
parent
4fb81b60dc
commit
9ede7a3f35
62
10-rendering-options.conf.template
Normal file
62
10-rendering-options.conf.template
Normal 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
123
11-base-rendering.conf
Normal 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>
|
||||
|
26
12-tt-monospace-rendering.conf
Normal file
26
12-tt-monospace-rendering.conf
Normal 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>
|
81
13-selective-rendering-ipa.conf
Normal file
81
13-selective-rendering-ipa.conf
Normal 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
46
31-metric-aliases-bw.conf
Normal 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
335
49-family-default.conf
Normal 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
201
60-family-prefer.conf
Normal 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
58
70-reject.conf
Normal 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
5
empty.conf
Normal file
@ -0,0 +1,5 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
<fontconfig>
|
||||
|
||||
</fontconfig>
|
3
fontconfig-infinality-1-20130104_1.tar.bz2
Normal file
3
fontconfig-infinality-1-20130104_1.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:07c79d4383a62f100e4c690c212f575670a9c026b3e782b31c44885e41efa5ba
|
||||
size 22222
|
42
fontconfig-infinality-generate-tt-groups.patch
Normal file
42
fontconfig-infinality-generate-tt-groups.patch
Normal 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
|
669
fonts-config
669
fonts-config
@ -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
|
||||
|
||||
@ -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) {
|
||||
|
@ -1,3 +1,46 @@
|
||||
-------------------------------------------------------------------
|
||||
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
|
||||
|
||||
|
@ -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
|
||||
|
@ -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>
|
@ -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>
|
@ -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"
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user