在一次做图片打印的时候,对位置的调整老是不得法,后来通过CBM666老师的帮助才解决问题,分享以下他给的帮助。

 
 
, , picA.Width , picA.Height 
Printer.EndDoc
 
 
'VB 打印图片
 
, Picture1.Top +   , , "提示"  '错误处理
End Sub
 
 

【属性匹配与窗体缩放】
因为控制打印机实际绘图区域大小的属性Height和Width,由目前正在使用的纸张决定,而且可打印的区域与纸张边缘有一定距离。因而为了获得正确的打印输出结果,不能简单地将Printer对象直接传递给绘图例行程序,还必须要解决打印机的缩放属性与显示窗体属性相匹配的问题。即:保证使窗体中的打印内容以正确的大小显示,并居于可打印区域的中间。实际上实现的是打印机的坐标体系向屏幕坐标体系的转换。具体过程是:使用打印机的ScaleX和ScaleY方法,获取以twip为单位的打印机尺寸,再利用窗体的ScaleX和ScaleY方法将这些尺寸转换为窗体中的坐标系统,从而实现以窗体的坐标系统提供打印机可打印区域大小的目的。然后,用这些尺寸作为打印机中新的ScaleWidth和ScaleHeight,即可实现属性匹配。
但是,我们在打印时,经常会遇到这样的场合——在不改变窗体形状的情况下,需要扩大或缩小窗体的大小。要完成这样的工作,不仅需要完成属性匹配,还要确定对象被缩放的系数。程序如下:


y_mid = obj.ScaleTop + obj.ScaleHeight  , y_mid ), y_mid + phgt )
           '设置打印机中新的ScaleWidth和ScaleHeight
End Sub
 
 

最新文章

  1. [译] 企业级 OpenStack 的六大需求(第 1 部分):API 高可用、管理和安全
  2. 使用 JavaScript File API 实现文件上传
  3. Markdown语法速查
  4. C# 导出到Excel
  5. Big Number--hdu1018(数学)
  6. POJ 3206 最小生成树
  7. git初步使用
  8. Codeforces Good Bye 2015 A. New Year and Days 水题
  9. 在PC上测试移动端网站和模拟手机浏览器的5大方法
  10. 关于Git远程版本库
  11. C#变成数据导入Excel和导出Excel
  12. Javascript获取某个月的天数-简单方法 .(转别人的)
  13. R语言并行运算示例 parallel 包
  14. P4168 [Violet]蒲公英
  15. 【hadoop】1、MapReduce进行日志分析,并排序统计结果
  16. Vue系列之 => webpack基础使用
  17. python记录day24 模块的语法
  18. mysql_test
  19. SQL Server 用户'NT AUTHORITY\IUSR' 登录失败
  20. SPI总线介绍

热门文章

  1. sql server char nchar nvarchar varchar之間的區別
  2. JPA OpenJPA 简单例子
  3. Debian 7 安装Firefox
  4. iOS之自定义UITabBar替换系统默认的(添加“+”号按钮)
  5. Android 自学之基本界面组件(上)
  6. JavaScript学习总结一(String对象的用法)
  7. Java栈实现
  8. 关于java实现同步的方法
  9. tcl/tk
  10. Activiti源码分析(框架、核心类。。。)