说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

用Delphi编写打印程序的窍门

HTML文档下载 WORD文档下载 PDF文档下载
用Delphi编写打印程序的窍门

如果你想自己用Delphi编写一个打印程序,那么,下面这些技巧或许对你有所帮助。

1.获娶显示当前打印机的分辨率

Windows下的打印分辨对打印程序有着至关重要的作用,如果你想知道打印机的分辨率,请在程序中加入一行:ShowMessage(′水平分辨率′+inttostr(GetDeviceCaps(printerHandle

LOGPIXELSX))+chr(13)+′垂直分辨率:′+inttostr(GetDeviceCaps(printerHandle

LOGPIXELSY)));结果就一目了然了。

2.将结果直接送到打印机

Delphi提供了两种打印方式:一是将结果输送到Form,再调用Form的print方法将结果输送到打印机,二是将结果直接输送到打印机。如果你采用第一种方式,则无论你怎样调整Form的PrintScal属性,打印出来的东西也不会让你满意。因此建议采用第二种方式。

3.尽量不要使用AssignPrn

尽管AssignPrn简化了文本打印操作,使输出到打印机像输出到文件一样简单。但简单带来的是一系列的不方便:你无法知道当前打印的行数,无法准确控制行距,无法灵活改变字体字形等等。还是用打印机的Canvas属性进行打印吧。

4.用打印机的点数做度量单位

如果想让打印程序在任何打印机上都能正常地打印,你就必须改变你的度量单位。如果采用固定的度量,不同分辨率的打印效果是不同的。举例来讲:printerCanvasrectangle(0

0

360

720)在360×360的佳能4200SP上能打出一个1英寸宽、2英寸高的矩形,但在600×600的惠普6L上只能打出06英寸宽、12英寸高的矩形。使用打印机的点数做为度量单位是一个明智的选择。具体做法如下:VarPointX

PointY:integer;PointX:=GetDeviceCaps(printerHandle

LOGPIXELSX);PointY:=GetDeviceCaps(printerHandle

LOGPIXELSX);printerCanvasrectangle(0

0

PointX*1

PointY*2)这样,无论你使用什么样的打印机,都能得到一个1英寸宽、2英寸高的矩形。

5.添加打印程序单元

尽管Delphi在生成窗体时会自动在USES部分加入许多程序单元,但打印程序单元(Printers)却不在之列,要想使打印机正常工作和程序不出错,你还是老老实实手工给它加上吧。

