When I "place" a page of a LaTeX document into Adobe Illustrator CS6 without "linking" the original file, it attempts to use system fonts (not embedded fonts). As long as I have all the fonts loaded on my system, most everything looks fine, except some bmatrix (and occasionally other large) brackets.

Illustrator replaces them with the x-boxes or other strange characters, shown below. Interestingly, Illustrator doesn't complain about not having the font, which it's usually good about doing.

I wonder if LaTeX's using some special bracket font my system doesn't have?

Here's a MWE.




    \end{bmatrix} \\
        1 & 0 
    \end{bmatrix} \\
        1 \\ 0 
    \end{bmatrix} \\
        1 & 0 \\
        0 & 1


Here is the output file in a pdf viewer.

pdf looks fine

And here it is in Illustrator.

in illustrator

  • 1
    @RicoPicone, your code snippet is not compilable. we need complete small document beginning with \documentclass{...} and ending with\end{document}` . – Zarko Feb 6 '18 at 3:40
  • @Zarko, I have now included a MWE. – Rico Picone Feb 6 '18 at 5:52
  • For what it's worth, this issue persists when loading only the amsmath package. Also, every once in a while (apparently not deterministically!), when "place"ing the file, Illustrator will complain it does not have font "SFRM1000" ... which I understand to be a Computer Modern font. I've tried installing all CM fonts I can find on my macOS, but to no avail. – Rico Picone Feb 6 '18 at 6:28

After thrashing about with fonts for a long time, I decided to avoid the entire question of fonts by outlining them before "place"ing them in Illustrator. This has the advantage of solving the issue for all fonts, but doesn't allow text editing, per se—not a problem for me.

An automatic way of doing this with Ghostscript is as follows.

gs -o file_outlined.pdf \ 
  -dNoOutputFonts \
  -dColorConversionStrategy=/LeaveColorUnchanged \
  -dEncodeColorImages=false \
  -dEncodeGrayImages=false \
  -dEncodeMonoImages=false \ 
  -sDEVICE=pdfwrite \

The outlining is given by the -dNoOutputFonts flag. The other flags aren't necessary, but (as I understand) avoid re-encoding images in the file.

I realize this is more of a workaround solution, so I will happily entertain more legitimate solutions.

Not the answer you're looking for? Browse other questions tagged or ask your own question.