Java 实现打印文件

Java 原生打印:

有一下几种实现方式:

实现打印对象:实现Printable接口

使用工具箱自带的打印对象(Toolkit.getDefaultToolkit().getPrintJob)

通过 javax.print.PrintSerivceLookup 查找定位打印对象

方式一:

private void printTextAction(String printStr) {

printStr = area.getText().trim(); // 打印字符串

if (printStr != null && printStr.length() > 0)

{

PAGES = getPagesCount(printStr);// 分页

// 创建打印对象

PrinterJob myPrtJob = PrinterJob.getPrinterJob();

// 页面格式

PageFormat pageFormat = myPrtJob.defaultPage();

myPrtJob.setPrintable(this, pageFormat);

if (myPrtJob.printDialog()) // 显示打印对话框

{

try

{

myPrtJob.print(); // 开始打印

}

.... ....

return page;// 返回需打印的总页数

}

方式二:

// 打印字符 private void printText2Action(String printStr) {

if (printStr != null && printStr.length() > 0)

{

try

{

PAGES = getPagesCount(printStr);

DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;

PrintService printService = PrintServiceLookup.lookupDefaultPrintService(); // 静默打印 DocPrintJob job = printService.createPrintJob();

PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();

DocAttributeSet das = new HashDocAttributeSet();

Doc doc = new SimpleDoc(this, flavor, das);

... ....

方式三:

// 打印文件

private void printFileAction() {

// 创建一个文件选择器,构造函数存放的是当前用户路径

JFileChooser fileChooser = new JFileChooser(SystemProperties.USER_DIR);

// 显示文件选择对话框

int state = fileChooser.showOpenDialog(this);

// 选择完成

if (state == fileChooser.APPROVE_OPTION) {

// 获取选择到的文件

... ....

因为有点多,所以很多的代码就省略啦哈... ...

使用java实现打印功能_java实现打印功能有没有比较好的方式?相关推荐

  1. java购物小票代码_Java编程打印购物小票实现代码

    简单介绍运行环境: 语言:Java 工具:eclipse 系统:Windows7 (打印设备暂时没有,所以只能提供预览图) 最近,项目需要为商城做一个购物小票的打印功能,日常我们去超市买东西,结账的时 ...

  2. java web 打印图片_java web打印总结

    the contents you don't want to print 如果需要设置不打印区域,加入如下样式: 其实就是引用了noprint样式的控件不打印: 下面是media的相关 media类型 ...

  3. java 打印图片_java 实现打印(图片和文本)

    // 打印内容到指定位置 public void printContent(Map mymap ) { printStr = "打印测试内容";// 获取需要打印的目标文本 if ...

  4. java打印数组_Java中打印数组内容的方式有哪些?

    下面是几种常见的打印方式. 方法一:使用循环打印. public class Demo { public static void main(String[] args) { String[] info ...

  5. java 输出当月日历_java 实现打印当前月份的日历

    实现当前日历的打印,当前日期用*来表示. 关键得出这个月的第一天是星期几. 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示 ...

  6. java打印正三角形_java实现打印正三角的方法

    本文实例为大家分享了java实现打印正三角的具体代码,供大家参考,具体内容如下 代码: package BasicType; /** * 封装一个可以根据用户传入值来打印正三角的方法 * @autho ...

  7. java 计算打印纸大小_java – 如何打印自定义纸张尺寸(检查8“x 4”)?

    打印设计为每英寸像素.基本打印API使用DPI为72. 您需要相应地转换测量值- double paperWidth = 8 * 72d; double paperHeight = 4 * 72d; ...

  8. java打印三角形_java基础打印三角形

    /* 实心等边三角形 */ class Triangle2{ public static void main(String[] args){ int n=5; for(int i=0;i for(in ...

  9. java实现qq抢红包_Java实现抢红包功能

    本文实例为大家分享了Java实现抢红包功能的具体代码,供大家参考,具体内容如下 关键思想: 1.抢红包涉及多人并发操作,需要做好同步保证多线程运行结果正确. 2.由于同时在线人数大,从性能方面考虑,玩 ...

最新文章

  1. 埃森哲报告:2017年数字化浪潮下的医疗行业五大趋势
  2. e.target与e.currentTarget的作用
  3. 只需2小时,成本不到7块,你我皆可制作的3D机器人
  4. Android——应用图标微技巧,系统中应用图标的适配
  5. 如何在Mac电脑查看后台程序?
  6. UBUNTU安装OpenOffice
  7. 递归神经网络教程请签收!
  8. 登录mysql服务器的典型命令_Mysql 远程登录及常用命令
  9. 微信公众号网页授权-java开发
  10. C#UDP广域网,局域网通信-原理分析
  11. RS232串口的直连串口线和交叉串口线的区别
  12. 终于申请自己的博客了
  13. 关于JSON的常见问题以及首字母大写的JSON
  14. Android 手机开机密码破解锁定
  15. 接口返回数据带横杠时的正确写法
  16. Linux系统SCSI磁盘扫描机制解析及命令实例
  17. 西门子PLC S7-200和S7-300有什么差别?如何进行远程上下载?
  18. 雷鸣的游戏人生(六) --- 如何开始学习编程?
  19. 中大型网站架构演变之路
  20. 今日科普:MEMS传感器的应用案例介绍

热门文章

  1. css设置元素继承父元素宽度_详解CSS中的百分比的应用
  2. js检测弹出窗口拦截程序
  3. Linux更改文件及目录权限问题
  4. 工程项目成本/进度综合控制方法及应用
  5. Java中的变量数据类型补充
  6. 两种进入容器的方法 - 每天5分钟玩转 Docker 容器技术(23)
  7. 软件体系架构课下作业07
  8. 起止时间控制,显示格式控制
  9. FIREDAC连接SQLITE乱码的解决
  10. 简述解释型和编译型编程语言?