is now part of CreativePro.com!

Tackling Missing Glyphs

19

[This guest post was written by Jamie McKee, of MacKey Composition.]

Last week I was working on a chapter for a book that stopped me cold. The culprit? Missing glyphs! A glyph is a symbol that provides the appearance or form for a character–basically each character of a font is a glyph, whether a letter, a number, or a symbol. In fact, InDesign’s Glyph Panel is dedicated to finding, viewing, and inserting glyphs into your document.

In my case, I placed a pre-styled Word file into my template and found it littered with the dreaded pink boxes, which indicates either the font doesn’t exist or that the font applied to those characters does not contain the glyph specified. (To see the pink boxes, make sure you have ‘Substituted Fonts’ checked on in the Composition Highlight section of InDesign’s Preferences Panel; to see the image below larger, click it.)

This was far from the first time this has ever happened to me before, but what threw me was that I received no missing font warning, and checking the Type > Find Font dialog box showed that, indeed, as far as InDesign was concerned, there were no missing fonts. What? Then why the missing glyphs?

The first thing I did was bring up InDesign’s Preflight Panel. The Preflight Panel warns of problems that can prevent a document or book from printing or outputting as desired–such as with missing glyphs. I was using a profile that checked for missing glyphs, and Preflight told me there were 76 missing glyphs, as well as what they were, what their UID was, and what page they could be found on. As you can see from the screen shot below, I was missing a bunch of Greek small letters, and this makes sense as the chapter was full of mathematical formulas. Now that I knew what I was up against, the next problem was finding a fix.

I fired up Find/Change and went to the Glyph section. The Preflight Panel gives you the missing glyph’s UID (Unicode ID), so that is the code that should be entered into the Find Glyph’s ID box, making sure that Unicode is selected in the drop down menu.

The font in question, Trump Mediaeval LT Std, does not contain Greek small letters, but I knew that Times would, so that is the font I used in the Change Glyph section. If you’re not sure about what font to change the glyph to, just check the Glyph preview boxes: as you can see, it’s blank in the Find Glyph section, as Trump Mediaeval does not contain the glyph, while Times does. A quick Change All would eliminate the problem for the glyph in question, but as you can see from the Preflight Panel, there were multiple different missing glyphs. I could change each one separately, but I wondered if there was a faster, all in one solution.

A quick check online led me to the Finding Unassigned Glyphs thread on the Adobe InDesign Scripting Forum, where I saw that InDesign scripting guru Peter Kahrel had chimed in. I’ve worked with Peter before, so I fired off an email asking him about such a solution. In typical Peter fashion, me asking for advice turned into him writing a script that addressed the missing glyphs issue in one fell swoop, which Peter has agreed to share with the InDesign community. (You can find the Manage Missing Glyphs script here on Peter’s site.)

When you run the script, it offers the choice either to display the missing glyphs for each font, or to apply a font to all missing glyphs.

The script defaults to Minion Pro if it can find it on your computer; if not, you can select a font from a drop down list. The problem the script addresses has been bugging scripters for a long time, and the basic solution comes from optimizations of earlier work done by Peter Baumgartner with some extensions and an interface added on. With the push of one button, all my missing glyphs were immediately found!

David Blatner is the co-founder of the Creative Publishing Network, InDesign Magazine, CreativePro Magazine, and the author or co-author of 15 books, including Real World InDesign. His InDesign videos at LinkedIn Learning (Lynda.com) are among the most watched InDesign training in the world.
You can find more about David at 63p.com

Follow on LinkedIn here
  • Whoa! This is GREAT! Thank you Jamie, for getting the ball rolling on this script (and thank Peter K and Peter B!)

  • almaink says:

    CS3 InDesign gives JavaScript Error!
    Error number 15875
    Error String: The requested font family is not available.
    Line:30

    I get this error no matter what font I choose to replace with.

    Any idea why I get this error?

  • Jamie McKee says:

    @almaink

    The script is for CS5 and later. It may work in CS4 (wasn’t able to test), but it will not work in CS3 or before. Sorry!

  • almaink says:

    NP. I have CS5.5 and it works great in there. Thanks!

  • Kay says:

    GREAT – thx!

  • Apurv says:

    Looking forward to an update to this article, with “Missing glyph protection” feature now in InDesign CC.

    • Mohamad Majzoub says:

      Hello every one i’ve been using adobe from long time until i got this Missing glyphs protection warning
      the warning as appeared is (Missing Glyph Protection has occured. The new font could not be applied to all selected text. Please use Cmd+Option to override).
      and this in Indesign CS6. ME But i used this same font in adobe CS5 with no problemo. So I went to this helpful website and i read about the find and change glyphs and i try it but practically it’s not a helpful because every time i import a text and apply the font needed the pink boxed appear again.
      so please if any one knew a solution for this problem.
      Thank you

  • Jason says:

    Any word on how this affects character/paragraph styles?

  • Biju Mathew says:

    Its not working if the document have used postscript fonts. Is anybody have the solution to find the missing glyphs in postscript fonts….Please suggest

    • Jongware says:

      Biju, you can always use the Preflight panel to locate missing glyphs in any font. How to create a custom Preflight profile is described in the online InDesign Help, and in this Lynda.com video: https://www.youtube.com/watch?v=05jG4G5aCns

      • Biju Mathew says:

        Thanks Jongware for your Suggestion, I am familiar with Preflight, but my actual requirement is using script to find the missing glyphs and replace with characters merging. My script is working fine if its an open type font.

    • Olle says:

      I guess you can change the text to a non-postscript font, run the script, use find/change and make all character with the font you just change the missing glyphs to, to a “missing font” character style. Then you can change back to the postscript font and still be able to change the missing glyphs with the character style.

      • Biju Mathew says:

        Thanks olle, But the glyphs missing may not be same when we changing the text using another font.

  • Alex Silva says:

    Thanks a lot, man.

    Unlike your project, Preflight wasn’t highlighting the missing glyphs and I couldn’t find their Unicode number anywhere – they weren’t showing even if I used the “Load Selected Glyph in Find” option. Thank God for this script!

  • Deekshith says:

    Thanx

  • Ike says:

    Thank you so much, man. Your script saved me from endless hours of dumb work! Great stuff! :)

  • al says:

    My usual process is to go to pages and paste a glyph from Special Characters panel often it’s one I have in Favourites like say the CHECK glyph ✓ or a variation ✔︎ then I’ll select a font using the font variations window in Special Character panel. Then I will cut and paste it into my Indesign document.

    Ive just tried it with all my check mark glyphs that I use regularly in other apps and it pastes into ID as the notorious empty box marker indication a glyph/font/encoding mismatch. I’ve tried a bunch of Fonts. I’ve also checked in Suitcase where you can create a window with a Font selections’ glyphs. It has a search for Glyph function where i can enter the unicode number, in the case of CHECK MARK it is U+2713, so I type “2713” and it will find it in the glyph field if it’s there.

    So is the Special Characters panel lying to me say all these Fonts have aCEHCK mark glyph when they don’t?

    By now I could have drawn my own in AI and placed it as an inline object in the tables I’m working on. This is really annoying. It’s may be a problem with the OS X Font Variations, but if so how come I can see the Freak Glyph in all it’s glory and consistent with the FONT style.

    Why are ID and Suitcase not showing the same glyph IO can use in Pages and when I paste it into a ID document why does it not work? That method mostly works for me, but not tonight.

  • al says:

    Hey there’s one more way, the FIND/REPLACE panel has a tab (3rd) which is for finding and replacing glyphs. This is killer if you import text with a missing glyph in the font you are using (usually see above problem)

  • Evan Bruce says:

    A little old. I was having an issue with an error message popping up saying that the applied font was going to cause missing glyphs and wouldn’t let me apply the font. But I found the setting under Advanced Type in the preferences. This article did help me think critically about it and helped me find the answers my self.

  • >