C++ C++;,win32,gdi打印:DrawEdge没有达到DrawText的深度?
我正在尝试打印(使用打印机,在纸上,而不是在屏幕上)行和文本,使用功能DrawEdge和DrawText(和)。但是,当我试图到达论文的底部(距离它大约35毫米)时,这条线就不再画了。我以为这是我打印机的一个极限。然而,当我绘制文本时,我的打印机在那里打印没有问题,甚至更低。有没有办法让DrawEdge在那里画线?还有别的方法吗?这是一个bug吗?我能想到几个原因:C++ C++;,win32,gdi打印:DrawEdge没有达到DrawText的深度?,c++,winapi,printing,gdi,C++,Winapi,Printing,Gdi,我正在尝试打印(使用打印机,在纸上,而不是在屏幕上)行和文本,使用功能DrawEdge和DrawText(和)。但是,当我试图到达论文的底部(距离它大约35毫米)时,这条线就不再画了。我以为这是我打印机的一个极限。然而,当我绘制文本时,我的打印机在那里打印没有问题,甚至更低。有没有办法让DrawEdge在那里画线?还有别的方法吗?这是一个bug吗?我能想到几个原因: 在绘制边时设置了剪裁区域,而在绘制文本时设置了不同的剪裁区域 设置了剪切区域,但打印机未始终剪切文本。某些打印机将打印整个字符,
- 在绘制边时设置了剪裁区域,而在绘制文本时设置了不同的剪裁区域
- 设置了剪切区域,但打印机未始终剪切文本。某些打印机将打印整个字符,即使只有部分字符位于剪切区域内。您可以使用
和GetDeviceCaps
检查其文本剪辑功能。如果是这种情况,可能会显示剪裁区域底部附近的文本打印,但其他类型的图形(如线条)将被剪裁TEXTCAPS
- 关于页面的可打印区域,您弄错了。这是什么类型的打印机?许多打印机无法在底边35 mm范围内打印。驱动程序报告的可打印区域是什么?(将
与GetDeviceCaps
和PHYSICALOFFSETY
一起使用,以确定页面上实际打印的高度。)PHYSICALHEIGHT