您的位置:软件 > 开发者网络 > 开发工具 > Java > 正文
在Java中轻松打印文档
[文章信息]
作者:sadly
时间:2003-06-20
出处:论坛
责任编辑:方舟
[文章导读]
本文就将介绍这样一个对象――DocumentRenderer,它将一个文档作为方法中的一个参数并处理指定任务来完成打印
advertisement
热点推荐
· 11.15软件精选 制作MSI文件
· 闪客五周年之闪客光荣榜
· 用Winamp“品尝”无限音乐
· 网络加、解密的技术应用
· 闪客五周年之闪客光荣榜:zoron
[正文]

上一页  1 2 3 4  下一页

  显示文档

  DocumentRenderer能够用来打印几类包含在JEditorPane中的文档。我们用三种类型的文档(JEditorPane能够缺省识别的)测试了这个printer类:HTMLDocuments、PlainDocuments和Rich Text Format文档。只需要做一些很小的改动,这个类就应该可以将包含在JEditorPane中的其他类型文档打印出来了。

  DocumentRenderer类将一个文档的打印形式从其视频显示中区分出来了。这就使你能够针对特定的打印结果进行文本格式化,而会不影响其屏幕显示。DocumentRenderer采用所有打印页面的实际大小来显示文本并计算出行间距(line break)。当文档的宽度不足以显示在打印页面上时,该类会允许使用缩放(scaling)。

  DocumentRenderer相当智能。分页符不会将一行单一语句分放到两个页面上。字符也不会被切成两半,不会象浏览器在处理一般打印时会在这一页末尾显示一句话的上半部分而在下一页的顶部显示这句话的下半部分。这个类能够处理大量字体、颜色和小图标。分栏文本的显示也没有问题。对于每一个JEditorPane能够显示的文本特性,通常DocumentRenderer都可以将这种性能呈现到纸上。

  你只需使用两行代码便可以将DocumentRenderer结合到你的程序中去了。用一个不带参数的构造器创建这个类的实例,再调用一个合适的打印方法来处理其他事情。比如,以下代码将打印这个htmlDocument,它是HTMLDocument类的一个有效实例:

DocumentRenderer DocumentRenderer = new
DocumentRenderer();
DocumentRenderer.print(htmlDocument);

  它给用户显示一个打印对话框,允许用户选择打印机、打印数量等,同时还有一个取消打印的选项。

  PlainDocuments使用了print(PlainDocument)方法,采用和HTMLDocuments相同的方式执行打印。由于在Java中不能直接访问Rich Text Format文档,所以你必须将这种类型的文档发送到DocumentRenderer中(通过将它封装到一个JEditorPane里),就象这样:DocumentRenderer.print(jeditorPane);

  这里的jeditorPane是JEditorPane的一个有效实例,其中包含一个Rich Text Format文档。

  为了给用户提供方便,你可以调用DocumentRenderer的pageDialog方法来显示一个打印对话框以便用户可以调整页面大小、页边设置和纸的打印方向(orientation)。DocumentRenderer还提供了一种方法使开发人员可以选择是否对那些无法在打印宽度内完全显示的文档进行按比例缩放。我们认为能够进行缩放通常是比较好的选择,因为它能够防止文本在正确的页边处被分开,但它似乎比较适合让用户去选择。这种名为setScaleWidthToFit(boolean)的方法提供了按比例缩放的选项。你必须确定在调用打印方法之前调用这个scaling和pageDialog方法。


上一页  1 2 3 4  下一页

·"WAP天极之IT新闻资讯,50万元等你拿"    ·天极WAP之游戏狂图,50万元等你下载


发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
相关内容阅读排行榜
  • 用RMI和CORBA进行分布式Java编程
  • 使用Java API压缩和解压缩数据
  • 通过Java套接字传递对象
  • 正则表达式和Java编程语言
  • 用Java实现PDF报表
  • 正则表达式和Java编程语言
  • 深入理解Collections API
  • 优化JAVA性能的几种方法
  • Java技术实现数据库应用系统慨述
  • 11.15软件精选 制作MSI文件
  • 闪客五周年之闪客光荣榜
  • 兰欣推出我国第一款网络游戏专用音箱
  • 玩家发现117亡灵种族Bug
  • [配置推荐]极品HIFI配置
  • 东瀛美少女COSPLAY(55)
  • 用Winamp“品尝”无限音乐
  • 迷你型PStwo全面透析专题
  • Advertisement