当然,这里假设cxChar和cyChar分别是那种字体的字元宽度和高度。现在,您可以按字元行和列指定座标。下面的叙述在距离显示区域左边三个字元,上边二个字元处显示文字:
如果您使用固定大小的字体时会更加方便,就像下面的WHATSIZE程式所示的那样。
当您第一次设定MM_ANISOTROPIC映射方式时,它总是继承前面所设定的映射方式的范围,这会很方便。可以认为MM_ANISOTROPIC不「锁定」范围;也就是说,它允许您任意改变视窗范围。例如,假设您想用MM_LOENGLISH映射方式,因为希望逻辑单位为0.01英寸,但您不希望y轴的值向上增加,喜欢如MM_TEXT那样的方向,即y轴的值向下增加,可以使用如下的代码:
其他行程式
我们首先将映射方式设定为MM_LOENGLISH,然後,通过将映射方式设定为MM_ANISOTROPIC让范围可以自由改变。GetViewportExtEx取得视埠范围并放到一个SIZE结构中,然後,我们使用范围来呼叫SetViewportExtEx,只是要将y范围取反。
WHATSIZE程式
Windows的小历史:第一篇如何写作Windows程式的介绍文章出现在《Microsoft Systems Journal》1986年12月号上。在那篇文章中,范例程式叫做WSZ(「what size:什么尺寸」),它以图素、英寸和毫米为单位显示了显示区域的大小。那个程式的更简易版本是WHATSIZE,如程式5-6所示。程式显示了以五种度量映射方式显示的视窗显示区域的大小。