Difference between revisions of "Improve Font Rendering"
Views
Actions
Namespaces
Variants
Tools
m (Fixed minor spelling error "Appearence" to "Appearance" in step 5) Tags: Mobile web edit Mobile edit |
m (Added option to enable infinality mode in freetype2 properties, removed autohint settings and system-ui font, cleaned up formatting) Tags: Mobile web edit Mobile edit |
||
Line 2: | Line 2: | ||
__TOC__ | __TOC__ | ||
<translate> | <translate> | ||
<!--T:1--> | |||
==How to improve font rendering with your installed fonts== | |||
<!--T:2--> | <!--T:2--> | ||
Line 11: | Line 13: | ||
''1. Create the global fontconfig setting file /etc/fonts/local.conf'' | ''1. Create the global fontconfig setting file /etc/fonts/local.conf'' | ||
<!--T:4--> | |||
{{UserCmd|command=sudo nano /etc/fonts/local.conf}} | {{UserCmd|command=sudo nano /etc/fonts/local.conf}} | ||
<!--T:5--> | <!--T:5--> | ||
Paste the following content in the file | Paste the following content in the file | ||
<!--T:6--> | |||
<?xml version="1.0"?> | <?xml version="1.0"?> | ||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> | <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> | ||
<fontconfig> | <fontconfig> | ||
<match target="font"> | <match target="font"> | ||
<edit name=" | <edit name="antialias" mode="assign"> | ||
<bool> | <bool>true</bool> | ||
</edit> | </edit> | ||
<edit name="hinting" mode="assign"> | <edit name="hinting" mode="assign"> | ||
<bool>true</bool> | <bool>true</bool> | ||
< | <edit mode="assign" name="rgba"> | ||
<const>rgb</const> | |||
< | |||
</edit> | </edit> | ||
<edit mode="assign" name="hintstyle"> | <edit mode="assign" name="hintstyle"> | ||
<const>hintslight</const> | <const>hintslight</const> | ||
</edit> | </edit> | ||
<edit mode="assign" name="lcdfilter"> | <edit mode="assign" name="lcdfilter"> | ||
Line 66: | Line 64: | ||
If the following is not already present, paste at the end of the file or edit existing values: | If the following is not already present, paste at the end of the file or edit existing values: | ||
<!--T:13--> | |||
Xft.antialias: 1 | Xft.antialias: 1 | ||
Xft.hinting: 1 | Xft.hinting: 1 | ||
Xft.rgba: rgb | Xft.rgba: rgb | ||
Xft.hintstyle: hintslight | Xft.hintstyle: hintslight | ||
Line 90: | Line 87: | ||
''6. Create symbolic links with some available presets from /usr/share/fontconfig/conf.avail/ to /etc/fonts/conf.d/'' | ''6. Create symbolic links with some available presets from /usr/share/fontconfig/conf.avail/ to /etc/fonts/conf.d/'' | ||
<!--T:18--> | |||
{{UserCmd|command=sudo ln -s /usr/share/fontconfig/conf.avail/10-sub-pixel-rgb.conf /etc/fonts/conf.d/}} | {{UserCmd|command=sudo ln -s /usr/share/fontconfig/conf.avail/10-sub-pixel-rgb.conf /etc/fonts/conf.d/}} | ||
<!--T:19--> | |||
{{UserCmd|command=sudo ln -s /usr/share/fontconfig/conf.avail/ | {{UserCmd|command=sudo ln -s /usr/share/fontconfig/conf.avail/10-hinting-slight.conf /etc/fonts/conf.d/}} | ||
<!--T:20--> | |||
{{UserCmd|command=sudo ln -s /usr/share/fontconfig/conf.avail/11-lcdfilter-default.conf /etc/fonts/conf.d/}} | |||
<!--T: | |||
<!--T:21--> | |||
''7. Set preferred serif, sans-serif and monospace fonts (optional)'' | ''7. Set preferred serif, sans-serif and monospace fonts (optional)'' | ||
<!--T: | <!--T:22--> | ||
Create local fontconfig folder and setting file | Create local fontconfig folder and setting file | ||
<!--T:23--> | |||
{{UserCmd|command=mkdir -p ~/.config/fontconfig/}} | {{UserCmd|command=mkdir -p ~/.config/fontconfig/}} | ||
<!--T:24--> | |||
{{UserCmd|command=nano ~/.config/fontconfig/fonts.conf}} | {{UserCmd|command=nano ~/.config/fontconfig/fonts.conf}} | ||
<!--T: | <!--T:25--> | ||
Paste the following content in the file | Paste the following content in the file | ||
<!--T:26--> | |||
<?xml version="1.0"?> | <?xml version="1.0"?> | ||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> | <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> | ||
<fontconfig> | <fontconfig> | ||
Line 144: | Line 144: | ||
<prefer> | <prefer> | ||
<family>Liberation Mono</family> | <family>Liberation Mono</family> | ||
</prefer> | </prefer> | ||
</alias> | </alias> | ||
Line 156: | Line 150: | ||
<!--T: | <!--T:27--> | ||
''8. Finally | ''8. Finally enable freetype2 infinality mode and reboot your computer.'' | ||
<!--T:28--> | |||
add line to end of freetype2 config file and then rebuild fontconfig cache | |||
<!--T:29--> | |||
{{UserCmd| command=sudo nano /etc/profile.d/freetype2.sh}} | |||
<!--T:30--> | |||
{{UserCmd| command=export FREETYPE_PROPERTIES="truetype:interpreter-version=38"}} | |||
<!--T:31--> | |||
{{UserCmd|command=sudo fc-cache -fv}} | {{UserCmd|command=sudo fc-cache -fv}} | ||
<!--T:32--> | |||
==See Also== | |||
<!--T: | <!--T:33--> | ||
[https://wiki.archlinux.org/index.php/Font_Configuration The Arch Wiki] | [https://wiki.archlinux.org/index.php/Font_Configuration The Arch Wiki] | ||
</translate> | </translate> | ||
[[Category:Contents Page{{#translation:}}]] | [[Category:Contents Page{{#translation:}}]] |
Revision as of 03:36, 23 December 2021
How to improve font rendering with your installed fonts
A little configuration maybe required to render the fonts in an optimal manner. Follow the steps illustrated below.
1. Create the global fontconfig setting file /etc/fonts/local.conf
Paste the following content in the file
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <match target="font"> <edit name="antialias" mode="assign"> <bool>true</bool> </edit> <edit name="hinting" mode="assign"> <bool>true</bool> <edit mode="assign" name="rgba"> <const>rgb</const> </edit> <edit mode="assign" name="hintstyle"> <const>hintslight</const> </edit> <edit mode="assign" name="lcdfilter"> <const>lcddefault</const> </edit> </match> </fontconfig>
After that save the file.
2. Create backup of ~/.Xresources file:
If the .Xresources file has not been already created and you get the error
"cp: cannot stat ‘~/.Xresources’: No such file or directory", then skip to step No. 3.
3. Open/Create ~/.Xresources file in text editor:
If the following is not already present, paste at the end of the file or edit existing values:
Xft.antialias: 1 Xft.hinting: 1 Xft.rgba: rgb Xft.hintstyle: hintslight Xft.lcdfilter: lcddefault
Save changes to the file.
4. Run the following command in terminal:
5. Make sure that Anti aliasing is On, Hinting is set to Slight and RGBA (subpixel) order is set to rgb in System Settings (Appearance).
6. Create symbolic links with some available presets from /usr/share/fontconfig/conf.avail/ to /etc/fonts/conf.d/
7. Set preferred serif, sans-serif and monospace fonts (optional)
Create local fontconfig folder and setting file
Paste the following content in the file
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <alias> <family>serif</family> <prefer> <family>Liberation Serif</family> </prefer> </alias> <alias> <family>sans-serif</family> <prefer> <family>Liberation Sans</family> </prefer> </alias> <alias> <family>sans</family> <prefer> <family>Liberation Sans</family> </prefer> </alias> <alias> <family>monospace</family> <prefer> <family>Liberation Mono</family> </prefer> </alias> <alias> <family>mono</family> <prefer> <family>Liberation Mono</family> </prefer> </alias> </fontconfig>
8. Finally enable freetype2 infinality mode and reboot your computer.
add line to end of freetype2 config file and then rebuild fontconfig cache