2

NOTE: there are several threads in Stack regarding this issue but any of them solved my problem.

I am using Overleaf to compose a Latex document and convert it to PDF. The ACM journal I am trying to submit it for wants that PDF to be made without Type 3 fonts (just Postscript Type 1 or TrueType). The editor said that "one common way Type 3 fonts can end up in a document is in Figures generated within PowerPoint or in charts generated in Excel." I made some of the figures using PowerPoint and took screenshots from them on my Mac. I do not know even if those images are the source of the problem but I have a Type 3 font called BitstramVeraSans-Roman in my document. So, I would like to know if:

  • Is there any way of identifying the source of that Type 3 font in Mac OS?
  • How could convert that Type 3 font into a Postscript Type 1 or TrueType one?

Many thx.

4
  • 1
    vera sans is a scalable font (not type 3) (fontsquirrel.com/fonts/bitstream-vera-sans for example) so it's rather surprising if you have Type3 version of it. what does the pdffonts utility report for your pdf? Jun 22, 2018 at 19:46
  • 2
    Screenshots have no fonts (but are a bad way of conveying information), type 3 fonts are quite rare nowadays. But basically, you check your final PDF (Acrobat can also show embedded fonts, if you prefer it to pdffonts), then you check each single component PDF of your figures. Jun 23, 2018 at 0:22
  • I did not use pdffonts but Acrobat Pro DC. Its report only says that the document is using a font called BitstramVeraSans-Roman (Type 3, custom encoding), among others Jun 24, 2018 at 10:14
  • How can I check each single component PDF of figures with Acrobat Pro DC? Additionally, if screenshots is a bad way of conveying information, how can I include my PowerPoint figures in the PDF without getting this Type 3 fonts issue? I also tried to save these figures as PDF from PowerPoint and then include them in Overleaf but it did not seem to work. Some other figures are just screenshots from a molecular simulator, so I do not have other choice but taking screenshots Jun 24, 2018 at 10:14

3 Answers 3

3

1) As stated from a previous comment, a bitmap (screenshot) doesn't contains any font, and hence can't be the origin of your problem.

2) To check whether or not the Type3 fonts actually come from the figures and not from the text: compile your LaTeX code with the draft option in documentclass. The resulting PDFwill no longer contain the figures. If it no longer has Type3 fonts, it means that there are in (one of) the figure(s) that is a vectorial export from (a old version of) PowerPoint. ("Save as PDF" in PPT 2010 on Windows does include the Vera sans font as Truetype and not Type3)

3) The most obvious solution would be to edit the Powerpoint source to replace the Vera Sans by another more standard font, known by the tool you use to produce the PDF (wichh tool in fact ?)

If you nevertheless you stick to VeraSans, you can fix the problem by using directly a Type 1 font : BitstramVera Sans is family of Truetype font, which has a TeX free Type 1 clone named Bera (see this page). Replace in your system the BitstramVeraSans by BeraSans Type 1, the problem of Type 3 will be avoided

4) Depending on the way you create the PDF, yos might have the opportunity to (i) not embed the font, and add it subsequently with Ghostscript, or (ii) transform it to outlines or(iii)ask the output device to substitute VeraSans by Berasans.

1
  • 2
    Following your strategy allowed me to identified the image that was causing the problem. The screenshots were not the problem, indeed. The origin was a plot (in PDF) made with Jupyter notebook (Python 3). I tried to force all fonts to be Arial from Jupyter via plt.rcParams["font.family"] = "arial" but it did work either. So, I saved the plot as an EPS file and then converted it to PDF using Acrobat DC. And voilà, the annoying Type 3 font was gone. Many thx guys Jun 25, 2018 at 11:20
3

I ran into the same error about Type-3 font detected on a certain page of my submission on the platform of IEEE. The reason why IEEE rejects type-3 font can be found at this link. For my case, I used the LaTeX package bbm and \mathbbm{1} to denote an indicator function, and this usage introduced type-3 font. After replacing bbm with dsfont and \mathbbm{1} with \mathds{1}, the reported error disappeared.

0

A useful tool to weed out which files are using which fonts is pdffonts from the poppler package (Mac:brew install poppler, Linux:apt install poppler-utils) e.g.:

pdffonts figure1.pdf

If you used matplotlib to create any figures then it defaults to using Type 3 fonts which can be changed by customising its settings e.g. to disable Type 3 font usage and use TrueType for ps and pdfs:

import matplotlib
matplotlib.rcParams['pdf.fonttype'] = 42
matplotlib.rcParams['ps.fonttype'] = 42

If you're just using the pyplot library then you can use:

import matplotlib.pyplot as plt
plt.rcParams.update({'pdf.fonttype': 42})

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .