核心代码:

public class PrintService {private static final Logger logger = LoggerFactory.getLogger(PrintService.class);/*** 打印* @param in 文件流* @param isDuplex 是否双页打印* @param copies 份数* @param isPortrait 是否竖打* @throws Exception*/public void print(InputStream in,boolean isDuplex,int copies,boolean isPortrait) throws Exception {if(in == null) {throw new TXException("文件流为空");}if(copies <= 0) {throw new TXException("打印份数不应小于0");}logger.info("打印文件: 是否双页打印: "+isDuplex+",份数: "+copies+"是否竖打"+isPortrait);try(PDDocument document = PDDocument.load(in);) {Book book =new PDFPageable(document);PrinterJob job = PrinterJob.getPrinterJob();job.setPageable(book);HashPrintRequestAttributeSet pars = new HashPrintRequestAttributeSet();pars.add(MediaName.ISO_A4_WHITE);// 是否双页打印if(isDuplex) {if(isPortrait){// 正常的竖直双面打印pars.add(Sides.DUPLEX);} else {// 水平双面打印,双面长边反转打印pars.add(Sides.TWO_SIDED_LONG_EDGE);}   }// 设置成横/竖打印if(isPortrait){pars.add(OrientationRequested.PORTRAIT);  } else {pars.add(OrientationRequested.LANDSCAPE);}// 打印范围,打印1-2页//pars.add(new PageRanges(1, 2));// 多份打印for(int i=0;i<copies;i++) {job.print(pars);}} catch (Exception e) {throw e;}}public static void main(String[] args) throws Exception {InputStream in = new FileInputStream("D:/test.pdf");new PrintService().print(in, false,1,false);in.close();}
}

java连接打印机打印PDF相关推荐

  1. Java调用打印机打印pdf

    要在Java中调用打印机打印PDF,可以使用Java打印API和第三方库,如Apache PDFBox或iText PDF. 以下是使用Java打印API打印PDF的基本步骤: 安装打印机:确保您已经 ...

  2. Java调用打印机打印PDF文档的两种方法

    最近,由于项目需求,需要增加系统调用打印机打印PDF文档功能.以前在Asp.Net项目中做过套打,但是现在的需求直接文档打印,下面是实现代码调用打印机的两种方法. 1.Java Print Servi ...

  3. java 调用打印机 打印pdf方案

    网上检索到的Java Printing Service方案 类似的方法的确会向打印机发送打印任务,但是打印机无反应不响应打印 //1.得到一个文件的输入流 FileInputStream fiStre ...

  4. electron 连接打印机打印pdf文件

    electron 打印内容 区分系统 类似unix系统的使用 npm包:unix-print window系统使用: pdf-to-printer 运行线程 视图线程 函数参数 两个包都提供了prin ...

  5. Java连接打印机打印二维码

    首先导入依赖 implementation 'com.google.zxing:core:3.5.1' implementation 'com.google.zxing:javase:3.5.1' 1 ...

  6. JAVA连接打印机打印小票、产品信息。标签打印机

    2018年写了一个标签打印机(TSC TX600),标签打印程序,实现功能是通过串口读出设备ID生成二维码和设备信息,用于esp8266 smart config配网.源码和资料:https://do ...

  7. java 连接打印机实现打印PDF文件的功能

    java 连接打印机打印PDF文件 需求背景是导出excel并且打印,excel导出设置和转PDF网上有很多资料,本文只记录连接打印机打印PDF的部分. 1: 需要引入maven配置 <depe ...

  8. 【项目管理】Java使用pdfbox调用打印机打印PDF文件

    [项目管理]Java使用pdfbox调用打印机打印PDF文件 1.项目前言 2.项目实现 3.关键代码 4.效果演示 5.问题处理 5.1 安装对应字体 5.2 修改对应代码 系统:Win10 Jav ...

  9. python连接打印机打印文档、图片、pdf文件等

    引言 python连接打印机进行打印,可能根据需求的不同,使用不同的函数模块. 如果你只是简单的想打印文档,比如office文档,你可以使用ShellExecute方法,对于微软office的文档.p ...

最新文章

  1. 最新SOTA模型和实现代码
  2. Python中的*args和**kwargs是什么?该如何使用?
  3. 企业级java springboot b2bc商城系统开源源码二次开发-(四)断路器(Hystrix)
  4. Nginx动静分离-tomcat
  5. linux下搜狗安装目录,Linux安装搜狗输入法
  6. Mac - 苹果电脑mac系统释放硬盘空间方法汇总
  7. mysql 中常用的基本操作
  8. 测试用例设计技术之一等价类法
  9. Python_继承_构造函数
  10. 最大公约数PHP算法,php计算两个整数的最大公约数常用算法小结
  11. 英雄联盟更新完服务器维护,英雄联盟lol今天维护到什么时候结束 停服更新期间玩家是无法进入游戏...
  12. ubuntu软件商店提示has install-snap change in progress问题
  13. OpenCv图像处理实战——银行卡卡号识别
  14. Go中的SSRF攻防战
  15. Charles MOCK 数据 htpps代理
  16. jQuery的隐藏显示hide(),show()方法
  17. idea常用快捷键图文_如何在Word中的自动图文集词条中添加快捷键
  18. 996公司太累?那国企到底面试些什么干货,详细答案)
  19. 附代码 | OpenCV实现银行卡号识别,字符识别算法你知多少?
  20. linux全屏时钟应用下载,全屏时钟下载安装-全屏时钟app下载 苹果版v2.3-PC6苹果网...

热门文章

  1. 预测大盘最准确的指标_一辈子死记一个指标,完全弄透彻,即可预测一个月的股市升跌!...
  2. 数据库系统概论 第十一章课后习题(部分)
  3. 第一章 回归模型分析
  4. 语法解析及Antlr
  5. 【算法】Regular Expression Matching 正则匹配
  6. 期货开户怎么选择好的期货公司 ?
  7. python学习之路(3)turtle画奥运五环
  8. 使用C语言计算1+2+3+...+100
  9. 发人深省 可惜你们忘了他
  10. Origin Pro2017使用PatchOriginPro.exe破解提示Patch unsuccessfully or already