January 8, 2009...12:03 pm

PDF Fonts – Full Embed or Subset?

Jump to Comments

In my last post, I discussed Creating a Book’s Print-Ready PDF and noted that you should make sure that all fonts used in the document are fully embedded. What, you may wonder, does “fully embedded” mean and are there are other options?

Before delving into font embedding, let’s consider why we use PDF files in the first place.  As you are probably already aware, a PDF file is intended to be device and operating system independent, producing a displayed and/or printed page that looks the same on all of them.

However, if you create a PDF file that does not include the actual fonts used in the document (aka embedded fonts) and the person viewing that file does not have the appropriate font on his device/system, a substitute font will likely be displayed. If a special character was used in that original font that is not available in the substitute…you may see nothing more than a blank square where that character should be.

The best, most reliable, way to package your PDF for the printer is to embed all fonts. It is possible to embed only a subset of each font used, but that would only include the specific characters and styles actually used in the document. So there are essentially three options:

  1. Embed no fonts (this produces the smallest file size but requires the end user to have the exact fonts you used to create the file or accept the system’s substitute)
  2. Embed only subsets (larger file size but the end user can view the file properly even without the same fonts on their equipment, but they cannot use Adobe Acrobat to make any editorial changes at all unless they have the exact same font)
  3. Fully embed the fonts (the largest file size but it won’t matter whether the end user has the same fonts or not — they can still view, print and edit the file)

Don’t let any of the above comments lead you to believe that it is ever a good idea to use Adobe Acrobat to edit a file — not even for minor corrections — particularly if you are sending it to a book printer. The capability is there but it is always better to correct the source file and recreate the PDF.

When preparing a PDF for your book printer, you usually want to embed all fonts and subset at 100%. This will ensure that your printer uses the fonts you’ve embedded even if they have the same font on their system. This also effectively prevents anyone from using Adobe Acrobat to edit the file, and avoids the inherent pitfalls in doing that.

Most printers today will accept one of the standards built-in to Acrobat Distiller. We usually use the PDF/X-1a:2001 standard unless the printer specifies a different standard or custom settings. (We’ve settled on that standard primarily because most of our books are printed via Lightning Source Inc and they requires its use.)

There are other software programs that can create PDF files but the best option is still Adobe’s own Acrobat (not the free reader software, the full-up package). You can also export PDF from Microsoft Word using Microsoft’s add-in, but it does not allow you to specify precisely how to embed fonts. So, I don’t recommend it.

You could also create a PDF from MS Word by first creating a Postscript file (e.g., using Adobe’s free generic postscript printer software). If you do that, you will be able to specify font embedding. You should select the “Print to File” option and then click on “Properties.” You will see a pop-up window like this:

Postscript Options

Be sure to de-select the check box that reads “Do not send fonts to…” (the exact wording for the destination may vary from the above. You can also select an appropriate default setting in the first drop-down menu. In the example above, I selected the PDF/X-1a:2001 standard. If you click on the “Edit” button next to the defaul setting drop-down, you will get another pop-up window showing the settings for the various options. If you click on the “Font” option, you will see a dialog box like this:

Font Dialog

These are the settings you want to see, unless your printer requires something else. Note the warning “Only fonts with appropriate permission bits will be embedded.” What’s that all about?

Most fonts today all full embedding in a PDF for distribution. However, you might encounter one whose license prohibits that. If you do, Adobe will not embed them in the PDF. You then have two choices for that particular font: (1) use a different font or (2) convert that font to outlines (in which case, the font will be treated as a series of graphics). The problem will most likely only occur with older fonts (maybe 10 years old or older).

If you’re designing your book using Adobe InDesign, you can export a PDF using any of the standards available in Adobe Distiller and you can set the options for font embedding.  The only “problem” with the resulting file is if your printer requires the PDF to have been created using Acrobat Distiller (LSI does) — the metadata for a PDF exported from InDesign clearly shows that it was not created using Distiller. If your printer is not that fussy, it probably won’t matter.

You may be tempted to use the printer option in, for example, MS Word, labeled “PDFWriter.” Don’t do it! PDFWriter is OK for basic text files you want to share with others but not for printing press purposes. It’s preset setting for font subsetting is 35%, and that won’t do for book printing purposes.

Bottom Line: When submitting files to your book printer, you should embed all fonts and select the option to subset below 100%. Unless, that is, your printer specifies different settings; in that case, follow their directions.

8 Comments

  • Leonard Rosenthol

    While you are completely correct about the need to embed fonts, you are, unfortunately, also under a LOT of common misconceptions about fonts and how they are used in Acrobat and PDF. I hope you won’t mind if I clear them up…

    First and foremost, you should know that even if you ask Distiller to do a full embed (via the settings you recommend) it will still perform a subset embedding for most/all TrueType and OpenType fonts. This is because such fonts are quite large (as they are based on Unicode and offer 10’s of thousands of glyphs) and there is no actual benefit to a full embed.

    Second, as the follow-on to that, is your comment about needing the full embed for “late stage editing” is simply wrong. Adobe Acrobat will NEVER use the embedded font data for TouchUp – it will ONLY use an installed font that matches the embedded one. It must do so for legal reasons. Therefore, subset vs. full doesn’t matter – you still need the font resident on your computer to edit the text.

    Also, whether the font is subset or fully embedded has NO bearing on whether the embedded or local font is used for rendering. When a font is embedded it is ALWAYS used for rendering – local fonts are NEVER used. To do so would violate the PDF standard itself (and also ruin the whole point of embedded fonts!)

    About the use of Distiller and Postscript….There is NEVER any reason to produce a separate Postscript file. Printing to the Adobe PDF Printer is the EXACT SAME operation as printing to Postscript and feeding it to Distiller – just simpler. And you are correct, the (VERY OLD) PDFWriter that came with Acrobat 3-5 should NEVER be used – but I doubt that many people still have that installed and usable since it hasn’t been part of Acrobat for almost 10 years now. BUT don’t confuse that with PDFMaker – the add ons that Acrobat puts into MSOffice (and other apps). PDFMaker is a VERY GOOD thing in that it extends the Adobe PDF Printer with additional features. Use it!

    You also make a recommendation to uncheck the “Don’t Send Fonts to Adobe PDF”, PLEASE DO NOT DO THIS! First, the setting name is misleading which is why we changed it in recent versions of Adobe Acrobat to “rely on system fonts and not document fonts”, which better explains the function. You WANT this setting enabled because it will produce a document with BETTER (more complete) font information. So please, turn that option back on and make sure to recommend to others that they do as well!

    Thanks for using PDF and hopefully this information will help you make even better PDFs in the future.

    Leonard Rosenthol
    PDF Standards Architect
    Adobe Systems

  • First, I’d like to thank Leonard for taking time to explain Acrobat in more depth. However, with a bit of trepidation, I am going to have to take issue with (or at least question) a couple of Leonard’s comments:

    First and foremost, you should know that even if you ask Distiller to do a full embed (via the settings you recommend) it will still perform a subset embedding for most/all TrueType and OpenType fonts.

    Actually, I do understand that but decided not to try to explain it. The purpose of selecting to embed all fonts AND to set the subset limit at 100% (meaning that any font in the document that uses less than 100% of the font’s glyphs will be subset) is, as I understand it, to force the printer’s RIP system to use the fonts in the document rather than any system fonts. This should preclude minor variations in fonts with the same name.

    Also, whether the font is subset or fully embedded has NO bearing on whether the embedded or local font is used for rendering. When a font is embedded it is ALWAYS used for rendering

    By “rendering” are you also including a printer’s RIP process? That, after all, is what I am concerned about.

    There is NEVER any reason to produce a separate Postscript file. Printing to the Adobe PDF Printer is the EXACT SAME operation as printing to Postscript and feeding it to Distiller – just simpler.

    I agree that there is no difference. However, there is one VERY GOOD reason for using the document -> Postscript -> PDF path. Your printer may require it! The largest digital book printer, Lightning Source Inc., does require it.

    LSI clearly states: “Adobe Acrobat Distiller is the only PDF producer that has proven to provide consistent and stable PDF files for printing with our processes.”

    I’d say that’s a very good reason. Especially considering that it is easy for them to detect how the PDF was created during preflight of the file. If you have an issue with that requirement, I suggest you take it up with them. Since we prepare most of our and our clients’ books for printing with LSI, we adhere to their requirement.

    We also prepare books for other printers using the two-step process, too. Since the result is the same, it is easier to have one process to produce the PDF.

    Your last point makes me wonder. We run Adobe Acrobat 7 with its bells and whistles. We have not upgraded because, to date, we have not see a reason to do so. We have routinely created PS files with the “don’t send fonts to Adobe PDF” option unchecked, based on recommendations from printers. If leaving it (or “rely on system fonts and not document fonts”) unchecked forces the printer’s RIP to use the embedded fonts, that is exactly the result we want. We don’t want the printer’s system fonts used instead. Why would we?

    Perhaps some of the disconnects, between why we do it the way we do and why you recommend what you do, is because we are primarily concerned with submitting PDF files to book printers.

    I use a different process and very different settings if I produce a PDF for viewing on a computer monitor or for desktop printer output.

    But that’s not what I was addressing above.

  • Leonard Rosenthol

    The recently minted official ISO version of PDF, ISO 32000-1, defines the term “conforming reader” to mean a program that knows what to do with a PDF including properly render (draw) it to screen or paper. A similar concept exists in all previous versions of the Adobe PDF Reference as well.

    A “conforming reader” (such as a RIP) is REQUIRED to use the embedded font data and NOT substitute any other font data. This is true regardless of whether the font is fully or subset embedded. If you know of any RIP that isn’t conforming to this (or any other requirement), I would be very interested to hear about it.

    Concerning the use of Postscript, the process you describe of document->Save as Postscript->Distiller->PDF is the manual version of document->print to Adobe PDF->PDF. The Adobe PDF printer is, under the hood/behind your back, creating that same Postscript file that you are manually and then programmatically sending it to Distiller for processing. As such, there is no reason for you to waste your time/effort to do it manually – let Adobe do the work for you! (I am aware of Lightning Source’s outdated procedures and I have been trying to get them fixed for months now!)

    The “Don’t send fonts” preference has NOTHING to do with what happens at the printer’s end – it only impacts how the PDF itself is created by the Adobe PDF printer. Once created, the PDF is bound by the rules that I mentioned earlier.

    The reason that you WANT that box checked has to do with a little used feature of MSWord (and some other apps). Some of these applications think they know more about fonts than Adobe does and so they produce their own “version” of the font in the generated Postscript. If that preference is unchecked, as you recommend, then this “bogus font data” will be sent to Distiller and used to produce bad font data in the final PDF. However, if you leave it checked (as is the default), then Distiller will ignore any font information in the Postscript and go directly to the “source” – the installed font in your system – to produce high quality font information in the final PDF.

    Hope that clarifies things. If not, please feel free to post some more…

    Leonard

  • Hi,

    I know that this article and the comments posted were from a couple of months ago, but I was doing a search on font embedding and subsetting and happened upon it. Walt’s article was very informative and helpful until I ready Leonard’s comments and ended up really confused. So, I decided to do a little more research and went straight to the horse’s mouth. I visited the adobe.com website to see what I could find out and I also used the Help Information available in Acrobat Distiller v 6.0. Based on what I read and understand you both seem to be right and both seem to be wrong on 2 different issues. Leonard does seem to be correct regarding the text editing of a PDF. According to everything I could find on the Adobe website, it does seem to be, true, that even if a font is entirely embedded in a PDF file you still cannot edit the text in the PDF file unless you have the exact same font on your computer (unfortunately, I too, have seen lots of websites say that as long as the entire font is fully embedded then you can edit the text with no mention of the fact that you still have to have the font installed on your computer).

    As far as the need to subset fonts to ensure that your fonts are used and not the printer’s, Walt seems to be right about this as the following is a direct quote from the Adobe Acrobat 6.0 Help Menu on the topic: “About font embedding and substitution”

    . . . “You can embed the entire font or just a subset of the characters used in the file. Subsetting ensures that your fonts and font metrics are used at print time by creating a custom font name. That way, your version of Adobe Garamond, not your service providers version, can always be used by the service provider for viewing and printing”

    In spite of reading this, I’m still a bit confused on this topic as Leonard (who says he works for Adobe Systems) said so passionately that “When a font is embedded it is ALWAYS used for rendering – local fonts are NEVER used. To do so would violate the PDF standard itself (and also ruin the whole point of embedded fonts!)” So, who is correct??? I would have to assume that the information published in the Acrobat Help Menu (which is coming directly from Adobe) is correct and that Leonard is wrong. If you see this posting, Leonard, I hope that you will be able to clarify and provide some insight into this discrepancy Thanks.

  • Leonard Rosenthol

    Shel – so not only do I work for Adobe, but I am a senior engineer on the Acrobat engineering team, so you can safely trust what I say when it comes to Acrobat and PDF.

    I will also point out that you are quoting the documentation for a version of our software that is over 5 years old (we are currently on version 9) and if you check the current documentation you won’t see that egregious error.

    Hope that clears things up!

    Leonard

  • Hi Leonard,

    I did check the current documentation for Acrobat v. 9.0. Specifically, I went to the adobe.com website and downloaded the following PDF file: acrobat_standard_9.0_help.pdf

    I then located the information on Font embedding and substitution (page 98 of the PDF file) and this is what it says in paragraph two:

    “You can embed the entire font, or just a subset of the characters used in the file. Subsetting ensures that your fonts and font metrics are used at print time by creating a custom font name. That way, for example, your version of Adobe Garamond, not your service provider’s version, is always used by the service provider for viewing and printing.”

    At the bottom of the page it says that this information was “Updated 11 March 2009″. So, does this mean then that Adobe has once again included the erroneous information? If this information is incorrect, can you have Adobe correct the documentation and post a new help file so that other people (like myself) who are trying to get a better understanding of how fonts are used in a PDF won’t be misinformed.

    Thank you!

    Shel

  • Leonard Rosenthol

    Grumble…Grumble…Grumble…

    Thanks for the info – I’ll get the documentation folks to fix it.

    Leonard

  • Leonard,

    Thanks for taking the time to check into this; I’m really looking forward to seeing the revised version (do you know when it will be posted?).

    Also, earlier on, you said that a lot of people are under some common misconceptions regarding how fonts are used in a PDF and Acrobat. Since this definetly seems to be true, what would really be great, is if Adobe could publish a Tech Sheet on “Common Misconceptions regarding PDFs and Acrobat” and also an explanation (in layperson’s words) of exactly what happens and how the fonts are used when a PDF is opened on another person’s computer or sent to a printer or RIP.

    Also, if it’s not too much trouble, I wonder if you could answer another question regarding PDFs:

    If a person receiving a PDF file has the same fonts on their computer as what was used to create the PDF, can they automatically edit the text in the customer file or are the editing capabilities controlled by whether the fonts in the PDF were set to “embed all fonts” or “subset”. In other words, does the creator of the PDF have to set their PDF to “embed all fonts” in order to allow someone else to edit the text and if they choose “subset” does this prevent someone from editing the text (even if that person has the same fonts on their computer)?

    Shel


Leave a Reply