9

Using TeXlive 2014 I installed the Emerald fonts to ~/.texmf (other TEXMF trees will lead to the same problem).

No matter how much I texhash or updmap, this minimal example won't complile using pdflatex:

\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage{emerald}

\begin{document}

\ECFAugie

This is very minimal!

\end{document}

I always get the error

kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 faumw8r
mktexpk: don't know how to create bitmap font for faumw8r.
mktexpk: perhaps faumw8r is missing from the map file.
kpathsea: Appending font creation commands to missfont.log.

!pdfTeX error: pdflatex (file faumw8r): Font faumw8r at 600 not found
 ==> Fatal error occurred, no output PDF file produced!

Using latex and dvips will yield something similar despite the fact that there is a file .texmf/fonts/tfm/emerald/faumw8r.tfm. What is going wrong?

arney
  • 2,023
  • Did you follow the instructions in the supplied README (emerald.zip, as available on CTAN)? –  Jun 03 '15 at 21:27
  • a tfm file is a metric file with just the height and width of the letters, you also need to install the actual font file with the letter shapes. – David Carlisle Jun 03 '15 at 21:29
  • @ChristianHupfer Yes, but now you sent me there again, I found the solution. See below. Thanks. – arney Jun 03 '15 at 21:44

3 Answers3

19

Don't follow the instructions in the README file as they are not current and will not ensure that the fonts are generally available to multiple engines.

The following assumes that you have installed the package files successfully. It is strongly recommend to use TEXMFLOCAL if you can for this. You can find out where this is using kpsewhich -var TEXMFLOCAL. Use of your personal texmf tree is a distant second-best, and updmap rather than updmap-sys is not recommended. It will require constant updating - any time you update your TeX installation and changes are made to the fonts installed, you'll need to regenerate your personal map files. Not fun at all. Only consider this if you do not have permission to install to TEXMFLOCAL. (And then, ask yourself how badly you really need this font....)

Remove all traces of the package from your personal texmf tree and install into the appropriate TEXMFLOCAL. Then run mktexlsr <TEXMFLOCAL>.

The package provides the type1 versions of the fonts, as well as the support files. There is no need to install fonts additionally.

Double-check that things are installed correctly using e.g. kpsewhich faumw.pfb. This should give <TEXMFLOCAL>/fonts/type1/emerald/faumw.pfb where <TEXMFLOCAL> is the root of the local texmf tree you identified above.

If <TEXMFLOCAL>/web2c/updmap.cfg exists, you need to edit it. If not, you need to create it. Either way, add the line

Map emerald.map

Now run updmap-sys.

You may need to remove files from your home directory which prevent the system-wide ones having their intended effect. On GNU/Linux, for example, I would remove the directory ~/.texlive2014 where ~ is my home directory and 2014 is the version of TeX Live I'm using. If you are in any doubt, rename the directory rather than removing it.

Then your document should compile just fine:

emerald's Augie

Incidentally, a version of Augie is available in TeX Live anyway, even without the emerald package.

\documentclass{article}

\usepackage[T1]{fontenc}
\DeclareRobustCommand{\augiefamily}{%
  \fontfamily{augie}\fontseries{m}\fontshape{n}\selectfont}
\DeclareTextFontCommand{\textaugie}{\augiefamily}

\begin{document}

\augiefamily

This is very minimal!

\end{document}

standard Augie

EDIT

Admittedly, you can't do this without emerald:

emerald sampler

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{emerald}

\begin{document}
  \def\efont{APicture,Augie,Decadence,DecadenceWithoutTheDiamonds,DecadenceCondensed,DecadenceInTheDark,DecadenceInTheDarkCondensed,DecadenceInADifferentLight,DecadenceInTheDarkCondensedMarquee,Intimacy,IntimacyDeux,JD,Movieola,MovieolaTitleType,Pookie,PookieType,Skeetch,SpankysBungalow,SpankysBungalowItalico,SpankysBungalowBlanco,SpankysBungalowBlancoItalico,Syriac,TallPaul,TeenSpirit,Webster}%
  \makeatletter
  \@for \xx:=\efont \do {%
    \expandafter\expandafter\expandafter\csname ECF\xx\endcsname This is very minimal\dots\par
  }%
  \makeatother
\end{document}
cfr
  • 198,882
  • 1
    .../texmf-local/web2c/updmap.cfg is not read by updmap-sys, it only reads those in texmf-config and texmf-dist. – Raphael Mar 17 '16 at 18:33
  • @Raphael That is not true. At least, it is certainly not true of current TeX Live. It is true that the way this stuff is handled has altered from version to version. Perhaps you have an outdated installation. Or MikTeX, which may do things differently again. But this certainly works for current TeX Live. By default, there is no updmap.cfg in texmf-config at all. The use of the file in TEXMFLOCAL is documented at the top of the updmap.cfg in texmf-dist/web2c/, so you can easily confirm what I'm saying if you don't believe me. – cfr Mar 17 '16 at 21:53
  • 1
    I'm on TeXLive 2015. I can dump you the output of my updmap-sys call if you don't believe me. In any case, following your post did not provide me with working fonts. Maybe I made a mistake. – Raphael Mar 17 '16 at 23:49
  • @Raphael I'm sorry that you are experiencing difficulties, but I can only reiterate that this is currently best practice and it does work. You can also use the --enable business, but you lose certain advantages of using the TEXMFLOCAL file. Both options are explained in the comments in the textmf-dist updmap.cfg. If, after reading that, you continue to have trouble, I can only suggest that you ask a new question saying exactly what you did and exactly what happened. – cfr Mar 18 '16 at 01:48
  • @Raphael I haven't tried it, but the existence of updmap.cfg in texmf-config may be the problem since the instructions do emphasise putting all your fonts into the TEXMFLOCAL files. I don't remember exactly, but I think that updmap-sys probably only reads one file. So if you created updmap.cfg in texmf-config previously, perhaps that (counter-intuitively) overrides the file in TEXMFLOCAL. – cfr Mar 18 '16 at 01:51
  • The file there if well filled, but I don't recall creating it myself. (Correction: I'm on TeXLive 2014 still. Sorry for the confusion.) Well, thank you; for now, I've answered your parenthetical question in paragraph two and abandoned this quest. I'll try again with a clean installation of the latest TeXLive at some point in the future. – Raphael Mar 18 '16 at 07:42
  • @cfr hi :). I had problems with TeXLive2015 but solved it by specifying the updmap.cfg files myself, as updmap-sys did not see the TEXMFLOCAL one. See question – Ciprian Tomoiagă May 02 '16 at 10:14
  • I'm facing the exact problem stated by @Raphael and @ Ciprian. Still complaining about missing the package even though I've added them. – CroCo Mar 14 '17 at 18:06
  • @CroCo That is not nearly enough information to diagnose the problem, as you surely realise. – cfr Mar 14 '17 at 20:04
  • @cfr, I've followed your steps literally but still the package is missing. This is with Sierra OS. Adding files inside /texmf-local/.. is not detected. – CroCo Mar 15 '17 at 01:46
  • 3
    This line sudo updmap-sys --enable Map emerald.map solved the problem. – CroCo Mar 15 '17 at 03:18
  • @CroCo Not the recommended way these days, but certainly not the worst thing to do. The only disadvantage is you'll have to redo it if you update to a new version of TeX Live. – cfr Mar 15 '17 at 03:40
  • Thank you very much for the code for augie/JD in texlive, this just saved me from so much pain of manually installing emerald, and IMO this is even a separate answer :-) – Thorsten Sep 10 '18 at 19:29
  • @cfr I'm sorry. I followed the steps without errors. kpsewhich faumw.pfb does the correct output but after I put the line in web2c/updmap.cfg I still can't compile the example file. From the updmap-sys output (I've put the log in the link too) it looks like it did read web2c/updmap.cfg. But I'm still getting the same error as OP (Font fwbmr8r at 600 not found) I'm not sure where did it go wrong. Perhaps I'm missing something? – RexYuan May 07 '19 at 16:06
  • I've also included my texmf folder content in the link. I'm sorry I'm really new to customizing LaTeX and I may have misunderstood something – RexYuan May 07 '19 at 16:09
1

I do not fully understand the structure of TeX Live. I followed the accepted answer above. I have installed the 2020 version of TeX Live on macos/OSX. This is the recipe I followed after downloading the emerald.zip and expanding the zip file. As root user in a terminal window:

TEXDIR=/usr/local/texlive

EMERALDDIR=/path/to/emerald

mkdir -p ${TEXDIR}/texmf-local/fonts/doc/emerald

cp ${EMERALDDIR}/fonts/map/dvips/emerald.map ${TEXDIR}/texmf-local/dvips/.

cd ${EMERALDDIR}/tex

tar -cf - latex | (cd ${TEXDIR}/texmf-local/tex;tar -xf -)

cd ${EMERALDDIR}/doc

tar -cf - * | (cd ${TEXDIR}/texmf-local/fonts/doc/emerald; tar -xf -)

cd ${EMERALDDIR}/fonts

tar -cf - tfm type1 vf | (cd ${TEXDIR}/texmf-local/fonts; tar -xf -)

vi ${TEXDIR}/texmf-local/web2c/updmap.cfg [added "Map emerald.map" line at end of file and saved]

mktexlsr

updmap-sys

Mensch
  • 65,388
0

From the README apply the instructions given for MikTeX (quite counter-intuitive, eh?) and add

Map emerald.map

to .texmf/web2c/updmap.cfg and run updmap.

arney
  • 2,023