Differences between revisions 3 and 76 (spanning 73 versions)
Revision 3 as of 2007-04-23 00:15:24
Size: 868
Editor: ?PeteBoyd
Comment:
Revision 76 as of 2017-01-29 05:47:24
Size: 9013
Editor: ?hadrons123
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
See all the TTF fonts included in Debian at
[http://www.miriamruiz.es/debfonts/].
#language en
<<TableOfContents()>>
Line 4: Line 4:
email lists: [http://lists.alioth.debian.org/mailman/listinfo/cjkunifonts-devel CJKUnifonts-devel] [http://lists.alioth.debian.org/mailman/listinfo/cjkunifonts-hakkaim CJKUnifonts-HakkaIM] [http://lists.alioth.debian.org/mailman/listinfo/cjkunifonts-minnanim CJKUnifonts-MinnanIM] [http://lists.alioth.debian.org/mailman/listinfo/freefont-devel Freefont-devel] [http://lists.alioth.debian.org/mailman/listinfo/pkg-fonts-bugs Pkg-fonts-bugs] [http://lists.alioth.debian.org/mailman/listinfo/pkg-fonts-commits Pkg-fonts-commits] [http://lists.alioth.debian.org/mailman/listinfo/pkg-fonts-devel Pkg-fonts-devel] == Adding fonts ==
Line 6: Line 6:
Fonts and Debian: [http://www.miriamruiz.es/debfonts/ existing] and [http://wiki.debian.org/Fonts/Missing missing] Fonts can be added to Debian by installing the appropriate package; fonts are specified in the [[DebianPkg:stable/fonts/|“Fonts” section]].
Line 8: Line 8:
Font related pages: Note:
 * For most uses, you’ll want TrueType (TTF) and !OpenType (OTF) fonts – these packages start with `fonts-`, `ttf-` or `otf-`.
 * Some non-free font downloader packages are in `contrib`, which you will need to add to your `sources` if not present.
 * Any TTF, OTF, or TTC (!TrueType Collection) files can be manually installed on an ad hoc basis.
   * GNOME way: opening a Nautilus window to `fonts://` and dragging and dropping.
   * Command line: copy a font file into the directory `/usr/local/share/fonts` (for all users) or `~/.fonts` (for a specific user).
 * Remember to verify the font's permissions on disk (644). The fc-cache command, below, is not going to warn you about wrong permissions; incorrect permissions can render installed fonts inaccessible.
Line 10: Line 16:
[[FullSearch(title:Font)]] The above mentioned paths can be customized in the WikiPedia:fontconfig configuration file at `/etc/fonts/fonts.conf` – you can also include subdirectories or links, which is useful if you have a directory of fonts on a separate hard drive (or partition or other location).

You can also verify that the fonts are present by looking for them in an application (such as a word processor), or by using the command `fc-list`. A python based graphical utility, DebianPkg:font-manager, is also available to preview all installed and available fonts.

== Configuration ==

WikiPedia:fontconfig is the underlying configuration tool; you may find the following programs useful:

 * `fc-list` – lists fonts
 * `fc-cache -fv` – rebuilds cached list of fonts

To view a list of monospaced client-side fonts (available from Xft, so it is possible to apply font hinting and antialiasing):
{{{
  $ fc-list :spacing=mono
}}}

To view a list of server-side (available directly from X server, so font hinting and antialiasing are not available) monospaced fonts:
{{{
  $ xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-m*'
  $ xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-c*'
}}}

You may also find the following useful to change the default font rendering:
{{{
  $ dpkg-reconfigure fontconfig-config
  $ dpkg-reconfigure fontconfig
}}}

== Lists ==

See all the fonts included in Debian at http://pkg-fonts.alioth.debian.org/review/ (updated weekly), http://www.miriamruiz.es/debfonts/ or http://fonts.debian.net/. For usage of Debian fonts on Windows or Mac OS X, see http://fonts.debian.net/. Various libre fonts are [[Fonts/Missing|missing]] from Debian and need to be packaged.

email lists: [[http://lists.alioth.debian.org/mailman/listinfo/cjkunifonts-devel|CJKUnifonts-devel]] [[http://lists.alioth.debian.org/mailman/listinfo/cjkunifonts-hakkaim|CJKUnifonts-HakkaIM]] [[http://lists.alioth.debian.org/mailman/listinfo/cjkunifonts-minnanim|CJKUnifonts-MinnanIM]] [[http://lists.alioth.debian.org/mailman/listinfo/freefont-devel|freefont-devel]] [[http://lists.alioth.debian.org/mailman/listinfo/pkg-fonts-bugs|pkg-fonts-bugs]] [[http://lists.alioth.debian.org/mailman/listinfo/pkg-fonts-commits|pkg-fonts-commits]] [[http://lists.alioth.debian.org/mailman/listinfo/pkg-fonts-devel|pkg-fonts-devel]]

== Commonly Used Fonts ==

The DebianPkg:fonts-liberation ([[DebianPkg:squeeze/ttf-liberation|ttf-liberation]] in squeeze) package supplies fonts with the same metrics as Times, Arial and Courier. These fonts are named '''Liberation''' and are present in most cases. If you require the non-free original Microsoft fonts the DebianPkg:ttf-mscorefonts-installer package (in contrib) can be used to obtain them.

East Asian fonts: DebianPkg:ttf-arphic-uming DebianPkg:ttf-wqy-zenhei DebianPkg:ttf-sazanami-mincho DebianPkg:ttf-sazanami-gothic DebianPkg:ttf-unfonts-core

(from [[WikiPedia:Help:Multilingual_support_(East_Asian)#Debian-based_GNU.2FLinux|Wikipedia: Help:Multilingual support (East Asian)]])

If you want to use non-free fonts like Calibri which originate from Microsoft Office, you can download and [[ppviewerFonts|install them]] (gratis) from the Microsoft Powerpoint Viewer.

== Debian Fonts Task Force ==

http://pkg-fonts.alioth.debian.org/

== Bugs ==

<<Anchor(non-free)>>
<<Anchor(license-violation)>>
<<Anchor(duplicate)>>
<<Anchor(fontconfig)>>
=== Usertags ===

The pkg-fonts team will use these tags for usertags ([[http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=pkg-fonts-devel@lists.alioth.debian.org|user: pkg-fonts-devel@lists.alioth.debian.org]])

 * [[/Bugs/non-free|non-free]]: for packages that contain non-free fonts taken from the web (severity serious)
 * [[/Bugs/license-violation|license-violation]]: for packages that contain fonts that are GPL/LGPL but do not distribute source (severity serious)
 * [[/Bugs/contrib|contrib]]: for packages that contain free fonts that cannot be built with free tools (severity serious)
 * [[/Bugs/duplicate|duplicate]]: for packages that contain fonts that duplicate fonts from other packages (severity normal?minor?wishlist?)
 * split: for packages that contain fonts we would like to see split into other packages (severity wishlist)
 * [[/Bugs/fontconfig|fontconfig]]: for packages that should switch to dynamically looking up font paths using fontconfig (severity wishlist)
 * render: for packages that should switch to a font renderer that automatically uses the right fonts (severity wishlist)

== Source Font Formats ==

 * SFD ([[https://fontforge.github.io/sfdformat.html|Spline Font Database]], FontForge's ASCII file format for vector fonts)
 * UFO ([[http://unifiedfontobject.org/|Unified Font Object]])
 * Glyphs (proprietary format of [[https://glyphsapp.com/|Glyphs]])

== Generating Fonts from Source ==

The upstream build system should always be used for generating fonts. If upstream does not have a build system, then it is a good idea to contribute one to them based on the following Free Software tools.

The DebianPkg:fontforge is an editor for outline and bitmap fonts that generates all kinds of fonts. It is also scriptable and has an addon tool DebianPkg:xgridfit for hinting. Fonts using these tools can be found using these commands:

{{{
apt-cache rdepends fontforge
apt-cache rdepends xgridfit
}}}

== Font Formats ==

ttf, otf, bdf, pfb, fnt, woff

== Font Tools ==

DebianPkg:texlive-font-utils, fttools, ttf2tex, freetype1-tools, ttf2pt1, DebianPkg:otf2bdf, DebianPackage:fonttools

== Subpixel-hinting and Font-smoothing ==

Ubuntu and Linux Mint have better looking fonts when compared to default Debian since the ubuntu-based distros have patched cairo/freetype2 whereas vanilla Debian doesn't add non free software. A decent looking fonts can be setup in Debian by creating a .fonts.conf file to any user account home folder. An example of .fonts.conf which you can add to your user account home folder.

{{{
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
 <match target="font">
  <edit mode="assign" name="rgba">
   <const>rgb</const>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="hinting">
   <bool>true</bool>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="hintstyle">
   <const>hintslight</const>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="antialias">
   <bool>true</bool>
  </edit>
 </match>
  <match target="font">
    <edit mode="assign" name="lcdfilter">
      <const>lcddefault</const>
    </edit>
  </match>
</fontconfig>
}}}

== Infinality for Debian ==

[[http://www.infinality.net/blog/|Infinality]] font settings and Infinality-freetype are not available for Debian in official repositories and will only be available once Infinality is pushed upstream. There are third party git repos you can use to get the packages working for you. Currently a working third party git repo created by [[https://github.com/chenxiaolong/Debian-Packages.git|chenxiaolong]] is available for all Debian architectures. Infinality font config Debian build instructions with prebuilt binaries for amd64 are available for easy installation in a post in the [[http://forums.debian.net/viewtopic.php?f=16&t=88545|Debian forums]] created by a user.

== Further Resources ==

<<FullSearch(title:Font)>>

 * [[http://xjqian.wordpress.com/2007/11/13/chinese-fonts-in-debian/|Chinese fonts in Debian]] - a blog post
 * [[http://wiki.archlinux.org/index.php/Font_Configuration|Font Configuration]], !ArchLinux Wiki – useful general information
 * [[https://fedoraproject.org/wiki/Category:Fonts|Fedora]] fonts information

=== Outdated ===

Old, retained for historical interest and reference:
 * [[http://www.faqs.org/docs/Linux-mini/TT-Debian.html|TrueType Fonts in Debian mini-HOWTO]] – 2000 FAQ by Bear Giles
 * [[http://ertius.org/docs/debian_font_guide/|Debian Font Guide]], Rob Weir

Adding fonts

Fonts can be added to Debian by installing the appropriate package; fonts are specified in the “Fonts” section.

Note:

  • For most uses, you’ll want TrueType (TTF) and OpenType (OTF) fonts – these packages start with fonts-, ttf- or otf-.

  • Some non-free font downloader packages are in contrib, which you will need to add to your sources if not present.

  • Any TTF, OTF, or TTC (TrueType Collection) files can be manually installed on an ad hoc basis.

    • GNOME way: opening a Nautilus window to fonts:// and dragging and dropping.

    • Command line: copy a font file into the directory /usr/local/share/fonts (for all users) or ~/.fonts (for a specific user).

  • Remember to verify the font's permissions on disk (644). The fc-cache command, below, is not going to warn you about wrong permissions; incorrect permissions can render installed fonts inaccessible.

The above mentioned paths can be customized in the fontconfig configuration file at /etc/fonts/fonts.conf – you can also include subdirectories or links, which is useful if you have a directory of fonts on a separate hard drive (or partition or other location).

You can also verify that the fonts are present by looking for them in an application (such as a word processor), or by using the command fc-list. A python based graphical utility, font-manager, is also available to preview all installed and available fonts.

Configuration

fontconfig is the underlying configuration tool; you may find the following programs useful:

  • fc-list – lists fonts

  • fc-cache -fv – rebuilds cached list of fonts

To view a list of monospaced client-side fonts (available from Xft, so it is possible to apply font hinting and antialiasing):

  $ fc-list :spacing=mono

To view a list of server-side (available directly from X server, so font hinting and antialiasing are not available) monospaced fonts:

  $ xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-m*'
  $ xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-c*'

You may also find the following useful to change the default font rendering:

  $ dpkg-reconfigure fontconfig-config
  $ dpkg-reconfigure fontconfig

Lists

See all the fonts included in Debian at http://pkg-fonts.alioth.debian.org/review/ (updated weekly), http://www.miriamruiz.es/debfonts/ or http://fonts.debian.net/. For usage of Debian fonts on Windows or Mac OS X, see http://fonts.debian.net/. Various libre fonts are missing from Debian and need to be packaged.

email lists: CJKUnifonts-devel CJKUnifonts-HakkaIM CJKUnifonts-MinnanIM freefont-devel pkg-fonts-bugs pkg-fonts-commits pkg-fonts-devel

Commonly Used Fonts

The fonts-liberation (ttf-liberation in squeeze) package supplies fonts with the same metrics as Times, Arial and Courier. These fonts are named Liberation and are present in most cases. If you require the non-free original Microsoft fonts the ttf-mscorefonts-installer package (in contrib) can be used to obtain them.

East Asian fonts: ttf-arphic-uming ttf-wqy-zenhei ttf-sazanami-mincho ttf-sazanami-gothic ttf-unfonts-core

(from Wikipedia: Help:Multilingual support (East Asian))

If you want to use non-free fonts like Calibri which originate from Microsoft Office, you can download and install them (gratis) from the Microsoft Powerpoint Viewer.

Debian Fonts Task Force

http://pkg-fonts.alioth.debian.org/

Bugs

Usertags

The pkg-fonts team will use these tags for usertags (user: pkg-fonts-devel@lists.alioth.debian.org)

  • non-free: for packages that contain non-free fonts taken from the web (severity serious)

  • license-violation: for packages that contain fonts that are GPL/LGPL but do not distribute source (severity serious)

  • ?contrib: for packages that contain free fonts that cannot be built with free tools (severity serious)

  • duplicate: for packages that contain fonts that duplicate fonts from other packages (severity normal?minor?wishlist?)

  • split: for packages that contain fonts we would like to see split into other packages (severity wishlist)
  • fontconfig: for packages that should switch to dynamically looking up font paths using fontconfig (severity wishlist)

  • render: for packages that should switch to a font renderer that automatically uses the right fonts (severity wishlist)

Source Font Formats

Generating Fonts from Source

The upstream build system should always be used for generating fonts. If upstream does not have a build system, then it is a good idea to contribute one to them based on the following Free Software tools.

The fontforge is an editor for outline and bitmap fonts that generates all kinds of fonts. It is also scriptable and has an addon tool xgridfit for hinting. Fonts using these tools can be found using these commands:

apt-cache rdepends fontforge
apt-cache rdepends xgridfit

Font Formats

ttf, otf, bdf, pfb, fnt, woff

Font Tools

texlive-font-utils, fttools, ttf2tex, freetype1-tools, ttf2pt1, otf2bdf, fonttools

Subpixel-hinting and Font-smoothing

Ubuntu and Linux Mint have better looking fonts when compared to default Debian since the ubuntu-based distros have patched cairo/freetype2 whereas vanilla Debian doesn't add non free software. A decent looking fonts can be setup in Debian by creating a .fonts.conf file to any user account home folder. An example of .fonts.conf which you can add to your user account home folder.

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
 <match target="font">
  <edit mode="assign" name="rgba">
   <const>rgb</const>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="hinting">
   <bool>true</bool>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="hintstyle">
   <const>hintslight</const>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="antialias">
   <bool>true</bool>
  </edit>
 </match>
  <match target="font">
    <edit mode="assign" name="lcdfilter">
      <const>lcddefault</const>
    </edit>
  </match>
</fontconfig>

Infinality for Debian

Infinality font settings and Infinality-freetype are not available for Debian in official repositories and will only be available once Infinality is pushed upstream. There are third party git repos you can use to get the packages working for you. Currently a working third party git repo created by chenxiaolong is available for all Debian architectures. Infinality font config Debian build instructions with prebuilt binaries for amd64 are available for easy installation in a post in the Debian forums created by a user.

Further Resources

Outdated

Old, retained for historical interest and reference: