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

Delphi文本和图形的打印方法

HTML文档下载 WORD文档下载 PDF文档下载
Delphi文本和图形的打印方法

一、基本知识

1、在代码单元的Uses部分增加Printers,打印实际上是把要打印的内容画到tprinter的canvas画布上。

2、选择输出的打印机:printdialog1.execute

3、选择打印控制选项 printersetupdialog1.execute;

二、打印文本

//打印Memo1中的内容

procedure TForm1.BitBtn1Click(Sender: TObject);

var

lines:integer;

prntext:text; 定义打印文本变量

begin

if printdialog1.execute then

assignprn(prntext); //将prntext文件分配给打印机

rewrite(prntext); //打开prntext文件

printer.canvas.font:=memo1.font; //设置打印对象的canvas的字体

for lines:=0 to memo1.lines.count-1 do

writeln(prntext

memo1.lines[lines]); //把Memo1的内容写到打印机对象

system.close(prntext); //关闭打印文件

end;

三、打印图形

1、利用打印机的分辨率,图形将打印在页面的左上角,图形较小。

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

if printdialog1.execute then

begin

printer.begindoc;

printer.canvas.draw(0

0

image1.picture.graphic);

printer.enddoc;

end;

end;

2、利用打印机画布canvas的stretchdraw方法

可以对图形进行更为灵活的处理。

其中要用到一个代表图形输出区域的Rect参数

Trect的类型定义如下:

TRect = record

case Integer of

0: (Left

Top

Right

Bottom: Integer);

1: (TopLeft

BottomRight: TPoint);

end;  

例:通过调整Rect的范围、图形大小及其在打印页面上的位置,实现图形打印:

procedure TForm1.Button1Click(Sender: TObject);

var strect:Trect; //定义打印输出矩形框的大小

temhi

temwd:integer;

begin

if printdialog1.execute then

begin

temhi:=image1.picture.height;

temwd:=image1.picture.width;

while (temhi<printer.pageheight div 2) and //将图形放大到打印页面的1/2 (temwd<printer.pagewidth div 2) do begin

temhi:=temhi+temhi;

temwd:=temwd+temwd;

end;

with strect do //定义图形在页面上的中心位置输出

begin

left:=(printer.pagewidth -temwd) div 2;

top:=(printer.pageheight-temhi) div 2;

right:=left+temwd;

bottom:=top+temhi;

end;

with Printer do begin

begindoc; //将放大的图形向打印机输出

canvas.stretchdraw(strect

image1.picture.graphic);

enddoc;

end;

end;

end;

