打印问题请教

hfrui 2003-11-16 09:47:16
窗体上放两个Lable:lbPrint1和lbPrint2
这样打印:

Printer.Canvas.Font.Size=lbPrint1.Font.Size;
Printer.Canvas.TextOut(lbPrint1.Left),lbPrint1.Top,lbPrin1.Caption);

Printer.Canvas.Font.Size=lbPrint2.Font.Size;
Printer.Canvas.TextOut(lbPrint2.Left),lbPrint2.Top,lbPrin2.Caption);

打印出来的字体大小是对是,但是位置不对,距离比屏幕上小很多,是不是因为打印机的分辨率比屏幕大?如果是,那么不同分辨率的打印机打出来也应该不一样,怎样知道打印机的分辨率是屏幕分辨率的几倍呢?
...全文
45 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyforlove 2003-12-01
  • 打赏
  • 举报
回复
必须先取出打印机的分辨率,然后和屏幕分辨率对比换算
这样才能定位准确。
soundbug 2003-12-01
  • 打赏
  • 举报
回复
何不试试在窗体的Canvas上画图,然后Form.Print出来呢,大小可以调整
chenkandy 2003-12-01
  • 打赏
  • 举报
回复
关注
Frend 2003-12-01
  • 打赏
  • 举报
回复
每一台打印机的像素是不同的
hfrui 2003-11-16
  • 打赏
  • 举报
回复
up
hfrui 2003-11-16
  • 打赏
  • 举报
回复
应该是以字体为参照,比如说同样都是宋体9号,打印机上每个字的水平像素数与屏幕上对应的像素数之比
sixgj 2003-11-16
  • 打赏
  • 举报
回复
打印机的分辨率和屏幕没什么关系吧。
MartinWang 2003-11-16
  • 打赏
  • 举报
回复
不清楚,帮你up:)

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