询问者
查遍了互联网也找不到答案的问题?

问题
-
一、在搞DataGridView的打印时,页面单位默认为display,即百分之一英寸,e.MarginBounds.Height的值是百分之一英寸表示的数据;为了计算每一页可打印的行数,考虑到表格中可能存在每行不相等的情况,我使用一个循环来累计行高rowsH,然后判断这个累计数与页面边距内高度的大小以确定每页可打印的行数,但是累计行高的数值是以像素为单位来表示的,这要如何才能比较?
if(rowsH>e.MarginBounds.Height-表头H-标题H)
{
//总页数递增,并开始下一页;
}
二、为什么以百分这一表示的边距Margins(100,100,100,100),在打印时视觉上的左边距远远大于25.4mm?
LJH
全部回复
-
像素和英寸是可以换算的啊,你可以进行换算下就可以比较了,并且在打印的时候是你可以通过设置Graphics.PageUnit属性来设置页面度量单位的,具体内容参考下面的帖子:
http://social.msdn.microsoft.com/Forums/zh-CN/0e5bf3ac-2098-4d8e-8010-074d3fddec5c
If my post is helpful,please help to vote as helpful, if my post solve your question, please help to make it as answer. My sample