Fred presents a very cogent discussion of how fonts can hide out. 


I would add that one can dictate which font substitutes for another
(important when you turn off Remember Missing Fonts) by using the [Fonts]
area of the maker.ini file, although that area of the .ini file has gotten
rather complicated.

And one relatively recent improvements to the interface is the Fonts Pod
where you can track down and replace fonts that are actually in the
documents body, master and reference pages. It even tells you where the
substitution if taking place.

Mif washing can get rid of errant font information as well, especially
information that ends up being in the book file itself. The book file seems
to collect information from its components and can retain that information
after the components have been cleansed.




[] On Behalf Of Fred Ridder
Sent: Thursday, August 15, 2013 8:06 AM
To: STEPHENSON pascale;
Subject: RE: Unavailable fonts message - incorrect?


You posting seems to reflect several small misconceptions about how
FrameMaker works. Let me see if I can address them one at a time.

First, a single "unavailable fonts" message in one file can, in fact, also
be the cause of subsequent "unresolved cross-references" messages in other
files. When you open any file that contains cross-references, FrameMaker
attempts to refresh all of those references by looking at each target
location and grabbing the current text string and numbering properties
(autonumbering and page numbering). If any of those cross-references point
to locations that are in other files, FM has to silently open each of those
files to refresh the references. But if a "target" file has an unavailable
font condition, that error prevents FM from completing the "silent open"
operation that is necessary to resolve the cross-reference. The result is an
"unresolved cross-reference" message. But note that if the file with the
unavailable font condition is already open when you open the file that
refers to it, you will *not* get an "unresolved" message because FM doesn't
need to do a silent open.

Second, FrameMaker *does* report which fonts are unavailable, but does not
do it in the warning message itself. Instead, you have to look in the
FrameMaker console window, which most of us are in the habit of ignoring or
dismissing without bothering to read it.

Third, the unavailable font does not have to be applied to any content that
appears in the body of the document to cause the warning message. It is
enough for the font to be specified in the definition of some format that
you don't actually use, and this font specification can be in any of your
catalogs--a character format, a paragraph format, a cross-reference format,
or a table format. Table formats are a particular problem because each
format definition invisibly embeds the character and paragraph formatting
for the table title, and for each cell in the heading row, the footing row,
and the first body row of the table that was the prototype when the format
was defined; you will never be able to find these using the FM GUI unless
you create an instance of each table format that exists in your catalog.
Unavailable fonts can also lurk on master pages and reference pages which
are not examined when you do a "find font" operation (which only searches
the context in the current view) or List of References operation (which only
looks at body pages). They can even be hiding in certain types of graphic
objects that contain font specifications (PDF, EPS, WMF, EMF).

Fourth, to get rid of an unavailable fonts condition you need to *UN-check*
the "Remember Missing Font Names" preference. Remembering the names means
that FM will do a *temporary* substitution of an available font for an
unavailable one, but will retain the original, unavailable font
specification in the version of the file that it saves. What you need is for
FM to *forget* the names of the unavailable fonts and save the file with the
substituted font specifications. So the procedure would be:

1.      Open the offending file, dismissing the "unavailable fonts" warning.
2.      Examine the FrameMaker console to determine whether all of the
substitutions FM has made are appropriate (e.g., no sans-serif font subbed
for a serif, no text font subbed for a symbol or wingding font).
3.      Close the file.
4.      Turn OFF "Remember Missing Font Names".
5.      Open the file. Notice that the warning message has changed, and that
FrameMaker now warns you that it will be permanently *replacing* the fonts
rather than substituting for them. 
6.      Examine the file to make sure it looks OK.
7.      Save the file. Many people neglect to do this because they haven't
made any explicit edits or format changes, but the font change will not
"take" and be carried forward unless the file is saved after you let FM make
the replacement.
8.      Turn "Remember Missing Font Names" back ON. (It is normally a very
good idea not to reformat a file from a colleague or client to match your
own less complete font library.)

This *should* take care of the problem unless the bad font name is embedded
in a graphic.

Another approach that some users swear by is to save the offending file as
MIF and then use a text editor to search for the names of the unavailable
fonts, as reported in the FM console. After making the substitution with the
font editor, the file is saved as MIF, then opened from FrameMaker and saved
back to .fm file format. This approach still will not look inside graphics
objects, but I have personally seen cases where the source .fm file
contained a *completely* spurious font specification (for a Chinese font in
my case) that was removed simply by passing it through the FM->MIF filter
(i.e., the bad font was not findable in the the MIF file and was gone when
the file was restored to .fm format).

-Fred Ridder


You are currently subscribed to framers as

Send list messages to

To unsubscribe send a blank email to
or visit

Send administrative questions to Visit for more resources and info.

Reply via email to