从三大互联网巨头布局,看移动时代的商业逻辑 亚马逊应用商店:一个开发者走向世界的机会? 企业级App探索:开发者们的正途在哪里? 如何有效地在海外市场推广产品? 网站转化率统计分析及优化方案 从资深设计师那我们能学到什么? 原作者使用Go开发memcached替代版,现已扎寨谷歌多个项目 像证券一样交易云资源,Zimory一年内收入翻两番并获德国证交所青睐 移动SDK崛起:未来会不会整合成一大坨? 关于 VS2010 异常捕获 在线编程教育平台Treehouse推免费iPad应用 微软发布Windows 8.1企业预览版 功能更强劲 如何管理和优化日益增长的代码复杂度? SDCC 2013大会讲师名单议题更新 8月1日前3.8折优惠截止 IBM Rational首席技术官:DevOps是一门哲学 Mozilla联手黑莓推进Web安全技术,推出开源测试平台Minion 苹果如何培养SOHO一族高效工作 再造Ruby:CryENGINE 3.5游戏引擎特性详解 Eclipse基金会涉足物联网,M2M标准是否已获东风? SDN部署前必须考虑的7个事项 【云先锋 40】初创公司DataStax:专注于Cassandra,三年融资8370万美元 内容创作工具的革新:Facebook前CTO推文字处理应用Quip 微软为Android手机推出Office 仅面向Office 365用户开放使用 编程、创业、开源感悟——SDCC 2013讲师云风专访 原生广告:移动推广的热门新宠 隐私之战:金山手机毒霸宣布开放安全检测平台 世界人民的头上有张监控大网——Xkeyscore 美国“监控门”情报收集系统 X-Keyscore 技术揭秘 为啥REST如此重要? 并非PHP Frameworks而是WordPress让PHP更加流行! Twitter Bootstrap深受开发者喜爱的11大理由 CISCO2600的ISDN拔号不会自动断线,怎么办? 谁知道怎么验证一个用户名和一个密码是不是在WINDOWS2000中添加过的?而且正确? 。。。谁能给我发一个“智能狂拼2”的下载连接地址 请求--网页评比规则? 在visual.net上无法调试存储过程。急。求救 asp加密程序 我用SQL server+DElphi中的ADO做数据应用程序,数据库备份后,怎样实现数据库的恢复? 贴子太多了,看不过来了,大力liuri出来讲讲 sqlserver 用 jdbc出错 ,Microsoft][SQLServer 2000 Driver for JDBC]Error setting up static cursor cache 如何在C#中用代码控制本地FTP服务打开和关闭?99分,中秋快乐. 关于dll的问题,在线求教 昨晚,我抱了我MM一下!开心呀!散分! 有什么软件可以使上网不受防火墙的限制? 一个C的图形函数,请问怎样用的? 数据库查询语句执行错误 web页面的activex控件怎么调用服务器上的动态连接库?? 中秋散分 【泰坦】祝大家中秋节快乐!(1) 纯jsp聊天室的页面刷新问题 这个MSDN是不是常说的那个MSDN资料库? 一句sql语句问题 【泰坦】祝大家中秋节快乐!(2) 我的触发器为什么没有响应啊。在线等啊 pb9.0+sql server 2000,怎样制作程序发布? pb给dll传递结构数组的问题。急!!! pb9.0+sql server 2000,怎样制作程序发布? 为什么关闭MSDEV的时候,会导致它占用90%以上的CPU时间??? 如何在代理中同時讓兩個套表同時結案 菜鸟问题:我想把一个CString类型转换成LPBYTE类型应该怎么弄? 如何在JRUN3.1中连接SQLSERVER, 我的web server用的是IIS5 怎么样在JSP中显示 WORD 或 WPS 格式的文件? 如何在servlet 中存储数组用javabean 取数组用JSP显示(在线等,急,谢谢) 如何使Response.Redirect "xxx.htm"打开的网页是满屏显示! 鄙视民工的人,给你讲个故事听。 庆祝中秋佳节,大散分~ 中秋节到了,与大家同庆,散点分!!!祝大家开心呀! VC的bug!!! 游戏、网络、图形等版块正在整顿中,有意见或建议欢迎提出!! 如何进一步提高C语言的功力???? 学习JSP的过程中遇到的问题(问题1),请进!!! 大家说一下网上下载的水晶报表crystal report 9.0会过期吗!!买一套要好几万的! 有个问题想请教,关于数码相机生成的图片的格式及存储方式! 在网站上数据保密问题 我用Inet控件下载文件时,经常会遇到无法结束程序的问题? 我在用电脑的时候,有时会提示我们插入WIN98光盘,但我现在用的这台,它会自动扫描的,自动查找,是怎么回事啊,在线等啊。 请问有DOS下的C++编译器吗???哪里下载?? 如何指定DataGrid的列宽呀 求boundschecker下载地址 怎么实现放大缩小的功能? 广州一妓女出租屋中被杀 被单缠身只穿一条内裤 关于setup Factory 和wise installer制作安装程序的问题 求此图来源出处求此图出处,发链接,发名字 蜜蜂的春季管理 请问有人知道【急】高三生物题 关于细胞增殖会的人说下嘛,真心谢谢大伙了9a 蜜蜂早春如何管理 想生男孩的丈夫应该呈碱性还是酸性体液? Film manufactures must be delighted at the thought ofthe inexperienced photographer setting outin search of the right situation and the right moment. 蜜蜂给我们带来了哪些做人的道理? 想问一部哈里森福特(Harrison Ford)主演的电影片名我记得故事讲的是福特的妻子和女主角的丈夫外出幽会时乘的飞机失事,两人遇难;福特和女主角好像就是在这场事故的遇难者追思会上认 改成倒装句she thought the last section of the film wainteresting:I also thought so. (选择题)混响时间T60是指()所需的时间.A.声压级衰减为1/60B.声压级衰减60倍C.声压级衰减60DBD.声压级衰减为60DB 伊林公式的使用 一座尺寸38mX25mX8m(高)的大厅 共有1200个席位.装修表面是硬表面 平均吸声系数0.05 每个席位占有地面面积0.6㎡ 如果坐在席位上的听众每位吸声量是0.4㎡,空席位吸声量是0.28㎡ 俄一法庭发生爆炸致2死2伤公交司机因车速慢被打 打人者自称是警福州破获虚假恐怖信息致航班延误案 1《新快报》社高层调整 社长、总编及副日俄防长会谈当天俄军机飞临 日战机紧金正恩或未见来访蒙古总统 “首秀”留经济观察:上海自贸“试验田”承载的财尼日尔将为92名被困沙漠渴死移民进行外交部:中方将与上合组织各方一道进一亚太地区主要股市涨跌不一美媒:美国公布核弹更新计划 强化核威电视创新哪家强 CES2016电视展梦幻西游手游8技全红紫色龙型神兽鉴赏从320到18,中文域名投资迎来参与杜兰特职业生涯总得分超越沃西导致中东“地缘政治动荡”的罪魁祸首是最好穿的50双白球鞋|百搭、低调、买南充民建会员积极为法治社会建言献策北京15家最奇葩的觅食地!求各位老板新闻学泰斗甘惜分去世 学生追忆恩师京津冀联手启动营养治疗进社区 三地专旧金山华人市长连任就职 称在猴年“有星轮谜踪本源大地无赖仙途无良天下重铸神州仙皇途校园有鬼佛功魔种巫主沉浮先知本纪变身说八音盒珍品陈列馆旅游宝山国际民间艺术博览馆旅游建德灵栖洞旅游中峰寺旅游神水阁旅游回龙景区旅游龙泉寺旅游星湖湿地公园旅游青云谱旅游玉龙洞旅游芳草园旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