[Tex/LaTex] check which fonts are embedded in the final pdf


One of the requirements I have from the publisher is to make sure all fonts are embedded into the pdf. I am using pdflatex to convert my .tex file into a pdf. How can I check to make sure all fonts are embedded? I am using Windows, MikTex 2.9.

I saw some answers about pdffonts utility but I don't have this in my distribution, I believe. It also doesn't come with Cygwin as I have that on my computer also.

Best Answer

Your PDF viewer can provide this information. Here are some font listings provided by Okular, for example.

all embedded

In this PDF, all fonts are fully embedded. This means that all characters from the font are included, even if they are not used in the document. Full embedding violates many commercial font licences and increases the size of the resulting PDF.

embedded subsets

Here, all fonts are embedded as subsets. This is what you should expect from pdfTeX in most cases. This means that all characters actually used in the document are included i.e. that subset of the font which is actually required to display the PDF are included. Characters not used in the document are omitted as they aren't required to display the document and just increase the size of the PDF for no benefit.


None of the fonts are embedded in this PDF, so Okular is substituting system fonts as best it can. Because I lack many of the fonts used by the document, fontconfig is substituting fonts I do have according to its configuration rules. For some reason, it thinks Noto Sans is a good substitute for almost everything, although I'm unclear why. I assume this is because it doesn't recognise all the font names (e.g. it knows Arial but not ArialMT). This is what you don't want as your document will not look the way you intended.