Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;,win32,gdi打印:DrawEdge没有达到DrawText的深度?_C++_Winapi_Printing_Gdi - Fatal编程技术网

C++ C++;,win32,gdi打印:DrawEdge没有达到DrawText的深度?

C++ C++;,win32,gdi打印:DrawEdge没有达到DrawText的深度?,c++,winapi,printing,gdi,C++,Winapi,Printing,Gdi,我正在尝试打印(使用打印机,在纸上,而不是在屏幕上)行和文本,使用功能DrawEdge和DrawText(和)。但是,当我试图到达论文的底部(距离它大约35毫米)时,这条线就不再画了。我以为这是我打印机的一个极限。然而,当我绘制文本时,我的打印机在那里打印没有问题,甚至更低。有没有办法让DrawEdge在那里画线?还有别的方法吗?这是一个bug吗?我能想到几个原因: 在绘制边时设置了剪裁区域,而在绘制文本时设置了不同的剪裁区域 设置了剪切区域,但打印机未始终剪切文本。某些打印机将打印整个字符,

我正在尝试打印(使用打印机,在纸上,而不是在屏幕上)行和文本,使用功能DrawEdge和DrawText(和)。但是,当我试图到达论文的底部(距离它大约35毫米)时,这条线就不再画了。我以为这是我打印机的一个极限。然而,当我绘制文本时,我的打印机在那里打印没有问题,甚至更低。有没有办法让DrawEdge在那里画线?还有别的方法吗?这是一个bug吗?

我能想到几个原因:

  • 在绘制边时设置了剪裁区域,而在绘制文本时设置了不同的剪裁区域

  • 设置了剪切区域,但打印机未始终剪切文本。某些打印机将打印整个字符,即使只有部分字符位于剪切区域内。您可以使用
    GetDeviceCaps
    TEXTCAPS
    检查其文本剪辑功能。如果是这种情况,可能会显示剪裁区域底部附近的文本打印,但其他类型的图形(如线条)将被剪裁

  • 关于页面的可打印区域,您弄错了。这是什么类型的打印机?许多打印机无法在底边35 mm范围内打印。驱动程序报告的可打印区域是什么?(将
    GetDeviceCaps
    PHYSICALOFFSETY
    PHYSICALHEIGHT
    一起使用,以确定页面上实际打印的高度。)

祝你好运