Fondu -- A set of programs to interconvert between mac font formats and pfb, ttf, otf and bdf files on unix.
Dealing with mac fonts is hard on other operating systems because mac fonts are stored in the resource fork, and other operating systems do not support this concept. Fondu will extract the resource fork from either a macbinary file or a binhex file. Ufond will create a resource fork inside a macbinary file.
fondu [-force] [-inquire] [-show] [-latin1] [-afm] [-trackps] macfile(s)
Fondu will read a series of mac files, check their resource forks and extract all font related items into seperate files.
The input files may be either macbinary files (.bin), binhex files (.hqx), bare mac resource forks or data fork resource files (.dfont, used by Mac OS/X). A bare resource fork may be generated easily be copying a file with a resource fork onto a floppy (or zip) with a DOS format. The mac will create an (invisible on the mac) folder called resource.frk in which the resource fork will reside as a bare file.
When run on Mac OS/X itself fondu will also be able to open the resource fork of a file directly.
Fondu will look through the resource fork for the following resources
If a file already exists then Fondu will ask you before saving on top of
if you specify -force then it will not ask you
if you specify -inquire it will ask you even if the file does not exist.
You may answer with either 'y', 'n', or '=newfilename' (or 'q' for quit, or 'a' for all)
ufond [-dfont] [-macbin] [-res] [-script name] fontfiles ...
Ufond is the reverse of Fondu, it takes unix font files and wraps them up into a mac resource and creates a family for them which in turn get wrapped up in a macbinary or binhex file.
Ufond will read a series of .bdf, .ttf, .otf and .pfb files from the command line. All fonts with the same font family name will be placed in the same FOND. Ufond should handle associating a postscript font with a bitmap font properly. Ufond should handle bold, italic, etc. properly.
The generated macintosh files will be in one of three formats:
Ufond normally assumes that your fonts are in the roman script system. If this is not true you may specify a script directly. Ufond knows the names of a few scripts (greek, cyrillic, hebrew, arabic) and you may enter these directly, otherwise you must know the macintosh script number.
Caveat: Mac OS/X no longer supports NFNT resources, if you want a usable bitmap font you must wrap it up inside a truetype wrapper, and ufond can't do that, try fontforge instead.
According to Apple's docs OS/X does not support the FOND resource either, this should imply that Type1 resource fonts don't work either. They do however, but presumably that support will fade away.
lumper font1.dfont font2.dfont font3.dfont
Merges any font resources ('NFNT', 'sfnt', 'FOND') from font2 (and font3 and ...) into font1.dfont.
Will convert a font from the new macintosh dfont format to the old resource fork format.
tobin [-creator 4char-string] [-type 4char-string] [-res rfork] dfork-filename
Will wrap up a series of files into a macbinary wrapper. On the mac it will read the resource fork and create/type info from the dfork-filename. On non-mac systems these must all be specified seperately.
Will unwrap a macbinary file. On the mac it creates the obvious file, with the attributes of the original. On non-mac systems it creates three files, one for the data-fork, one for the resource-fork and one containing random info about the file.
Will dump some information about the macintosh font resources (FOND, NFNT, sfnt) found in the file.
Fondu and ufond were initial experiments so I could make pfaedit (now called fontforge) edit fonts from the mac.
tobin and frombin were created because I can't find any open source way of creating macbinary files. Not even on the OS/X sites. Grump.
Please report bugs to firstname.lastname@example.org.
Copyright © 2001,2002,2003,2004,2005 by George Williams
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.