Printing from TextEdit sometimes seems like a black art—often the font size of your printed document will be much smaller than the font size used in the onscreen original. You might be thinking, “I thought the Mac was supposed to be a WYSIWYG machine?” (Nevermind for now that nothing is truly WYSIWYG; that’s a topic for another day.) Well, the answer is that your Mac is trying to give you WYSIWYG, and that’s the cause of the problem. (If you just want the fix without the explanation, skip down to the Solution section or take a look at what Christopher Breen had to say on the same topic last fall; the next few paragraphs tackle why this happens in a bit more detail.)
The first thing to realize is that TextEdit is not Microsoft Word, nor any other pure word processor. Rather, TextEdit is a text editor. The distinction may seem a fine one, but I think it’s relevant here. In Word, and most other “real” word processors, regardless of how wide or narrow you make your editing window, your lines will continue to wrap at the exact same point—and that point is dictated by the printed page’s margin settings, not the width of the onscreen window.
When you write in a text editor, however, things are different. Most text editors, including TextEdit, wrap long lines at the right edge of the editing window. Make your editing window wider, and your lines will get longer; narrow the window, and the lines will get shorter. This is exactly what TextEdit does in its default mode—as you resize the window, your text will be reflowed such that the lines break near the right edge of the window.
And that’s what causes the problem. When you tell TextEdit to print, it’s faced with a quandary: should it print things as it sees them on screen, or should it rely on the chosen font size and margins to determine how things look? TextEdit is really stuck between a rock and a hard place here. On the one hand, you’ve set up your document with a certain font size, which you would expect to see when you print it. On the other hand, you’re looking at a window that shows line breaks following certain words, and you might expect to see those breaks in the same spots in the printed version. But what if a certain line has more words in it than will fit at the default font size, given the printed page’s margins? Should TextEdit break the line and keep your chosen font size, or should it change the font size to make the words fit on the line, as shown on the screen?
By default, TextEdit does the latter—it reduces the font size until the line breaks are where you see them on the screen, giving you (one form of) WYSIWYG output. Hence, your three-page essay on the merits of the Newton Message Pad 2000 as the ultimate PDA might only come out to be a few paragraphs long, depending on the width of the TextEdit window when you print.
So how can you avoid this? As Chris noted last fall, the answer is quite simple; before printing, choose Format -> Wrap to Page. When you do, TextEdit will reformat your document, showing the text wrapping within the page’s margins. When you print, the output will use your specified font size, not some possibly microscopic version of the font size you chose. If you like editing in a wider window, just choose Format -> Wrap to Window when you’re done printing to return to the other view. You can toggle quickly between these two modes using the Shift-Command-W shortcut.
You can see how this all works in the following movie:
As you can see, when the window is widened greatly after the first sample print, the resulting printed page has a much smaller font, and the text takes up much less of the page. Switch on Wrap to Page, however, and everything looks right on the sample printout.