Home | Software | Adobe PressReady in OS X

Font Finagler | dfontifier | Repair Disk Utility's Permissions

dfontifier icon dfontifier 2.0.1

Version 2.0.1, May 10, 2004
Copyright © 2004-2017, Mark Douma. All rights reserved.

Download .dmg
Download dfontifier 1.0.1.dmg
Download dfontifier 1.0.1.dmg (150 KB)
(For Mac OS X 10.1.2 - 10.1.5)

Product Requirements:

What's new in this version:

Updated 5/10/2004:

Note about Panther Networking/FileVault issues: Updating to OS X 10.3.3 (or greater) should resolve the following networking issue. Trying to use dfontifier to convert fonts which reside on a networked volume may return errors, depending on the method used to connect to that server. The new networking architecture of OS X 10.3.0-10.3.2 (Panther) provides 2 methods to connect to a server. The first method, similar to previous versions of OS X, is to use the Finder's "Connect to Server" dialog box in which you type the URL of the server you're connecting to (for example, "afp://192.168.1.102/Macintosh HD"). The second method, new in Panther, is to use the "Network Browser" method in which you use the Finder's "Network" folder to browse and connect to the available servers by name (for example, /Network/PM7600/Macintosh HD/). Using this new second method to locate and select a font on a networked volume, which you then drag onto dfontifier, will cause dfontifier to fail with an error message unless that networked volume (Macintosh HD in this case) has also been mounted through the first connection method.
NOTE: While the networking issues mentioned above seem to have been resolved in OS X 10.3.3, the following issue with File Vault still causes problems when trying to work with any files that are in your user folder. Panther also includes a feature called "FileVault" which encrypts your files to keep them safe. The way it does this is to use a disk image file that contains your entire user folder. This disk image mounts as a separate volume yet remains invisible and doesn't show up on the Desktop or leftmost column of a Finder window set to column view. This setup results in the same error encountered above. There is currently no workaround that I'm aware of. This behavior does not occur in either OS X 10.1.x or 10.2.x, and is a bug in Panther. This bug has been submitted to Apple as Bug ID #3519134.

Product Description:

dfontifier is an application that can convert Mac OS X-style Datafork TrueType fonts (.dfonts) into ordinary Mac OS 9-style TrueType fonts and vice versa.

Installation:

Simply drag the "dfontifier" folder to your Applications folder.

Directions for use:

dfontifier no longer acts as a strict "droplet-style" application that launches, does something, and then quits. It now has a full interface and acts like most any other OS X application. You can now convert fonts in one of three ways. First, you can select the "Convert" command (Cmd-O) from the File menu to bring up a standard Open dialog where you can select the fonts or the folder of fonts you'd like to convert. Second, as in the previous version of dfontifier, you can drop the fonts or folder of fonts that you'd like to convert onto dfontifier's application icon–either in the Finder or in the Dock. Third, you can use the convenient "Drag your fonts here" target in the main application window. The image below shows a screenshot of dfontifier in action:

dfontifier now has a "Prompt for single output folder" conversion option. Enabling this option will allow you to output your converted fonts into a single folder rather than the default, which is to save the converted font alongside (or in the same folder as) the original font. This will prevent you from having to chase after all the converted fonts if your selection involved a folder with several subfolders. Another new feature is the progress bar, which I'll assume is pretty self-explanatory. Also new in this version is a duplicate file/file-naming conflict handler to prevent successive conversions from overwriting each other (for example, new behavior will be Helvetica.dfont, Helvetica, Helvetica 1.dfont, Helvetica 1, etc.).

In the bottom section of the main window in dfontifier, is the "Conversion Problem Details" table, which is intended to provide you with better feedback on font files that weren't converted. The column on the left shows the path of the file that wasn't converted, and the column on the right identifies the unsupported font format. Most of the unsupported formats given should be understandable. If you see "loose Mac Bitmap font" or "loose Mac TrueType font" as in the image above, I'm referring to fonts which are no longer in their suitcases. If you recall, in OS 9 and prior, it was possible to drag the fonts with a triple-A (TrueType font), and those with a single-A (Bitmap font at a certain size) out of their font suitcase. dfontifier doesn't support converting these types of fonts—only those inside a proper suitcase. The first time you encounter a conversion problem, dfontifier will display an alert referring you to this table for more information. If you click the "Don't show again" checkbox, you'll no longer be bothered with that alert. To reset that preference, choose "Reset All Warning Dialogs" from the Help Menu.

Just to reiterate, dfontifier is only intended to convert Mac OS X-style Datafork TrueType fonts (.dfonts) into ordinary Mac OS 9-style TrueType fonts and vice versa (which is a fairly simple operation). It doesn't convert Mac PostScript Type 1 fonts (which include both the font suitcase containing the "screen" or "bitmap" part of the font, as well as the corresponding "printer" or "outline" part of the font), Windows TrueType and TrueType Collection fonts (.ttf & .ttc), or OpenType fonts (.otf) into any other format (which, comparatively, is a fairly complex operation). (NOTE: unfortunately, the first version of dfontifier was not able to distinguish between font suitcase files that represented TrueType fonts, and those that represented the "screen" or "bitmap" part of a PostScript Type 1 font. As such, version one of dfontifier would happily convert your PostScript Type 1 font suitcase files into a .dfont version, which would not be a valid font file. I apologize for that, but I felt I had made it rather clear that dfontifier was intended to convert .dfonts to OS 9 style TT fonts and vice versa. Anyway, the new version fixes this issue ;-). The table will only report problems for font-type files. For example, if you drag a folder that contains 20 .dfont's, 1 Windows TrueType font, and 2 PDF files, you'll see one error for the Windows TrueType font file. If you're having trouble with some of your fonts not being converted, and no error message being reported, see the next paragraph.

