dvips: Font Helvetica used in file filename.eps is not in the mapping file.

I got the error in the title when trying to convert a dvi file to PostScript or PDF. This is how I ‘fixed’ it.

The problem is that some applications output PostScript that uses font names that dvips does not like or that are not part of a standard install of LaTeX.

I took a look at the eps file in question and sure enough it said things like

/Helvetica reencodeISO def

and

(Helvetica) findfont 140 scalefont setfont

and

%%DocumentFonts: Helvetica

and so on.

Because the error message talks about map file(s), I typed:

find /usr/ -iname "psfonts.map"

and then had a look at that file. It has the font names that you can be sure dvips will recognise. I picked out “NimbusSanL-Regu” and then replaced all occurrences of “Helvetica” in the eps file with “NimbusSanL-Regu”. And the problem went away!  I don’t know how good a solution this is, but the output looks fine to me.

Next problem was that I had about 20 eps files to process. So I made a little script. It is called Helvetica_to_Nimbus.sh and it looks like this:

for f in *.eps
do
   sed -i 's/Helvetica/NimbusSanL-Regu/g' $f
done

or

sed -i 's/Helvetica/NimbusSanL-Regu/g' $f.eps

It processes all files with extension eps and uses sed to do a search and replace.

It even works!

Tricky?

Advertisements

Tags: , , , , , , , ,

About Darren

I'm a scientist by training, based in Australia.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: