社区
C#
帖子详情
如何控制C#中printDocument组件打印?
goodbegin
2005-12-10 07:37:49
我用printDocument组件打印票据,调用DrawString方法时,e.Graphics.DrawString(drawString, drawFont, drawBrush,x, y, drawFormat)
此处的x,y值能否以毫米为计量单位?如果可以,该如何设置?如果不可以,怎样才能实现以毫米为单位的坐标并打印?谢谢
...全文
857
4
打赏
收藏
如何控制C#中printDocument组件打印?
我用printDocument组件打印票据,调用DrawString方法时,e.Graphics.DrawString(drawString, drawFont, drawBrush,x, y, drawFormat) 此处的x,y值能否以毫米为计量单位?如果可以,该如何设置?如果不可以,怎样才能实现以毫米为单位的坐标并打印?谢谢
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhangguochen
2005-12-11
打赏
举报
回复
可以的,设置一下e.Graphics.PageUnit属性再转换一下就可以了
xjaifly
2005-12-11
打赏
举报
回复
另外 你还要将 你设置好的label位置 保存 下次调用就不用修改!
xjaifly
2005-12-11
打赏
举报
回复
我的处理是这样做UseControl 在上面放pictureBox
将你的要打印的事物 加入其中
再在图片上放Label
private void printDocument_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
double topMargin = e.MarginBounds.Top;
// 获取图片的分辨率(像素/英寸)
double HResolution = this.pictureBox.Image.HorizontalResolution; // 水平分辨率
double VResolution = this.pictureBox.Image.VerticalResolution; // 垂直分辨率
// 设置打印单位为毫米
e.Graphics.PageUnit = GraphicsUnit.Millimeter;
// 底版图片大小(1/100英寸为单位)
int imageWidth = (int)(this.pictureBox.Image.Width * 100 / HResolution);
int imageHeight = (int)(this.pictureBox.Image.Height * 100 / VResolution);
// 要打印的内容单位也转为毫米
foreach (Control ctrl in this.Controls)
{
if (ctrl.GetType() == typeof(Label))
{
float left = (float)((ctrl.Left -this.pictureBox.Left) * 25.4 / HResolution + this.adjustX);
float top = (float)((ctrl.Top -this.pictureBox.Top) * 25.4 / VResolution + this.adjustY + topMargin * 25.4 / 100);
float width = (float)(ctrl.Width * 25.4 / this.dpiX);
float height = (float)(ctrl.Height * 25.4 / this.dpiY);
e.Graphics.DrawString(ctrl.Text, ctrl.Font, this.drawBrush, new RectangleF(left, top, width, height));
}
}
}
goodbegin
2005-12-11
打赏
举报
回复
up
printD
ocument
控件
打印
预览加载图片
在
C#
编程环境
中
,`
PrintD
ocument
`控件是.NET Framework提供的一个强大工具,主要用于实现文档的
打印
和
打印
预览功能。这个控件是Windows Forms应用程序
中
的标准
组件
,它允许开发者创建自定义的
打印
输出,包括文字、...
printd
ocument
实现多页
打印
功能
在
C#
编程环境
中
,`
PrintD
ocument
` 是一个关键
组件
,用于实现应用程序的
打印
功能。它属于Windows Forms控件,能够帮助开发者创建自定义的
打印
输出,包括多页
打印
。在这个项目
中
,`
PrintD
ocument
` 被用来创建一个
打印
...
使用
PrintD
ocument
控件和
PrintD
ialog控件实现
打印
文档内容
`
PrintD
ocument
`是System.Drawing.Printing命名空间
中
的一个类,它是
打印
的基础,用于定义要
打印
的文档属性,如页面设置、纸张大小等。`
PrintD
ialog`则是用来显示一个对话框,让用户选择
打印
机和配置
打印
参数。 1. ...
c#
利用Windows
组件
打印
输出图像
在
C#
编程环境
中
,开发人员经常需要处理各种与用户交互的任务,其
中
之一就是图像的
打印
输出。本篇文章将详细探讨如何利用
C#
语言结合Windows
组件
来实现实现图像的
打印
功能。 首先,我们要理解Windows操作系统提供了...
C#
打印
数据 实例源码(
printD
ocument
1_PrintPage)
`
PrintD
ocument
`是.NET Framework提供的一个强大的
组件
,用于实现应用程序的
打印
功能。本实例源码主要展示了如何利用
C#
来
打印
数据,特别是表格数据。 首先,我们需要了解`
PrintD
ocument
`类的基本用法。`...
C#
111,097
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章