Java调用打印机打印指定路径图片
2018-07-09 14:13
1251 查看
依赖 javax.print
package com.xgt.util; import org.apache.commons.io.IOUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.FileInputStream; import java.io.IOException; import javax.print.Doc; import javax.print.DocFlavor; import javax.print.DocPrintJob; import javax.print.PrintException; import javax.print.PrintService; import javax.print.PrintServiceLookup; import javax.print.SimpleDoc; import javax.print.attribute.DocAttributeSet; import javax.print.attribute.HashDocAttributeSet; import javax.print.attribute.HashPrintRequestAttributeSet; import javax.print.attribute.PrintRequestAttributeSet; import javax.print.attribute.standard.Copies; import javax.print.attribute.standard.MediaPrintableArea; import javax.print.attribute.standard.OrientationRequested; import javax.print.attribute.standard.PrintQuality; public class PrintUtil { private static final Logger logger = LoggerFactory.getLogger(PrintUtil.class); public static void drawImage(String fileName, int count) { FileInputStream fin = null; try { DocFlavor dof = null; if (fileName.endsWith(".gif")) { dof = DocFlavor.INPUT_STREAM.GIF; } else if (fileName.endsWith(".jpg")) { dof = DocFlavor.INPUT_STREAM.JPEG; } else if (fileName.endsWith(".png")) { dof = DocFlavor.INPUT_STREAM.PNG; } PrintService ps = PrintServiceLookup.lookupDefaultPrintService(); PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet(); pras.add(OrientationRequested.PORTRAIT); pras.add(new Copies(count)); pras.add(PrintQuality.HIGH); DocAttributeSet das = new HashDocAttributeSet(); // 设置打印纸张的大小(以毫米为单位) das.add(new MediaPrintableArea(0, 0, 210, 296, MediaPrintableArea.MM)); fin = new FileInputStream(fileName); Doc doc = new SimpleDoc(fin, dof, das); DocPrintJob job = ps.createPrintJob(); job.print(doc, pras); fin.close(); logger.info("打印成功!文件:"+fileName+"数量为:"+count); } catch (IOException ie) { ie.printStackTrace(); } catch (PrintException pe) { pe.printStackTrace(); }finally { IOUtils.closeQuietly(fin); } } public static void main(String[] args) { new PrintUtil().drawImage("D:\\QRCodePng\\合成图.png", 1); } }
相关文章推荐
- Java 调用打印机打印图片
- java调用打印机打印图片
- java如何调用本地打印机进行图片打印
- Java调用Acrobat Reader后台指定打印机打印PDF文件的方法
- java调用打印机打印自定义的图片
- JavaWeb开发 JS调用打印机打印全部或局部页面
- java打印图片和字符串到打印机
- java实现二维码生成及调用打印机打印
- JAVA 指定打印机进行打印
- android 调用系统图库查看指定路径的图片
- C#调用打印机打印图片
- java 指定打印机 进行打印
- java调用条码打印机打印标签完整例子(打印中文,打印二维码)
- java 指定打印机 进行打印
- C# 调用打印机打印图片
- Java调用TSC条码打印机接口打印条码和二维码
- java中调用打印机打印本地文件
- [置顶] 在Unity 中调用打印机来打印图片
- Java如何调用TSC打印机进行打印详解
- 有关于用java来调用打印机进行打印时的设置问题