I am using texlive2015 on Ubuntu 14.04. The distro is owned by root and I have to use sudo for such things as updmap. [I have another computer where I changed ownership to me, but the following problems are similar there.] I am using pdftex with dvi output, which I then convert to pdf via dvipdfmx. (This is for historical reasons: I started work on this 700-page book 20 years ago. It is (e)plain tex with lots of my own macros and 100 eps figures.) I now want to enable font expansion (this is the reason for using pdftex, besides character protrusion.) However, I cannot reliably get the new fonts to work, especially if I use more than one font. Here is a simple example.


\pdffontexpand\tenrm 20 20 5
\pdffontexpand\tenit 20 20 5

Our {\it major topics} include random walks and their intimate connection to
electrical networks; uniform spanning trees, their limiting forests, and
their marvelous relationships with random walks and electrical networks;
branching processes; percolation and the powerful, elegant mass-transport
technique; isoperimetric inequalities and how they relate to both random
walks and percolation; minimal spanning trees and forests, and their
connections to percolation; Hausdorff dimension, capacity, and how to
understand them via trees; and random walks on Galton-Watson trees.
Connections among our topics are pervasive and rich, making for surprising
and enjoyable proofs.


I followed the instructions at How do I make expanded fonts and install them?, but they did not ever work fully. I have the above file in the same directory as the map file and the new fonts. I cannot get xdvi to work properly, even with only the roman fonts here. The error includes

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

dvipdfmx is similar:

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

dvipdfmx:warning: Could not locate a virtual/physical font for TFM
dvipdfmx:warning: >> There are no valid font mapping entry for this font.
dvipdfmx:warning: >> Font file name "ntx-Regular-tlf-ot1+10" was assumed
but failed to locate that font.
dvipdfmx:fatal: Cannot proceed without .vf or "physical" font for PDF

Output file removed.

If I run dvipdfmx -f newtx-ext.map, then I will get output. However, the italics cause distortions in spacing and scaling (more evident in a longer file, especially with ntxmi math font unexpanded mixed in):

pdf output

Similarly, if I use only italics, the pdf is fine, but if I mix rm, then I will get similar distortions. In addition, if I expand only \tenrm, not \tenit, then the results are similarly poor. dvips fails to find the correct fonts, but dvips -u+newtx-ext.map produces perfect output:

dvips output

However, I need a suitable dvi file in order to use dvipdfmx (for a proper pdf file with my book, not with this test file).

kpsewhich ntx-Regular-tlf-ot1+20.tfm reports ./ntx-Regular-tlf-ot1+20.tfm, kpsewhich ntx-Italic-tlf-ot1+20.tfm reports ./ntx-Italic-tlf-ot1+20.tfm and kpsewhich newtx-ext.map reports ./newtx-ext.map.

Here is the map file:

