TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to use the Fontin font in my pdfLatex document.

What steps should I do for using a downloaded font

  • Should I download the TTF or the OpenType version?
  • Where should I store the font?
  • Should any font processing be done?
  • How can pdfLatex find this font?

I am using TexLive 2011 installed in a custom location (/somepath/texlive/2011) on Ubuntu

share|improve this question
I know that I posted a question yesterday about the same thing for XeTeX (tex.stackexchange.com/questions/27659/…), but as pdfLaTeX is so different I thought that a new question is justified – Peter Smit Sep 7 '11 at 10:15
Have you tried LuaTeX? It's based on PDFTeX, will eventually replace it and it is supported by fontspec just like XeTeX. – ℝaphink Sep 7 '11 at 10:19
Use LuaLaTeX or XeLaTeX instead of pdfLaTeX, as fontspec makes loading fonts much easier. – Martin Schröder Sep 7 '11 at 14:48
Most users (almost all) can hardly install TrueType or OpenType fonts for pdfTeX (and Dvips/dvipdfm/dvipdfmx etc) properly. You need to at least know the usage of ttf2tfm utility, font mapping of pdfTeX, NFSS of LaTeX, TeX distribution and some other experience. As Martin said, use modern LuaTeX or XeTeX instead would be much easier. – Leo Liu Sep 7 '11 at 15:36
@PeterSmit If you ever succeeded in following Leo Liu’s instructions below, could you please post the .fd and .map files someplace? – J. C. Salomon Jul 2 '13 at 19:45
up vote 10 down vote accepted

There are some tutorials and tools on this topic, but the technique is too tricky for most users, even for experienced ones. Thus, using LuaTeX or XeTeX is always a better choice.

In short, you need:

  1. Download the TrueType fonts. Copy them to LOCALTEXMF/fonts/truetype/somename/.
  2. Use ttf2tfm utility to make .tfm file for these fonts. And you will get the font map on console at the same time. You should copy the .tfm file to LOCALTEXMF/fonts/tfm/somename/.
  3. Write a .map file for the font. And copy it to LOCALTEXMF/fonts/map/somename/.
  4. Run updmap utility to update the font map. This is useful for pdfTeX only.but harmful for dvips and dvipdfm, for dvipdfmx you should edit cid-x.map.
    (For pdfTeX only, you can also use \pdfmapline primitive instead of step 3 and step 4.)
    (Now you can use the fonts in Plain TeX.)
  5. Write a .fd file for LaTeX NFSS. Copy it to LOCALTEXMF/tex/latex/somename/.
  6. Maybe write a .sty file to load the font easily in LaTeX. Copy it to LOCALTEXMF/tex/latex/somename/.
  7. Run texhash utilily to make the files can be found by TeX.

The steps above are only a outline. All these steps are tricky and error-prone. Even you read some tutorials like http://c.caignaert.free.fr/Install-ttf-Font.pdf, or use some special tools for this, you still need to be very careful.

share|improve this answer
How do you get from its being too tricky for most users to Xe/LuaTeX always being a better choice? This is surely false, if only because Xe/LuaTeX is not always an option at all. Moreover, I disagree that this is 'too tricky' for experienced users. It requires patience. It is time-consuming and error-prone if you want to do it well. (It is quick and relatively painless if you just want the basics.) It is not beyond the capabilities of an experienced user who is willing to read some documentation and take the time required. Somebody may be unwilling to do it, but it is not hard. – cfr Jun 7 '15 at 20:27

You can download the ttf or otf version of the font. Then load it it in fontforge and export it to Postscript Type1 (Binary) in Adobe Standard Encoding. Then you can use the installfont-tl bash script, like:

installfont-tl -f 6gs -n 'Softmaker Goudy Old Style' -c FFGoudyOldStyle -P SMFF@Sgs -p goudyoldstyle -m goudyoldstyle -O -d 2011/03/06 -v v1.0 -s softmakerfreefont/GoudyOldStyle -C 2011

installfont can also handle ttf or otf if you install other programms. Take a look at the doc.

Anony-Mousse Edit:

As an example I took this month's free font "Karin Pro" from www.freefont.de (running TeXLive2014 on Cygwin/Win7)

I opened the otf file in fontforge, changed the encoding to Adobe Standard Encoding and exported it as Postscript Type1 Binary (pfb) font.

I created an afm file with Ghostscript's pf2afm:

pf2afm KarinPro.pfb

Finally, I did run installfont-tl:

installfont-tl -f 6ka -n 'Softmaker Karin Pro' -c FFKarinPro -P SMFF@Ska -p karinpro -m karinpro -O -d 2014/11/07 -v v1.0 -s MyFonts/KarinPro -l /cygdrive/c/texlive/texmf-local
  • -f font family
  • -n font name
  • -c font command
  • -P font scale prefix
  • -p package name
  • -m mapfile name
  • -O use original font names
  • -d date
  • -v version number
  • -s sub directory, where font files will be installed
  • -l root of the local TeX tree

Script finished without problems:

This is a \textsl{Karin Pro} test!

Et voilà:

Karin Pro example

share|improve this answer
For pdfTeX and dvipdfmx, TrueType can be handled directly. Fontforge or ttf2pt1 are over used, I think. The advantage of Type1 fonts is that dvips and dvipdfm can be supported. – Leo Liu Sep 7 '11 at 16:24
Can you provide a full example, installing into the user home directory (-l)? I tried installfont-tl but it doesn't seem to work right for me, and it also doesn't help debug... – Anony-Mousse Nov 7 '14 at 10:36
@Anony-Mousse What did you do exactly? Did you use -l without specifying a directory? If you want to install the font into your local TeX tree, then don't use -l at all! installfont-tl uses $TEXMFLOCAL by default! – Josef Nov 7 '14 at 13:48
$TEXMFLOCAL is /usr/local/share/texmf and only writable by the sysadmin. I.e. I cannot write there. I tried using $HOME/texmf, but the font does not work. – Anony-Mousse Nov 7 '14 at 15:03
You should note that many licenses do NOT permit modifying the font in the way this requires. – cfr Nov 7 '14 at 21:36

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.