万能打印之Delphi 2010实现(一)

        拿到一个图片文件(如:借款单.jpg),把它打印出来,要求打印的和实际一样大小,怎么样才能做到?        

        要实现打印需求,首先要把‘借款单‘扫描到电脑中,可以用扫描仪,也可以用手机下载扫描软件(如:扫描全能王)扫描,然后再上传到电脑上。这样就得到一个图片文件(如:借款单.jpg),但是这个文件需要转换成标准格式。举例如下:

        ‘借款单‘的宽度为:210毫米,高度为110毫米(自己用标尺测量,在Image目录下),借款单.jpg文件的水平分辨率为96像素/英寸,垂直分辨率为96像素/英寸,宽度为:3080像素,高度为:1588像素,而标准格式应为:宽度210/25.4*96=790像素,高度:110/25.4*96=416像素,(1英寸=25.4毫米)。这样打印出来的图片理论上和实际大小一样,由于目测及打印机打印有偏差,我们可以适当微调 ‘借款单‘的宽度和高度,使打印出来的图片和实际大小一样。(转换及打印工具在文末提供,下同)。转换后的文件,暂命名为:借款单_标准格式.jpg。

        虽然实现了以上要求,但有两点要解决:1.打印机打印是从纸张的某一个点(如:2毫米,3毫米)开始打印,而不是从(0,0)位置开始打印,如果把‘借款单’样张放入打印机中打印,打印出来的会向右下偏移(2,3)。2.如果纸张长宽大于打印机能打印的范围,则多出部分不能打印。解决办法:1.把图片文件(借款单_标准格式.jpg)左边和上边分别裁剪2毫米和3毫米。2.把打印机(一般是针式打印机)的水平打印起始位从0改到10(或其他),同时图片文件左边裁剪10毫米。宽度、高度向左、向上微调,使打印机可打印范围内的内容与实际位置重合。这样利用工具生成一个标准打印的图片,暂命名为:借款单_标准打印格式.jpg。以这个图片作为背景图,在图片的适当位置插入数据,打印预览时就可以看到效果,打印时不打印背景图,这样放入‘借款单’样张,打印得到比较好的效果。[见程序FormatConversion]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值