ntx-Regular-tlf-ot1+20 TeXGyreTermes-Regular " 1.020 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmr.pfb
ntx-Regular-tlf-ot1+15 TeXGyreTermes-Regular " 1.015 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmr.pfb
ntx-Regular-tlf-ot1+10 TeXGyreTermes-Regular " 1.010 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmr.pfb
ntx-Regular-tlf-ot1+5 TeXGyreTermes-Regular " 1.005 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmr.pfb
ntx-Regular-tlf-ot1-20 TeXGyreTermes-Regular " 0.980 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmr.pfb
ntx-Regular-tlf-ot1-15 TeXGyreTermes-Regular " 0.985 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmr.pfb
ntx-Regular-tlf-ot1-10 TeXGyreTermes-Regular " 0.990 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmr.pfb
ntx-Regular-tlf-ot1-5 TeXGyreTermes-Regular " 0.995 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmr.pfb
ntx-Italic-tlf-ot1+20 TeXGyreTermes-Italic " 1.020 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmri.pfb
ntx-Italic-tlf-ot1+15 TeXGyreTermes-Italic " 1.015 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmri.pfb
ntx-Italic-tlf-ot1+10 TeXGyreTermes-Italic " 1.010 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmri.pfb
ntx-Italic-tlf-ot1+5 TeXGyreTermes-Italic " 1.005 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmri.pfb
ntx-Italic-tlf-ot1-20 TeXGyreTermes-Italic " 0.980 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmri.pfb
ntx-Italic-tlf-ot1-15 TeXGyreTermes-Italic " 0.985 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmri.pfb
ntx-Italic-tlf-ot1-10 TeXGyreTermes-Italic " 0.990 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmri.pfb
ntx-Italic-tlf-ot1-5 TeXGyreTermes-Italic " 0.995 ExtendFont encntx-ot1-tlf ReEncodeFont " <ntx-ot1-tlf.enc <[ntx-ot1-tlf.enc <qtmri.pfb

This map file is incorporated properly (I believe) in both /root/.texmf-var/fonts/map/pdftex/updmap/pdftex_dl14.map and /root/.texmf-var/fonts/map/dvips/updmap/psfonts_t1.map.

The output of sudo -H updmap --force --enable Map=newtx-ext.map is

updmap is using the following updmap.cfg files (in precedence order):
updmap is using the following updmap.cfg file for writing changes:
dvips output dir: "/root/.texmf-var/fonts/map/dvips/updmap"
pdftex output dir: "/root/.texmf-var/fonts/map/pdftex/updmap"
dvipdfmx output dir: "/root/.texmf-var/fonts/map/dvipdfmx/updmap"

updmap is creating new map files
using the following configuration:
  LW35 font names                  : URWkb (default)
  prefer outlines                  : true (default)
  texhash enabled                  : true
  download standard fonts (dvips)  : true (default)
  download standard fonts (pdftex) : true (default)
  kanjiEmbed replacement string    : noEmbed (default)
  kanjiVariant replacement string  :  (default)
  create a mapfile for pxdvi       : false (default)

Scanning for LW35 support files  [  3 files]
Scanning for MixedMap entries    [ 49 files]
Scanning for KanjiMap entries    [  6 files]
Scanning for Map entries         [209 files]

Generating output for dvipdfmx...
Generating output for ps2pk...
Generating output for dvips...
Generating output for pdftex...

Files generated:
       15762 2016-01-09 15:56:43 builtin35.map
       21235 2016-01-09 15:56:43 download35.map
     1093081 2016-01-09 15:56:43 psfonts_pk.map
     1353946 2016-01-09 15:56:43 psfonts_t1.map
     1348439 2016-01-09 15:56:43 ps2pk.map
          14 2016-01-09 15:56:44 psfonts.map -> psfonts_t1.map
     1348446 2016-01-09 15:56:44 pdftex_dl14.map
     1346781 2016-01-09 15:56:44 pdftex_ndl14.map
          15 2016-01-09 15:56:44 pdftex.map -> pdftex_dl14.map
        6109 2016-01-09 15:56:43 kanjix.map

Transcript written on "/root/.texmf-var/web2c/updmap.log".
updmap: Updating ls-R files.

I really hope someone can help me. I have spent many frustrating hours over the last month on this, but I can see that if I get it to work, it will be worthwhile. Thank you!


After cleaning the results of update (without -sys), I ran sudo updmap-sys --enable Map=newtx-ext.map; that did very little, so I ran sudo updmap-sys --force --enable Map=newtx-ext.map. It gave the same results as above, with the following exceptions: The first line was updmap: resetting $HOME value (was /home/rdlyons) to root's actual home (/root). and the end was

WARNING: updmap has found mismatched files!

The following files have been generated as listed above,
but will not be found because overriding files exist, listed below.
 builtin35.map: /root/.texmf-var/fonts/map/dvips/updmap/builtin35.map
 download35.map: /root/.texmf-var/fonts/map/dvips/updmap/download35.map
 kanjix.map: /root/.texmf-var/fonts/map/dvipdfmx/updmap/kanjix.map
 pdftex.map: /root/.texmf-var/fonts/map/pdftex/updmap/pdftex.map
 pdftex_dl14.map: /root/.texmf-var/fonts/map/pdftex/updmap/pdftex_dl14.map
 pdftex_ndl14.map: /root/.texmf-var/fonts/map/pdftex/updmap/pdftex_ndl14.map
 ps2pk.map: /root/.texmf-var/fonts/map/dvips/updmap/ps2pk.map
 psfonts.map: /root/.texmf-var/fonts/map/dvips/updmap/psfonts.map
 psfonts_pk.map: /root/.texmf-var/fonts/map/dvips/updmap/psfonts_pk.map
 psfonts_t1.map: /root/.texmf-var/fonts/map/dvips/updmap/psfonts_t1.map
(Run updmap --help for full documentation of updmap.)

Transcript written on "/var/lib/texmf/web2c/updmap.log".
updmap: Updating ls-R files.

So I moved that directory /root/.texmf-var/fonts/map and then that last problem disappeared. However, nothing was fixed: the exact same problems occur.

  • 2
    Please read this question and answer which I wrote to explain why you should never use updmap. You should clean up the results of using it thoroughly, especially if you have run it as the user you normally use to compile documents with (presumably not root) or without changing that user's environment. The stuff in root's home shouldn't hurt anything so just leave that if you aren't confident cleaning it.
    – cfr
    Jan 10, 2016 at 2:26
  • If you have all of the files in your working directory try \pdfmapfile{+<filename>.map} but I'm not sure if this works in DVI mode. Note that the files which include the map file fragment, as shown in your output, are never read when you compile documents. (Unless you compile as root which would be an extremely bad idea.)
    – cfr
    Jan 10, 2016 at 2:28
  • @cfr No, it does not work in dvi mode: pdfTeX error (\pdfmapfile): not allowed in DVI mode. I will try your other suggestion.
    – Russ Lyons
    Jan 10, 2016 at 2:38
  • @cfr The second command you suggest, mv -n $(dirname $(kpsewhich -var TEXMFHOME)) $(dirname $(kpsewhich -var TEXMFHOME)).bkup, gives an error: mv: cannot move ‘/home/rdlyons’ to ‘/home/rdlyons.bkup’: Permission denied. BTW, I normally use tsch, but had to use bash (with which I am not familiar) for your syntax. (The result of kpsewhich -var TEXMFHOME is /home/rdlyons/texmf.)
    – Russ Lyons
    Jan 10, 2016 at 2:41
  • 1
    Your installation of TeX Live is your distro's, though. You didn't install with upstream's installer ('vanilla' TeX Live). So you should check where TEXMFLOCAL is using kpsewhich -var TEXMFLOCAL. I don't know if it uses the same locations or not, though the local at the end looks odd. (I've seen it before, but don't know what it is for.) You don't need to install the type1 fonts as you've got those already, but the map file and the TFM files. (And anything else crucial you made.) I'd use e.g. TEXMFLOCAL/fonts/tfm/public/newtx-ext/ for the TFMs.
    – cfr
    Jan 10, 2016 at 3:53


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy