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

用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)却不在之列,要想使打印机正常工作和程序不出错,你还是老老实实手工给它加上吧。

《近匠》第09期:ShareSDK——专注社交分享工具 苹果车载iOS系统iOS in the Car界面被曝光 支撑过万亿音乐事件的数据分析系统 Facebook运维内幕曝光:一人管理2万台服务器 《近匠》第10期:友盟——开发服务平台化 LinkedIn耗资1.2亿收购数据驱动招聘服务公司Bright 谷歌推视频会议硬件产品Chromebox 基于Chrome OS 文件上传组件导致Apache DoS安全漏洞 EA,你是来拉仇恨的吗? Beep:前Google员工打造的流媒体音乐控制器 有利于开发App的5款天气预测API 七问微软新CEO,你准备好了吗? Hadoop虽然强大,但不是万能的 Flappy Bird:萌贱游戏日进斗金的烦恼 IT技术支持:索契冬奥会背后的无名英雄 简单10招,让你的云计算事业锦上添花 微软、谷歌及苹果从哪赚钱? 高大上!5.5寸屏幕的iPhone 6概念机来袭 苹果CEO Tim Cook:我们是一家快速发展的公司 2014年美国大学生数学建模竞赛翻译及建模思路 围观龙虎斗:谷歌GCE vs. 亚马逊AWS,要做9件事 未来编程趋势的12个猜想 命令行永存... IBM发布SmartCloud数据虚拟化服务 嚓嚓嚓嚓:虐心的Flappy Bird今日终于下架 Flappy Bird不再“飞翔”后,还剩下什么? 索尼抛售PC业务:内忧外患导致全面退出 慧正通软技术副总裁:工作流引擎厂商的生存之道 TIOBE 2014年2月编程语言排行榜:VB.NET首次进入TOP 10 斯诺登仅用“网络爬虫”软件获取机密文件 全球开发者:iOS、Android、WP哪个最赚钱? 推荐15款响应式Web设计测试工具 在PHP中使用word COM对象的问题。 请教一个问题:如何反回一个MonthCalendar1控件上的的周期(控件上有显示,但不知道如何在程序中得到)? 老板叫我做一个界面,跟VC的界面视图一样, 能不能作一个中文编译器??? 我不要活了。。。 菜鸟:一个小问题 基于对话框的程序中,使用了Tree Control和Edit box,如何在Edit box中显示TreeControl中选中的文本文件的内容。希望提供类似的例子。 ★★★★★★★紧急求救★★★★★★★★ 寻找丢失的分区表!!! windows2000进入“等待”后,唤不醒是怎么回事,请指点! jsp数据库中的Date类型? 在vb中如何进行时间比较?例如1 / 7 / 17 10:00:00 - 1 / 7 / 17 00:00:00 得到一个值?? 请问如何获得其他机器的网卡MAC地址?非常感谢!!! 别了,最爱的BCB! 如何判断一个指向窗口的指针可用? 请教高手:怎么样破windows2000的登陆密码?其密文存放在什么地方? 急:哪里有电子文档 找到找到 网络编程、大虾有请!如何获得当前每秒的字节数? 各位高手,有人喜欢用mysql吗?谈谈这个东东吧 大富翁怎么连不上了? 各位武汉的大虾,请教武汉程序员、高级程序员、系统管理员(正规的大公司)、以及用JAVA做开发的工资一般为多少。希望大家给予帮助!!前途问题!! 网络编程大虾有请!如何获得当前每秒的字节数? 怎样在treeview中设置背景图片 to 版主:精华区太乱了,请给予分类。谢了 听说VB可以写PAD的程序,TRUE? JLabel中文本换行问题 马上要开始学BCB,请问BCB有那种类似于VC的创建类的向导吗,看到BCB的界面我就想到DELPHI中创建类的难度 我的游戏引擎BATTLEFIELD作好了,欢迎下载(这次是真的) 一个pop_up menu的问题 那位高手知道在SDK中使用ADO的方法 为普天之下正直而上进的程序员找一个温馨的家 为什么不能把JMF包打进去??? 内存泄露是指例如“为对象分配一个内存区后,未删除内存区,但删除了对象”是吗? 装pws时遇到的麻烦! to freezwy(网络自由人) 有没有限制上传图片大小的asp代码??(不是组件) 还是没有解决!!! 有关VC中数据库绑定的问题! 扔个骨头……下个“圈套”,呵呵? ^_^ 紧急情况!如何改变DataGrid控件中个别行的颜色?? 如果实现断开共享目录的连接 acces 表 SQL语句中如何转换字符型字段为整型? First-chance exception 请教directx的一个入门问题? 诚征MM中…… 多线程问题?? 请问sybase中real类型的最大值是多少?999999999 自杀的N个理由 如何根据日期计算出一年中的第几天? 情况不对,撤丫~~~~~~~~~ 如何在JBuilder4.0编译环境下打包\编译??????? 推荐一下雷鬼音乐 芭比英语怎么读?最好把拼写也写一下!注意是英文! 工程队13天完成一项工程,平均每天完成这项工程的几分之几?每天可完成这项工程的几分之几? 推荐几条鲍勃 迪伦bob dylan的最经典歌曲.要最经典、百听不厌的. 芭比娃娃英文介绍芭比娃娃的英文介绍! 工程队做一项工程,计划8天完成,平均每天完成这项工程的几分之几,3天完成这项工程的几分之几? 请问一首鲍勃.迪伦(Bob Dylan)的歌名windows xp 第一次发行的时候,捆绑的windows media player 里面自带了一首美国乡村歌手鲍勃.迪伦(Bob Dylan)的歌,我忘了是歌名, 芭比娃娃的具体英文介绍介绍芭比的原型 发展史 流行程度 以及发展趋势 工程队12天完成一项工程,平均每天完成这项工程的几分之几?3天完成这项工程的几分之几? Forever Young 歌词翻译! 芭比娃娃用英语怎么说?芭比娃娃和奥特曼的英语说法 一条路,甲工程队单独挖15天完成这条路的1/5,甲每小时完成这条路的几分之几 英语翻译如题,这首歌还行,顺便推荐一下. “芭比娃娃”用英文怎么说? 工程队要在10天内抢修一条长2千米的公路,平均每天要修完这条路的几分之几?平均每天要修多少千米?要有列式 和理由~ 小数,分数可不可以都化成有理数?在分类题当中,小数、分数可不可以互化?分母能被分子整除的算不算做整数? 鲍勃迪伦是不是跟 披头士 杰克逊 猫王一样出名?经典之作是什么?不要复制 求写一篇500字左右的英语短文 关于芭比娃娃的RT急需在线等 把0.017(17循环)化成有理数(分数) 求芭比钻石城堡中的《we're gonna find it》的合唱谱就是两个人在小酒馆里唱的,我想和同学表演,所以希望能找到歌谱,如何合唱.谢谢! 哪个是暗影芭比真正的文章啊这么多个都是莎拉的,擦,谁给个准确的~ 一个最筒分数,如果把分子减1,可以约成1/2;如分子如1,可约成2/3.问这个最筒分数是几分之几? 求芭比里的一首歌we are going to find itwe are going to find it 芭比娃娃的销售策略用的什么策略. 0.48=几分之几(分数) 芭比之钻石城堡的 we are gonna to find it 玩芭比娃娃的写怎么玩这个玩具150字作文 百分之12.5怎样化成分数? find that与find it 的区别例句:All of us ( ) necessary to take exercise every day.Many people find ( ) interesting to play computer games.A.this B.that C.them D.it 关于我的芭比娃娃的英文文章不要太长,也不要太短 把下面的百分数化成分数 50% 75% 40% 12.5% 10% we found that和 we found it Barbie娃娃英文介绍希望有能力的朋友帮本人写一篇关于芭比娃娃和韩国迷糊娃娃的英文介绍!急用! 12.5化成分数是多少 bob marley怎么死的 单词bob 的起源演变和发展(我只知道来自于条顿语bob 辉煌的荣耀)具体点要1000来个字 最好附上参考文献或链接 将0.252525252525.化为分数 Bob Marley 的家庭和女人熟悉他的朋友们帮帮我,Bob Marley一生有过几个女人?结婚和没有结婚,分别是谁,叫什么名字,有没有孩子?哪年,在哪里,怎么样可是有关系的,他对家庭和女人有什么看法,越详 美国文化"芭比娃娃"有什么历史背景? 分数化成小数:12分之5 英语翻译Get up,stand up:stand up for your rights!Get up,stand up:stand up for your rights!Get up,stand up:stand up for your rights!Get up,stand up:dont give up the fight!Preacherman,dont tell me,Heaven is under the earth.I know you dont knowWhat Bob是什么意思 把小数化成分数0.75 3.42 2.12 英语翻译歌手:bowie david 专辑:hunky dory Oh,hear this Robert ZimmermanI wrote a song for youAbout a strange young man called DylanWith a voice like sand and glueSome words of truthful vengeanceThey could pin us to the floorBrought a few m 请问一下“爱情的bob”是什么意思… 将下列小数化成分数:0.85=( ) 3.12=( ) 推荐Bob Dylan的歌?不用说Knockin' On Heaven's Door,我找了很多,只是觉得这一首好听. 一项工程需要9天完成,已经干了5天,完成了这项工程的几分之几 18.4%怎样才能化成分数或小数, 求英语爱好者翻译Bob Dylan的Things Have Changed单词基本认识,整篇却云里雾里. Things Have Changed__Bob Dylan A worried man with a worried mind No one in front of me and nothing behind There's a woman on my lap and she's dri 一项工程原计划9天完成,实际上只用7天就完成了.实际每天比原计划多完成工程的几分之几. 芭比之歌星公主 我在这 中文版歌词 求啊.各种球 Bob Dylan的Like a rolling stone谁有中文歌词翻译?这首歌的歌词中文翻译谁有?帮忙呀!谢了! 7天是9天的几分之几 here i am歌词(芭比之歌星公主) I wish i had life歌词(芭比之歌星公主) how high we can fly 歌词最好还有princess want have fun歌词 芭比娃娃英语怎么说 一项工程原计划9天完成,实际上只用7天就完成了.实际每天比原计划多完成工程的几分之几. 急需一份雷鬼音乐的英文介绍与一份Bob Marley的英文介绍一定是纯英文翻译!不是翻译软件翻译出来的!reggae与hip-hop,jazz的节奏有什么关系? 芭比的英文怎么拼写 修一条4千米长的公路,7天修完,平均每天修几分之几千米?每天修了这条公路的几分之几?平均每天修了1千米的几分之几?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn