Fixing the "missing font" error

Macintosh is at the bottom of the page.

Situation

You open a Frame file and the console reports that a font was not found, so another was substituted. Additionally, you find that you cannot do a generate because Frame tells you it can't properly open all the files.

Load the font

The obvious fix. I just had to include it because it is, indeed, a fix.

"Don't care" solution

In this solution, you are positive you never used the font, but even if you did, the substitution FrameMaker provides would be okay anyway.

  1. Close the file.
  2. Turn off the "Remember Missing Font Names" preference.
  3. Open the file (you will get the error again) and save.

The next time you open it, the message will be gone.

"Programmed" solution: single font

In this solution, your goal is to substitute the missing font for one that is different than the choice FrameMaker provides. In this example, let's say that Frame wants to substitute Times, but you would really rather use New Century Schoolbook.

  1. In preferences, disable Remember Missing Font Names.
  2. Exit Frame. Do not save the document!
  3. Edit the maker.ini line "DefaultFamily=". In most cases it is Times New Roman, Times, Tms Rmn. Insert the font of choice at the front:

    DefaultFamily=NewCenturySchlbk, Times, Times New Roman, Tms Rmn

    You don't have to have anything after your initial choice, but it doesn't hurt. It simply tells Frame to try each one in this order.
  4. Make sure your new font (New Century Schoolbook) is active.
  5. Start Frame, and open the file. Console should report that your original font is missing and the new font was substituted.
  6. Save the file. The change is complete.

"Programmed" solution: multiple fonts

The overall approach is similar to the single-font problem, except that the solution is made more complex by the need for numerous changes. In summary, you will utilize Frame's substitution tables found later in the ini file. It is beyond the scope of this page to train the reader in how to work with this file (actually, the comments in the maker.ini file are rather descriptive); however, I can offer these tips:

  1. Read up on the aging but still valid Adobe Knowledge Base article Common Font Aliases for FrameMaker 5.x for Windows.
  2. When you have more than one A=B line covering the same font family, place the most detailed lines first, and leave the wildcards for later:

    FontX, Italic, *, Regular = FontY, Oblique, *, Regular
    FontX, *, *, * = FontY, *, *, Regular


    In this example, the *, *, * catches those that don't get caught by the first one.
  3. It's not required if your ini is coded properly, but you can use the DefaultFamily setting (described above) to grab your most commonly used font.
  4. Over the years I've developed (what I think anyway) is a pretty nifty font conversion section of the maker.ini file. It covers lots of common PostScript <> TrueType conversions, some Bitstream <> Adobe, and a few other items. You can get it right here.

About books and generates . . .

You may be in a situation where you need to do a generate, but in order to do so you would have to override the fonts . . . but you don't want to because doing so would mess up the design. The solution is to open the file or files that are missing the fonts; since they are already open during the generate, you won't get the "cannot open file" error message.

If you need to open all the files of a book, you do NOT have to run down the book list and open each one separately. Instead, you can simply Shift+click or Ctrl+click the files you want (Ctrl+A, in Windows, selects the whole list), then press Enter. Each file will open (but, of course, you may have to acknowledge missing font messages).

Macintosh

The Mac version of Frame does not have an ini file you can edit. However, you can use ResEdit to hack your Frame executable file. Sadly, I have over the years lost the instructions on how to do this. If I ever come across it, I will add it here.