If you've attempted to convert some fonts with dfontifier, during which you received no error messages, and the converted fonts aren't immediately showing up in the Finder, try clicking on another Finder window to activate it, and then click back on your original window. This may help to force the Finder to recognize the changes that dfontifier made. If this fails, you might try using Nudge Contextual Menu to force the Finder to update. If even that fails, and you realize that your fonts were indeed not converted, then see the Support section below. If you're interested in the technicalities involved with this issue, read on. One of the things that converting your fonts involves is setting the proper File Type ('FFIL') and Creator Code ('DMOV') information for Mac TrueType files, so that OS X, or OS 9 for that matter, will recognize them as fonts. In order to do this using AppleScript, I can use one of two applications: either the Finder or an invisible background application called "System Events". There appears to be (yet another) apparent bug in AppleScript Studio applications like mine that use a "drop target" that you can drag and drop items onto. If you were to drop a single font file onto that target, and dfontifier were to run a script which involved the Finder to aid in the processing of your file in any way, the result would be dfontifier locking up and getting the Spinning Beach Ball of Death (SBBOD) for roughly 30 seconds, after which time it would suddenly kick into gear and correctly process your file. As a result, I had to remove all references to the Finder from my application and, instead, attempt to use the System Events application.

While using the System Events application seems to work okay in Panther, under version 10.2.8 of Jaguar specifically, it's been less than reliable. A result of this might be, as mentioned earlier, generic-looking documents, rather than usable fonts. I therefore re-coded version 2.0.1 of dfontifier to actually set the file type and creator type information itself, rather than rely on any other application to do this. In my tests, this appears to work great, and may even be a bit faster too.

As I mentioned in the 2.0 release, an unfortunate side effect of eliminating all interaction with the Finder from dfontifier is that the changes to the file system that are made "behind the Finder's back" don't always get communicated properly to the Finder, hence the occasional need to force the Finder to update.

Introduction – About Files – The Data Fork and the Resource Fork:

On the Macintosh, a file is a named, ordered sequence of bytes stored on a volume and divided into two forks:

All Macintosh files contain both a resource fork and a data fork, even though one or both of these forks may be empty.

For example, the data fork of a document file typically contains data created by the user, and the resource fork contains any document-specific resources, such as preference settings and the document's last window position. The resource fork of an application file typically includes resources that describe the application's windows, menus, and so on. The picture below illustrates the typical contents of the data and resource forks of an application file and a document file.

Traditional Mac OS 9 fonts, including both OS 9 TrueType fonts as well as PostScript Type 1 fonts (and their corresponding printer fonts), are all resource fork-based fonts. Mac OS X introduces a new font format, the Data Fork Suitcase format (.dfont). The contents of the .dfont file format used with all the standard TrueType system fonts on Mac OS X are identical to the standard font suitcase files, except that the font resources are stored in the data fork of the file.

According to Apple:

"One of the innovations offered by Mac OS X is that font suitcases can be completely stored in a file's data fork. All of the resource fork's data is stored in the data fork, which allows more efficient access to font data as well as the ability to copy font suitcases to and from file systems that do not recognize resource forks."

While this may be true, these "benefits" may very well be outweighed by the disadvantage this format involves, namely that of incompatibility with earlier Mac OS's. By converting your .dfonts to regular OS 9-style TrueType fonts, you can use them in OS X, in the Classic Environment (OS 9 within OS X) as well as pure OS 9.

License:

dfontifier is considered donation-ware. This application is completely free for personal use. If, however, you find it useful, please feel free to donate! If you're using in a commercial setting, however, you are strongly encouraged to donate. :-) Many thanks to those who've already donated!

I have a PayPal account registered at mdouma46@mac.com.

If you'd like to include dfontifier on a CD for distribution, please contact me before doing so. See the Support section for contact information.

Support:

If you have a question or concern, feel free to Instant Message me at MarkDouma46 or to email me at moc.amuodkram@kram.

If you could instant message me, that would be preferred, as it's much more conducive to troubleshooting. If you've never used iChat or AIM before, then don't worry about it, email is fine.

NOTE: If your question or concern is not directly related to this or another of my applications, or is of a more general nature, I can't necessarily guarantee a response. In a case like this, I'd recommend posting your question in Apple Discussions where you have a community of thousands of users (including myself) that are ready and waiting to help you. If you post there, feel free to send me an email with the URL and I'll do my best to try to respond.

Disclaimer:

This application is provided "as is" with no warranty expressed or implied. Under no circumstances shall Mark Douma be liable for direct, indirect, special, incidental, or consequential damages resulting from the use, misuse, or inability to use this software.

Thanks, and I hope this helps...

Version History:

Version 2.0.1 May 10, 2004

Version 2.0 March 31, 2004

Version 1.0.1 November, 2003

Version 1.0 October, 2003