核心组图曝光:BlackBerry 10明年1月30日发布 “蛐蛐儿”创始人朱连兴:音频二维码的技术实现和应用场景 信恩科技创始人林兴陆:QR Code二维码的前世今生 2012移动开发工具盘点:傻瓜式游戏工具引擎 《福布斯》发布年度“未来之星” 扎克伯格上榜 Cloudera透露Impala发行版新功能及开源计划 Nokia落寞身影下 三星成为全球最大手机厂商 乐视网CTO:智能电视,一个诱人的议题 SeatGeek:Web设计师如何转型iOS开发? IE10支持HTML5标准拖放 IBM IT实践达人赛24强出炉 决赛圈比拼创新实践力 [简讯] Perl迎来25岁生日 软件开发者最重要的四大技能 为什么说惠普、戴尔和IBM在互联网发展中站错队 升级iOS 6还得看Google Maps 2012移动开发工具盘点:16大跨平台游戏引擎 GitHub Web游戏开发竞赛 获奖榜单出炉 Dart里程碑2发布 大幅提升dart2js性能 To Facebook:HTML5不好用?是你不会用! AWS推快照备份服务抵御宕机风险 靠谱吗? 微软品鉴会秀Windows 8电脑 上百款新设备年末上市 甩开外包,雄踞榜首:揭开“宫爆老奶奶”成功的秘密 IBM收购大数据公司StoredIQ 推动大数据传输能力 令人意外:前Windows部门总裁将去哈佛教书 舒迅:产品经理必读的九步法 独家爆料:Facebook移动客户端开发揭秘 一个独立开发者的自白:我如何在一年赚得60万美元 Dropbox收购Snapjoy 意欲打造媒体中心 2012世界“末日”:有经过正确的分析吗?! 23.5亿美元!谷歌出售摩托罗拉机顶盒业务 两家巨头相继放弃移动广告,移动广告形势堪忧? 如何使用。MDB文件 由于上一题回帖子的人数众多,导致分数不够,所以再开一帖!继续!关于用vb进行文件的读写问题! 怎样在数据库中输入了许多条记录后, 一次性存盘成功? 改变光驱盘符?很急很急 在Oracle中怎样加已经存在的数据文件? 我想请高手帮忙 !! 请问目前那一本参考书对DELPHI初学者有很大提高? 一个关于udp重发的问题 如何在delphi程序里调用vc写的exe执行文件。 如何将query中的内容输出到文本文件,然后还能将该文本文件再导入进来?急急急!!!!!!!!!!! 急急急!!我的计算机找不到硬盘了45分 如何求任意多边形的重心 紧急求助:请问java有没有比较丰富的多媒体控件?比如录音的控件??? 急急急!!!我的计算机找不到硬盘了,45分 如何把一个字段的内容求和,然后把结果存入另一表! 请教,怎样把一个记录数组用VB读入ACCESS 2000数据库中? 关于货币类型的问题? the script too large ????????我快疯了。 什么地方有Sybase与Oracle的比较资料? 急急急!!!我的计算机找不到硬盘了,40分 问一下大家 复活节彩蛋 win2000 professional下如何配置weblogic6.0 jsp和javasript如何通讯? 急!!!如何把'¥100'字串转化为浮点型100.00 用OleContainer1将一个WORD文档存进数据库后如何将它从数据库中取出??? 关于SNMP的问题(请高手回答,送40分) 谁想过要戒水?戒成了吗?又渴了吗? 我用在各种机器上使用Win2000,从来没有down过, 真是太奇怪了??? 请问如何确定操作系统系统是中文的还是英文的? 向外国用户发注册码时候应该说些什么,才能让别人觉得你比较专业? 如何捕获ADO的异常信息 struct结构的数据存储是用的什么顺序方式呀? 能介绍几本关于BCB的适合初学者阅读的书吗? 高手进来,struct结构的数据存储是用的什么方式呀 高分!高手请进!!! Newton 有关StoredProc的 各位大虾进来看看,Debug时的错误~~~~~~~ First-chance exception 和 User breakpoint ,帮帮我啊!!! 虽然我也回复没有分,但有意思的帖子,但我对分数高的帖子更有热情,我是不是很势利?? 我的服务器是unix 哪位提供最简单的图片存入库中的代码 谁能得到拨号上网所使用的电话的号码? 关于视中图形(非图像)的缩放问题! 想不通啊~~ 谁来帮帮我~~~?? 哪里可以宕到:Robohelp Office(亚洲版),急!! 谁能告诉我PWS怎么用 小弟刚下载了j2sdkee1.2.1 ,但不知道如何配置,那位大哥愿意帮忙,详细讲一讲如何配置。 TOleContainer怎么没有滚动条呀 在哪里可以找到mschart5.cab? 明天在莫斯科将产生2008年奥运主办国,请猜是哪个城市主办!答对者有分!(可加到204) 英语 (用适当形式填空)_______(not make) a model piane.How many students want ______ (be) a doctor? 英语翻译Mr.Green was ill and went to the hospital.A doctor lookedhim over and said,“Well,Mr.Green,you are going to get some injections,andyou’ll feel much better.A nurse will come and give you the first one thisevening,and then you’ll have 英语翻译材料:紫菜 2包 青瓜 2条 蟹柳 1包 蛋 3只 白饭 大量 白醋 2汤匙 萝卜 1条 1)先把青瓜,蟹柳,材料:紫菜 2包青瓜 2条蟹柳 1包蛋 3只白饭 大量白醋 2汤匙萝卜 1条1)先把青瓜,蟹柳,萝卜清洗 关于英语的适当形式填空he came _____(see) the new play.The workers______(work)on the farm when it began to rain.I will go to Beijing _______(visit)the Great Wall next week.英语翻译:这件事不同寻常(usual)我站起来时发现 英语翻译SPACE APPLICATIONInternational Organizer:CP EXHIBITION Rm 1703,Tung Wai Comm'l Bldg109 Gloucester Road,Wanchai,Hong KongPlease fill up the followingdetail:Company (ExhibitorAddress I/We the undersigned wish to participate inthe above exhi 英语翻译大连老菜菜谱1.\x05 溜肝尖 2.\x05 鸡里蹦 3.\x05 猪里蹦 4.\x05 溜鱼片 5.\x05 苏杨大烤 6.\x05 滑溜肉 7.\x05 糖醋小黄花鱼 8.\x05 炒肉拉皮 9.\x05 红油肉 10.\x05软炸虾仁11.\x05 辣肥肠 12.\x05溜肚 英语适当形式填空 英语翻译The Seller agrees to hold the Buyer harmless against liability and direct (not consequential) cost resulting from infringement of any unexpired United States patent now issued,involving any equipment exclusively designed and manufactured 英语翻译 用适当形式填空 英语Do you like the great _____ (music)Li,Guyi 英语翻译1.上周末,我和朋友去隔壁县的一个村寨旅游 2.当我们接近那里时,发现它是模仿古代某个城堡而建的.3.它以养鸟而闻名 英文翻译“多谢你的巧克力” 英语用适当形式填空1.She wants____(go)fishing after lunch.2.Can you pick _______(they)up for_____(he)?3.There______(be)an old tree on the farm last year. 英语翻译我已经打电话向中国西联汇款咨询过了,叔叔在汇款单上填写我的姓名顺序还是错误的,所以导致汇款现在还是取不到;这是中国西联汇款向我提供的美国西联汇款免费专线:800-325-600 用英语翻译:在书包后面有一些巧克力吗? “时间能够证明一切”用英语怎么讲? 英语翻译Well,here we are.About half a year into our relationship.But as to me,it just feels like we have spent many many years together already for I feel I am a part of you.I can clearly remember our first time together,the way you kissed me,the 巧克力对你的健康有利的英语翻译 让时间证明我对你的爱"翻译成英文怎么写? 英语翻译Don't be sorry,I have loved my life.I have a lovely wife,4 children who will do anything for me and 7 grandchildren that are the loves of my life.I just want to say one thing.I am not sure how experienced you are with the internet but don 巧克力包装盒的英文翻译 英语翻译用英语翻译一下,下面简历中提到的工作内容部分【职位】财务PTP应付账款会计【工作内容】1.接收原材料入库单、销售发票,核算、审核付款清单和各种应付账款,审核各项记录;、2. 英语翻译我很希望能为你做点什么,同时我也想成为你的笔友.请尽快给我回信.我也想了解关于你更多的情况. 英语翻译One of the few foods which appeals to people all over the world is chocolate.Developed by the Aztecs in South America,chocolate was brought to Europe by Spanish explorers around 1500 and soon became a fashionable drink.By the 19th century 我的哥哥有点发烧用英语怎么说? 英语翻译你们好!昨天已经在西联取到了汇款,共:$400美元,谢谢大家对我们的关心,奶奶非常感谢simeona,新年假期完了,现在我也回工厂正常上班了,夏威夷的冬天不冷吧?现在家乡的温度只有8℃ 英语翻译 那里有很多饭店的英语怎么说? “xx省xx市人民医院”正规英文翻译 这些美味的蛋糕是给我们的吗用英语翻译 我亲爱的笔友.英文翻译 英语翻译:对XX来说这个太大了 我从不吃像蛋糕这样的甜食英语翻译怎么说 "亲爱的" 的英文翻译 英语翻译 给他买个生日蛋糕就足够了 英语翻译 亲爱的英语翻译是什么? “吃一个有葡萄的蛋糕.”用英文翻译? 玛丽正在等待她的生日蛋糕.英语翻译! 英语翻译在动物园里,老虎们正在打架,猴子正在荡秋千,狮子在跑步,小鸟正在天空中飞翔,海豹正在睡觉,豹子正在爬树,狐狸正在地上打滚,蟒蛇正在吞食食物. 喜欢吃蛋糕用英语怎么说 生日蛋糕用英语怎样说 英语翻译自己自己总是假装坚强连流泪也保持嘴角上扬可是,只有自己知道心里一阵隐忍的疼痛怅然无触摸到已如上古的回忆时间早已无痕地偷走我们的青春可你何时才会知道我喜欢你呢? 我们吃些蛋糕好吗?英语翻译 我想要一个插着蜡烛的生日蛋糕英文翻译 英语翻译:你要在昆明待几天呢? 用英语说出果仁巧克力蛋糕制作方法 英语翻译they _____ the birthday of their motherland _____ _____ songs 帮我用英语翻译一下“昆明泰伦信息技术有限公司” "制作巧克力蛋糕的食谱"用英语怎么说 英文翻译 "祝愿所有11月生日的朋友生日快乐" She took the dress out of the shop without ______(pay).适当形式填空的, 英语翻译他们来自哪里 他们来自英国么?他们不是来自英国的 .他们来自法国 用DO形式回答 . 黑樱桃巧克力蛋糕用英文怎么写? He went home after( ) (finish)the work. 用英语翻译:你来自哪里? 巧克力 蛋糕 巧克力蛋糕英语 几道英语题(适当形式填空)what would you do if you (have)lots of moneyIf Helen (be) here ,she would know what (do) nowIf I (know)the number,I (tell)you But unfortunately,she didn't tellmeIf 在招聘信息中的英文翻译 这是人家发来的招聘信息一部分1. Before on board (please reply me ASAP on this part then we can arrange the physical check for you before Chinese New year, because the following process for your onb 英语翻译You’ll need four eggs three tomatoes one onion a little oil salt and pepper first slice the onion and tomatoes next in a frying pan fry the sliced onions and oil until it turns light brown then add the tomatoes after frying the tomatoes
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn