现在的位置: 首页 > 综合 > 正文

Fixing “font not embedded” issue to pass the IEEE PDF eXpress check

2019年05月01日 ⁄ 综合 ⁄ 共 3455字 ⁄ 字号 评论关闭

I'm getting the error "A PDF font is not embedded." What can I do about this?

This error occurs when a PDF document does not include all the fonts that it references. This may cause fonts to be substituted when printing or rendering, yielding papers that have incorrect spacing
or equations. IEEE, ACM and other publishers require all fonts to be embedded.

Hints on fixing this problem can be found at IEEE or PaperPlaza or dvipdfm.

NSF also publishes a set of related suggestions for
generating PDF.

If you are using Adobe Acrobat to produce the PDF, check the "press quality" option in the print menu.

To check if all fonts are embedded, open the PDF of the paper or the figure in Acrobat and check under "File/Document Properties/Fonts" (Windows) or "File/Properties/Fonts" (MacOS). All fonts must
say "embedded" or "embedded-subset". (The precise location of the menu option may depend on the version of Adobe Acrobat.)

The IEEE maintains a set of Acrobat job options and templates.
ACM SIGGRAPH has also published a set of hints. Another set of hints was compiled by USENIX.

For MacOS, you can open the file in Preview and save the document to another file. This will embed all the fonts. Also, Microsoft Word on MacOS exports proper PDF with embedded fonts.

Gnuplot-generated PostScript often has this problem. Mohit Lad recommends the following:

By default, gnuplot does not embed fonts in eps files; insert this line in your gnuplot script (note that 26 is the font size that can be changed).

set terminal postscript eps enhanced "NimbusSanL-Regu" fontfile "uhvr8a.pfb" 26

If you use MATLAB figures, you need to use export_fig and then generate
the PDF file using pdflatex.

If you convert Postscript to PDF using ps2pdf, use the following arguments:

ps2pdf -dEmbedAllFonts=true -dSubsetFonts=true -dEPSCrop=true -dPDFSETTINGS=/prepress graph.eps

You may also try the command above if your LaTeX file produces an embedded-font error.

For EPS files generated by xmgrace, one should deactivate the Option "use device fonts" in the xmgrace print setup window.

It has been reported that FreePDFConvert and cutePDF properly
include fonts. The cutePDF support page indicates the configuration file, %Program Files%\Acro Software\CutePDF Writer\PDFWrite.rsp, may contain
the parameter CompatibilityLevel=1.5 to generate PDF files with version 1.5.

Fixing "font not embedded" issue to pass the IEEE PDF eXpress check

We recently had to make the format of a paper complaint with the IEEE PDF eXpress format. The paper did not pass the check in the first few attempts. Hence this blog
post. I'd like to thank my colleague Ning Shang who did the most of the fixes to get it working. I am listing the fixes here so that anyone else who encountered similar issues may find this post useful.

Before that, I work on Ubuntu 9.04, kile 2.1 (the IDE), use the tools latex, bibtex and dvipdf to generate pdf files from tex/bib/cls files. (i.e. latex file.tex; bibtex file; (to attach the ref.bib file) latex file.tex; dvipdf file.dvi to finally get file.pdf)

The tex file uses the IEEE conference style. Additionally we used the following packages initially:
times, epsfig, graphicx, url, verbatim, amsmath, amsfonts

Issue #1: Document contains bookmarks
Fix: We had to remove the url package from the included packages lists and convert \url{address} to {address} in ref.bib.

Issue #2: Font Times-Italic, Times-Roman, Times-BoldItalic, Times-Bold, Helvetica, Courier is not embedded.

You can see what fonts are embedded and what are not, by using "pdffont file.pdf" and looking at the "emb" column. In our case, it did show that some fonts are not embedded.

Fix: We searched the Internet [12]and
found that in order to fix this (i.e. to embed all the required fonts) we need to do the conversion from tex to pdf in two stages. This is a dirty hack; but it works.

latex file.tex
bibtex file
latex file.tex
latex file.tex (Now we have file.dvi)
dvips -Ppdf -G0 -tletter file.dvi (Now we have file.ps)
ps2pdf -dCompatibilityLevel=1.4 -dPDFSETTINGS=/prepress file.ps file.pdf (Now we have file.pdf)

抱歉!评论已关闭.