7 Replies Latest reply: Jul 8, 2008 2:18 AM by Tigdave RSS

    Font aliases don't work for certain fonts

    Tigdave Community Member
      I work on the same FM documents on both UNIX and Windows. Unfortunately, the fonts supplied with FrameMaker on the two platforms are structured differently, although they have the same name. In the past (FM 4 to 5.5.6) I got around this problem successfully by standardising on the UNIX font names and structures, and in Windows setting up font aliases in the WindowsToFrameFontAliases section of the maker.ini file.

      The first two questions that spring to mind are:
      Why does Adobe supply inconsistently structured fonts for the two platforms in the first place?
      Why (given the inconsistent fonts) doesnt the default maker.ini file have font aliases in place to cater for the inconsistencies?
      These inconsistencies really throw a spanner in the works when it comes to achieving seamless cross-platform compatibility for documents.

      Now to the problem at hand. I am having problems getting the font aliases to work in Windows FrameMaker 8. Some of the aliases dont work, and some of my attempts at setting them up disturb FrameMaker enough that it cannot read a file without crashing. (If you try editing the aliases make sure you keep a working backup copy of the maker.ini file.)

      I am using the settings and aliases shown below in the maker.ini file in an attempt to compromise the differences between fonts that have come with UNIX FrameMaker in the past 10 years or so, and Windows fonts that have come from various sources including Windows FrameMaker.
      Can anyone find errors in my syntax or confirm the bugs?
      I might be using the wrong word for Bold in some cases, for example.
      And as far as I can tell, the wildcards seem to work in FM8 on Windows XP. (I remember that in Windows 95 the wildcards didnt work so you had to use an explicit entry for each combination of bold and italic.)

      Start of settings:

      Angles=Regular, Kursiv, Slanted, Oblique, Italic, Obliqued, Inclined

      Variations=UltraCompressed, ExtraCompressed, Compressed, Condensed, UltraCondensed, Narrow, Regular, Wide, Poster, Expanded, Black, 45, 46, 55, 56, 65, 75

      Weights=Thin 100, ExtraLight 200, SemiLight 250, Light, Light 300, Book, Book 300, Regular 400, SemiBold, SemiBold 600, DemiBold, DemiBold 600, Bold 700, Bold45, Bold57, ExtraBold 800, Heavy 900, Bolded 700

      [FontAngleAliases]
      Obliqued=Oblique

      [FontWeightAliases]
      Medium=Regular
      Roman=Regular
      Semi=SemiBold
      Demi=DemiBold
      Bolded=Bold

      ; And now the meat of the problem:

      [WindowsToFrameFontAliases]

      ; Aliases for Adobe Garamond Pro. I cant get the SemiBold to work.
      ; I cant find a combination that gives me all three weights within the
      ; same font.
      Adobe Garamond Pro,*,Regular=Adobe Garamond Pro,*,Regular,*
      Adobe Garamond Pro,*,Bold=Adobe Garamond Pro,*,SemiBold,*
      Adobe Garamond Pro Bold,*,Bold=Adobe Garamond Pro,*,Bold,*

      ; Try to get Bookman Old Style to appear as Bookman but it doesnt work,
      ; at least not for Regular, Light, Bold, or DemiBold weights.
      ; The font still appears in FM as Bookman Old Style.
      Bookman Old Style,*,Light=Bookman,Regular,Light,Regular
      Bookman Old Style,*,DemiBold=Bookman,Regular,DemiBold,Regular

      ; Try to make the separate Minion Pro SmBd font appear as an additional
      ; SemiBold weight in the Minion Pro font. Doesnt work.
      Minion Pro SmBd,*,Bold=Minion Pro,*,SemiBold,Regular

      ; Palatino alias works but still gives a nasty error pop-up and messages
      ; in the console about missing fonts if you read in a document file
      ; that uses Palatino.
      Palatino Linotype,*,*=Palatino,*,*,*

      ( End of settings )
      (I don't have enough room to list the aliases that DO work.)
        • 1. Re: Font aliases don't work for certain fonts
          Community Member
          > Why does Adobe supply inconsistently structured fonts for the
          > two platforms in the first place?
          > Why (given the inconsistent fonts) doesn't the default maker.ini
          > file have font aliases in place to cater for the inconsistencies?

          These questions are easy: Adobe doesn't care any longer about any
          customer's need for cross-platform compatibility. Anything that's
          not Windows will be left as is and hopefully those damn customers
          will stop insisting on using it.

          > Can anyone find errors in my syntax or confirm the bugs?

          I can just give a few hints that really aren't based on any
          real-world experience with FM 8.

          > Weights=Thin 100, ExtraLight 200, SemiLight 250, Light, Light 300,
          > Book, Book 300, Regular 400, SemiBold, SemiBold 600, DemiBold,
          > DemiBold 600, Bold 700, Bold45, Bold57, ExtraBold 800, Heavy 900,
          > Bolded 700

          Unless this is the way the Weights line was/is by default in FM 8,
          you should try deleting any duplicates without the numeric suffix
          (e.g. "Light") and make sure all entries have a numeric suffix.

          > Adobe Garamond Pro,*,Regular=Adobe Garamond Pro,*,Regular,*
          > Adobe Garamond Pro,*,Bold=Adobe Garamond Pro,*,SemiBold,*
          > Adobe Garamond Pro Bold,*,Bold=Adobe Garamond Pro,*,Bold,*

          Are you sure you intend to speciify the Bold style of the Bold
          version of the font? Is there really a "Bold Bold"?

          > Bookman Old Style,*,Light=Bookman,Regular,Light,Regular
          > Bookman Old Style,*,DemiBold=Bookman,Regular,DemiBold,Regular

          If you use the asterisk for the Angle, you should do the same
          in the right part of the spec. Or specify every combination
          individually, like for AvantGarde in the default maker.ini:
          AvantGarde, Italic, Regular=AvantGarde, Oblique, Book, Regular
          AvantGarde, Italic, Bold=AvantGarde, Oblique, DemiBold, Regular
          AvantGarde, Regular, Regular=AvantGarde, Regular, Book, Regular
          AvantGarde, Regular, Bold=AvantGarde, Regular, DemiBold, Regular

          > ; Palatino alias works but still gives a nasty error pop-up and messages
          > ; in the console about missing fonts if you read in a document file
          > ; that uses Palatino.
          > Palatino Linotype,*,*=Palatino,*,*,*

          This may not be an error, since the line tells FM what to do when
          encountering "Palatino Linotype", not "Palatino".

          --
          /Thomas Michanek
          • 2. Re: Font aliases don't work for certain fonts
            Helge Blischke Community Member
            (Thomas):

            > Why does Adobe supply inconsistently structured fonts for the
            > two platforms in the first place?
            > Why (given the inconsistent fonts) doesn't the default maker.ini
            > file have font aliases in place to cater for the inconsistencies?

            >These questions are easy: Adobe doesn't care any longer about any
            >customer's need for cross-platform compatibility. Anything that's
            >not Windows will be left as is and hopefully those damn customers
            >will stop insisting on using it.

            I tend to agree to this appreciation. But back to the topic:

            We managed cross platform font compatibility in a similar manner from FrameMaker 4 up to 6 between Windows, UNIX, and even MacOS <= 9. On UNIX, in all these version it was - though the initial setup took a lot of tweaking - possible to maintain consistency both from version to version and cross platform by thoroughly editing the fontmap file in $FMHOME/fminit/fontdir.

            Starting with version 7, however, UNIX FrameMaker uses a (presumably broken) cooltype library implementation which tries to extract the font attributes - family name, weight, angle, and variation - from the font files themselves. This leads to weird results (e.g. tagging "BoldOblique" as a variation but splitting "BoldItalic" correctly into weight "Bold" and angle "Italic". Declaring aliases in the fomtmap file - as worked with the previous versions - is silently ignored.

            This weird behaviour not only breaks cross platform compatibility but even makes migration of documents from e.g. FM6 to higher versions a nightmare.

            With FM8 and the introduction of OpenType support, the situation gets even worse, as the cooltype stuff seems to interfere with the OTF interpretation.

            Helge
            • 3. Re: Font aliases don't work for certain fonts
              Tigdave Community Member
              I think some of the problem was indeed the way in which my weights were defined in the [Fonts} section, so well spotted Thomas. Glad to see that your sage advice has travelled well from your days at alt.txt.frame. FYI, the settings listed below do the job, although my FM now crashes when I quit. I don't know if this is from the aliases or something else.

              What would really put on the final polish on cross-platform document transparency is if the...
              SuppressFontAlertOnOpen=On
              ...setting in the maker.ini file actually worked - like it did in FM 5.5.6. But alas, the nasty pop-up message (which tells you that FM is going to substitute some fonts) does not get suppressed, and so destroys any chance of doing a simple update on the book. You have to open, save, and shut each file in the book first (with "Remember missing font names" turned off). My books have hundreds of files. Damned shame, that. Maybe the folks at Adobe could try restoring this trivial little piece of programming code for those of use for whom it is a major issue.

              [Fonts]
              Angles=Regular, Kursiv, Slanted, Oblique, Italic, Obliqued, Inclined

              Variations=UltraCompressed, ExtraCompressed, Compressed, Condensed, UltraCondensed, Narrow, Regular, Wide, Poster, Expanded, Black, EL, L, R, M, B, H, 45, 46, 55, 56, 65, 75

              Weights=Thin 100, ExtraLight 200, SemiLight 250, Light 300, Book 300, Regular 400, Medium 500, SemiBold 600, DemiBold 600, Bold 700, Bolded 700, ExtraBold 800, Heavy 900

              [WindowsToFrameFontAliases]
              Adobe Garamond Pro,*,Regular=Adobe Garamond Pro,*,Regular,*
              Adobe Garamond Pro,*,Bold=Adobe Garamond Pro,*,SemiBold,*
              Adobe Garamond Pro Bold,*,Bold=Adobe Garamond Pro,*,Bold,*
              ; No alias necessary for Book Antiqua, which is the same on both platforms
              ; Book Antiqua,*,*=Book Antiqua,*,*,*
              ; Changing Bookman Old Style also requires changing SemiBold to Demibold.
              Bookman Old Style,*,Light=Bookman,*,Light,*
              Bookman Old Style,*,SemiBold=Bookman,*,DemiBold,*
              ; No alias necessary for Century Schoolbook, which is the same on both platforms
              ; Century Schoolbook, *, *=Century Schoolbook, *, *, *
              Courier,Italic,*=Courier,Oblique,*,Regular
              Courier Std,Italic,*=Courier Std,Oblique,*,Regular
              Helvetica,Italic,*=Helvetica,Oblique,*,*
              ; I dont actually have the HelveticaNarrow font, so I cant test the next two.
              HelveticaNarrow,Regular,*=Helvetica,Regular,*,Narrow
              HelveticaNarrow,Italic,*=Helvetica,Oblique,*,Narrow
              Arial CYR,Regular,*=Helvetica Cyrillic,Regular,*,Regular
              Arial CYR,Italic,*=Helvetica Cyrillic,Inclined,*,Regular
              Times New Roman CYR,Regular,*=Times Ten Cyrillic,Regular,*,Regular
              Times New Roman CYR,Italic,*=Times Ten Cyrillic,Inclined,*,Regular
              Letter Gothic Std,Regular,*=Letter Gothic Std,Regular,*,Regular
              Letter Gothic Std,Italic,*=Letter Gothic Std,Slanted,*,Regular
              Minion Pro SmBd,*,SemiBold=Minion Pro,*,SemiBold,Regular
              News Gothic Std,Regular,*=News Gothic Std,Regular,*,*
              News Gothic Std,Italic,*=News Gothic Std,Oblique,*,*
              Palatino Linotype,*,*=Palatino,*,*,*
              ; No alias necessary for Times, which is the same on both platforms
              ;Times,*,*=Times,*,*,*
              ; Chinese aliases when using English Regional settings
              SimSun,Regular,Regular=STSong,Regular,Light,Regular
              SimHei,Regular,*=STHeiti,Regular,*,Regular

              ; Asian font aliases. On UNIX the EL,L,R,M,B,H attribute appears in the
              ; Variation instead of the Name.
              Adobe Fangsong Std R,*,*=Adobe Fangsong Std,*,*,R
              Adobe Kaiti Std R,*,*=Adobe Kaiti Std,*,*,R
              Adobe Ming Std L,*,Light=Adobe Ming Std,*,Regular,L
              Adobe Myungjo Std M,*,*=Adobe Myungjo Std,*,*,M
              Adobe Song Std L,*,Light=Adobe Song Std,*,Regular,L
              Kozuka Gothic Pro EL,*,SemiLight=Kozuka Gothic Pro,*,Regular,EL
              Kozuka Gothic Pro L,*,Light=Kozuka Gothic Pro,*,Regular,L
              Kozuka Gothic Pro R,*,Regular=Kozuka Gothic Pro,*,Regular,R
              Kozuka Gothic Pro M,*,Medium=Kozuka Gothic Pro,*,Regular,M
              Kozuka Gothic Pro B,*,Bold=Kozuka Gothic Pro,*,Regular,B
              Kozuka Gothic Pro H,*,Heavy=Kozuka Gothic Pro,*,Regular,H
              Kozuka Mincho Pro EL,*,SemiLight=Kozuka Mincho Pro,*,Regular,EL
              Kozuka Mincho Pro L,*,Light=Kozuka Mincho Pro,*,Regular,L
              Kozuka Mincho Pro R,*,Regular=Kozuka Mincho Pro,*,Regular,R
              Kozuka Mincho Pro M,*,Medium=Kozuka Mincho Pro,*,Regular,M
              Kozuka Mincho Pro B,*,Bold=Kozuka Mincho Pro,*,Regular,B
              Kozuka Mincho Pro H,*,Heavy=Kozuka Mincho Pro,*,Regular,H
              RotisSemiSans Light,Regular,Regular=Rotis Semi Sans,Regular,Light,45
              RotisSemiSans Light,Italic,Regular=Rotis Semi Sans,Italic,Light,46
              RotisSemiSans,Regular,Regular=Rotis Semi Sans,Regular,Regular,55
              RotisSemiSans,Italic,Regular=Rotis Semi Sans,Italic,Regular,56
              RotisSemiSans,Regular,Bold=Rotis Semi Sans,Regular,Bold,65
              RotisSemiSans ExtraBold,Regular,Regular=Rotis Semi Sans,Regular,ExtraBold,75

              (End of settings)
              • 4. Re: Font aliases don't work for certain fonts
                Sheila Carlisle Community Member
                Dave, is there any difference in the font alert message action if the File > Preferences > setting "Show File Translation Errors" is un-checked?
                • 5. Re: Font aliases don't work for certain fonts
                  Sheila Carlisle Community Member
                  Dave, more questions on the SuppressFontAlertOnOpen entry in maker.ini. Using a search tool I can "see" that word in the framemaker 7.2 .exe, but I can't find any info on what part of the maker.ini it's supposed to be in. Also, I'm wondering if it works in the user's maker.ini in "Documents ..." vs. the <installdir> Framemaker maker.ini
                  • 6. Re: Font aliases don't work for certain fonts
                    Tigdave Community Member
                    Switching off the "Show file translation errors" setting has no effect - I still get the pop-up message about fonts. By the way, if I switch this setting off then it stays off for the current FM session but is switched on by default in the next FM session. I don't know if that is relevant.<br /><br />In Frame 5.5.6 I used the following lines near the front of the <fminstalldir> maker.ini file, in the [Preferences] section:<br />SuppressFontAlertOnOpen=On<br />SuppressLangAlertOnOpen=On<br /><br />In Frame 8 I also put the command in the <fminstalldir> maker.ini but it has no effect.<br /><br />At your suggestion I just tried putting it in the Documents and Settings \ <userid> \ Application Data \ Adobe \ FrameMaker \ 8.0 \ maker.ini <br />...but still no effect. <br /><br />Another aside, but possibly relevant - after editing the Documents and ..... \ maker.ini file, if I save the file as UTF-8 text then on start-up I get prompted to choose an interface (normal FrameMaker or structured) even though this maker.ini file already has an entry: <br />[Frame]<br />ProductInterface=FrameMaker<br />After I choose an interface, this same maker.ini file now has two [Frame] ProductInterface=FrameMaker entries - one at the top of the file and one at the bottom. It's like the file isn't getting read properly. <br />If I save the edited maker.ini file as ANSI (Windows) text then I don't get prompted to choose an interface. However, the SuppressFontAlertOnOpen=On setting doesn't work regardless of which text format the Docu....\maker.ini file is in.
                    • 7. Re: Font aliases don't work for certain fonts
                      Tigdave Community Member
                      A minor correction. The font aliases for Courier should be:

                      Courier,Italic,*=Courier,Oblique,*,*
                      Courier Std,Regular,Medium=Courier Std,Regular,Regular,*
                      Courier Std,Regular,Bold=Courier Std,Regular,Bold,*
                      Courier Std,Italic,Medium=Courier Std,Oblique,Regular,*
                      Courier Std,Italic,Bold=Courier Std,Oblique,Bold,*