Printing TrueType as graphics

by Michael S. Kaplan, published on 2006/07/11 03:01 -04:00, original URI: http://blogs.msdn.com/b/michkap/archive/2006/07/11/661966.aspx


Francisco Moraes posted in the Suggestion Box:

This isn't much of a suggestion but more of a question:

I have a program that layouts glyphs from fonts to display on the screen. This all works great until I try to print, because some printers will substitute the font being used and print garbage. Is there a way to avoid the font substitution when using glyphs instead of characters or a better alternative?

Francisco

It is hard to specifically answer the question without knowing what program is being used, but I can talk about the feature, and that may help. :-)

The option in the user interface goes under different names, but is usually under the Advanced options of the Print dialog and has some name related to TrueType fonts. It is hard to get more specific than that since it is UI that is provided by the printer driver, but here are some examples:

It is interesting of course that only two options are given in most cases, since the option is based on the dmTTOption member of the DEVMODE data structure. It is documented as follows:

Specifies how TrueType fonts should be printed. This member can be one of the following values.
Value Meaning
DMTT_BITMAP Prints TrueType fonts as graphics. This is the default action for dot-matrix printers.
DMTT_DOWNLOAD Downloads TrueType fonts as soft fonts. This is the default action for Hewlett-Packard printers that use Printer Control Language (PCL).
DMTT_DOWNLOAD_OUTLINE Window 95/98/Me, Windows NT 4.0 and later: Downloads TrueType fonts as outline soft fonts.
DMTT_SUBDEV Substitutes device fonts for TrueType fonts. This is the default action for PostScript printers.

The thing is that this whole structure in general and this member specifically are trying to cover all of the possible available options in a wide variety of different printers, so for a given printer they will not all be available, usually.

But that DMTT_BITMAP member is equivalent to the Print TrueType as Graphics option, which keeps those device fonts from being used when the printer thinks it might know better.

Now in many situations those device fonts are considered to be very important, but in many international and multilingual text scenarios they are not so good -- since they are usually either not available for the font you need or the device font is a subset of the font on the computer. So printing TrueType as graphics is usually the best option....

 

This post brought to you by (U+0f14, a.k.a. TIBETAN MARK GTER TSHEG)


# Mihai on 11 Jul 2006 2:10 PM:

I would say first option should be "Download as SoftFont"
Going with "Send as Bitmap" makes printing slower and also lower quality.
When I install a new printer, this is one of the first things I do: set  "Download as SoftFont"
If there is a font substitution table, I also go there and set all fonts to "Don't Substitute"

# Michael S. Kaplan on 11 Jul 2006 3:11 PM:

Well, if the option is available, that is -- often it is not!

sureshkumar on 1 Mar 2011 3:55 AM:

How to set Download as Softfont for printer


referenced by

2007/09/24 Documented, schmockumented! It's still kind of cool....

2006/07/12 Device fonts are people too

go to newer or older post, or back to index or month or day