Using the MM_LOENGLISH Mapping Mode

In Step 5, Scribble changes to MM_LOENGLISH mapping mode, which treats each logical unit as 0.01 inches. In this mode, a stroke that is 100 logical units long is drawn as 1 inch long, no matter which device is used; each device driver determines how many device units are needed to draw a 1-inch stroke.

Once Scribble uses MM_LOENGLISH mode, all coordinates used for GDI drawing are in hundredths of an inch, not pixels. As a result, the images that Scribble displays on the printer are the same size as the ones it displays on the screen. Recall that in Add Scrolling to Scribble, in Lesson 8, Scribble drawing was defined to be 800 logical units across and 900 logical units high; once you change the mapping mode, a drawing is 8 inches across and 9 inches high.

Another feature of MM_LOENGLISH mode (as well as the other metric mapping modes) is that its y-axis runs in the opposite direction to that in MM_TEXT mode. In MM_TEXT mode, y-coordinates increase when you move down, but in all the metric mapping modes, y-coordinates increase when you move up.

After you change the mapping mode, you need to make several adjustments to the existing Scribble code. These changes are described in the procedure To compensate for the reversal of the y-axis. For an explanation of the modifications, see Compensating for the Reversal of the Y-Axis later in this lesson.