17

I am trying to submit a publication to ManuscriptCentral. All I am allowed to do is to submit my tex file and any missing packages (it seems to have a fair selection of standard packages) and it will go away and compile it. I think it uses latex and then dvipdf to create PDF files - here is an extract from the log file that I can download from the server:

command: latex -interaction=batchmode diff.tex
Command Ok
This is TeX, Version 3.14159 (Web2C 7.4.5)

command: dvipdf diff.dvi
Command Ok
dvips: warning: no config file for `generic'

In other words, I can't really change how latex is invoked and what fonts are installed on the target system. The servers seems to choke on my tex file with a not too specific error message:

We are sorry, but there is a problem with your submitted file(s) named 
x.tex.pdf. Our system cannot process this file. The most common reason for 
this is badly embedded fonts or Type 3 fonts (which we do not support at the 
moment). If possible, please change the font settings and/or re-distil this 
PDF to a lower Adobe Acrobat version and try again.

The following additional help (available under 'Read more ...') makes me think it must be about the fonts in the tex file:

A Type 3 font error is due to bit mapped fonts in your document or missing 
fonts used within the document. Bitmapped fonts display poorly on screen in PDF 
files and sometimes cause printing problems. We recommend for Word Documents 
that you embed your fonts and re-upload the file(s), or for PDF's save them 
using Acrobat 6 (or lower).

So here is my question: What can I do in the tex file so that it chooses fonts that are in all likelihood present on the server and not of the Type 3 flavour?

EDIT: Some more sleuthing prompted by egreg reveals the following: when I run pdffonts on the PDF file that the publisher creates from my tex files I get:

Error: PDF file is damaged - attempting to reconstruct xref table...
Error: Invalid XRef entry
Error: Top-level pages object is wrong type (null)

Oddly, when I compile them myself, pdffonts lists some fonts all of which are Type 1, CID TrueType, TrueType, or Type 1C. When I open the publisher PDF file with Adobe Reader and look at the Fonts I see two Type 3 fonts. How come ScholarShip manages to sneak them in and I don't?

Additional info: Some of the figures that are being included fail the Rapid Inspector for image files "fail due to fonts that are not embedded". Is that a hint?

11
  • 2
    It's very difficult to answer without seeing something more. Can you run your PDF file through something like pdffonts? Or show the list of fonts that Adobe Reader produces?
    – egreg
    Oct 17, 2012 at 9:41
  • @egreg Thanks for the hint - the post has been edited to give more info
    – DrSAR
    Oct 18, 2012 at 4:54
  • What fonts do you use? Maybe you have cm-super installed and use it, while the server doesn't have it and uses normal cm? Have you tried using lmodern?
    – Juri Robl
    Oct 18, 2012 at 5:33
  • It's quite a strange way to proceed. I send to my publisher the simple PDF file and he passes it to the printer's shop as is.
    – egreg
    Oct 18, 2012 at 8:28
  • We don't choose to proceed that way. If you are interested in publishing a paper with journal X you have little say on how the submission should work technically. In most cases, LaTeX is a fringe concern to them. Why they don't accept PDF is beyond me.
    – DrSAR
    Oct 18, 2012 at 8:36

7 Answers 7

12

I had the same problem. I replaced a \mathbbm{1} command I had with \mathds{1} and the issue has been resolved: no Type 3 Font Error in Manuscript Central.

2
  • Great Pointer with the indicator function.
    – CMichael
    Sep 10, 2016 at 10:36
  • Had the same issue and it fixed the problem. Thanks
    – hafezmg48
    Jan 3, 2023 at 21:54
10

If you have figures (e.g. pdf files) generated from the matplotlib, then you have to change the setting of matplotlib as follow:

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

The reason is Python matplotlib uses type3 font by default. Follow this guy for more information -> http://phyletica.org/matplotlib-fonts/

1
  • 1
    Yes, did the trick for me too, matplotlib version 3.6.2 Feb 22, 2023 at 10:25
7

This is not the precise answer to the original question but it explains how I got LaTeX manuscript submitted to manuscriptcentral when there are complains about Type3 fonts:

Some of the embedded figures were exported eps from matlab. It seemed that matlab is not able to handle font embedding correctly. However, once I imported them into inkscape and converted the svg to eps I was able to have eps figures that were accepted by Rapid Inspector and that also allowed the compilation on manuscriptcentral to proceed.

EDIT: For any of this to work it is obviously crucial to export vector formats from matlab (neither png nor tiff, which are raster image formats, will be of any use in inkscape). A general solution for exporting is described by matlab directly: http://se.mathworks.com/matlabcentral/fileexchange/23629-export-fig . Note that some people find the following customization of that procedure useful: https://stackoverflow.com/questions/14446960/exporting-eps-from-matlab .

2
  • Could you tell how exactly did you export matlab figures to Inkscape? Convertation using png or tif seems to be bad in quality.
    – sas
    Mar 12, 2015 at 15:55
  • @sas see the edit in my answer (and upvote if you find it helpful). The key is to create vector formats (eps or pdf) and not bitmap formats (like jpg, tiff or png).
    – DrSAR
    Mar 13, 2015 at 18:54
4

I encountered the same problem, but I resolve this problem by simply forcing the online submission system using Latex mode = PdfLatex, whose default is XeLatex.

1
  • Thanks, but how would you force an online submission system such as ManuscriptCentral to use PdfLatex instead of the default XeLatex. Can you please point me towards the settings involved ?
    – biswajit
    Nov 19, 2019 at 6:27
2

I had the same problem whenever I used matlab plot or python's matplotlib plot, which was saved in eps format initially. As mentioned by @DrSAR, use InkScape to remove this error.

Small hack.

  1. Open exported eps file in inkscape
  2. Save as FILENAME.svg format
  3. Again save as pdf format (.svg -> .pdf)
  4. Use this pdf file directly in your LaTeX code

The same hack can be used for pdf file as well.

Hack 2 (not efficient)

  1. Open exported eps file in inkscape
  2. now export it as image from inkscape (set required dpi, high dpi for high resolution)
1

My solution was to

  1. Compile the document with pslatex
  2. Convert it to pdf using, e.g., dvipdf

Depending on what your document looks like, pslatex may lead to other troubles. In my case, I had to use the journal style that required pslatex anyways. The troublemaker was a small required additional file, which I first compiled with pdflatex)

1

Just adding ` \pdfminorversion 4 ' to the preamble of the tex file sorted this out, as pdffonts was not displaying any type3 fonts. In case you need separate pictures, include this in the preamble there too.

You must log in to answer this question.

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