接口 PrintService 是 DocPrintJob 的工厂。PrintService 描述了打印机的功能,并可查询它来了解打印机支持的属性。
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
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.ServiceUI;
import javax.print.SimpleDoc;
import javax.print.attribute.DocAttributeSet;
import javax.print.attribute.HashDocAttributeSet;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
/**
* 调用打印机功能
* @author Administrator
*
*/
public class PrintDemoII {
public static void main(String[] args) {
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
PrintService []pservices = PrintServiceLookup.lookupPrintServices(flavor, aset);
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
PrintService service = ServiceUI.printDialog(null, 200, 200, pservices,
defaultService, flavor, aset);
if(service != null){
try {
DocPrintJob pj =service.createPrintJob();
FileInputStream fis = new FileInputStream("D:" + File.separator + "zkyzl.txt");
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
pj.print(doc, aset);
} catch (FileNotFoundException fe) {
fe.printStackTrace();
} catch (PrintException e) {
e.printStackTrace();
}
}else {
System.out.println("打印失败");
}
}
}
官方详解:
http://doc.java.sun.com/DocWeb/api/javax.print.PrintService
分享到:
相关推荐
- 使用系统默认打印机:如果特定打印机出现问题,可以先尝试使用系统默认打印机测试打印功能。 总之,Java虽然提供了基础的打印支持,但在处理复杂的打印任务时,可能需要结合其他工具和库。理解`java.awt.print`包...
**工具类** `PrinterUtils` 实现了Java通过网络调用网络打印机的功能。它主要通过`java.awt.print`包提供的API来完成打印任务,并且针对不同的打印需求(如快递单或发票)进行了定制化处理。 #### 核心代码解析 ##...
本工具类实现了这一需求,通过Java调用网络打印机来完成打印任务,并且支持自定义打印内容,如快递单号、发票等。本文将详细介绍该工具类的关键实现逻辑。 #### 二、核心功能 - **自动化打印**:根据用户订单信息...
例如,你可以使用`PrintServiceLookup.lookupDefaultPrintService()`获取默认打印机,或者使用`PrintServiceLookup.lookupPrintServices()`查找所有可用的打印机。 2. **USB转并口适配器**:由于Java不直接支持并口...
服务器可以生成预览PDF或者图片,然后通过HTTP请求将这些文件发送到客户端,客户端接收到文件后自动调用默认打印机进行打印。这种方式通常需要服务器端编程,如Java的iText库生成PDF,或者Node.js的pdfkit等库,以及...
4. **PDF和图片打印**:`PrintUtil.java`可能是实现打印逻辑的类,它包含了调用Java的`PrinterJob`和`PrintService`接口的方法。`PrinterJob.print()`方法用于实际的打印操作,它可以接收各种类型的图形对象(如...
在本文中,我们将深入探讨如何使用Java SDK与斑马(Zebra)打印机进行交互,以实现文字、图片、条形码和二维码的打印功能。斑马打印机因其在工业和商业领域的广泛应用而广受赞誉,其SDK提供了丰富的功能,使得开发者...
本文将深入探讨如何使用Java调用斑马打印机的官方API(ZSDK_API.jar),以及在实际开发中需要注意的关键点。 首先,斑马打印机的ZSDK_API.jar是官方提供的Java库,它封装了与打印机通信的底层协议,包括设置打印...
在Java环境下,我们可以编写程序来发送ZPL指令到斑马打印机,实现打印任务。本项目提供了可运行的源码,使得开发者无需依赖ts24.lib库就能处理中文和二维码打印。 首先,理解ZPL指令是实现斑马打印机打印的基础。...
在本文中,我们将深入探讨如何使用Java编程语言来实现ZPL指令,以便调用Zebra打印机进行标签打印,包括二维码和中文字符。ZPL(Zebra Programming Language)是Zebra公司开发的一种专用于控制其标签打印机的语言,它...
java调用打印机进行打印,本案例调用默认的打印机进行打印任务
// 获取默认打印机 PrintService defaultPrinter = PrintServiceLookup.lookupDefaultPrintService(); // 设置打印服务和打印内容 PrinterJob job = PrinterJob.getPrinterJob(); job.setPrintService(default...
使用java代码获取本地网络中的打印机,封装标签格式数据,调用计算机默认打印机打印热贴标签
在IT行业中,尤其是在软件开发...总之,Java调用ZPL条码打印机实现中文打印和网络打印涉及字符编码、网络通信、ZPL指令等多个技术层面。理解这些知识点,并结合实践中的调试和优化,可以帮助我们高效地完成打印任务。
这个类可以包含连接打印机、发送打印任务、关闭连接等方法,使得其他部分的代码只需调用这些方法即可完成打印任务。 总的来说,Java Zebra打印机的使用涉及到理解打印机语言、建立网络连接、构建和发送打印命令等多...
默认打印机通常是系统配置中的首选设备,而指定打印机则需要在调用打印任务时明确提供打印机ID。对于PDF图片打印,云打印服务通常支持上传PDF文件,然后将其转换为适合打印机的语言(如PostScript或PCL),最后发送...
2. **预设默认打印机**: - 在Java中,可以通过`PrinterJob.getPrinterJob().setPrintService()`方法选择默认的打印机。首先,你需要获取可用的打印机列表,然后根据需要选择一个。 - `PrintServiceLookup....
资源中包含java使用jna调用自己开发的twain.dll的所有源代码,自测能够实现简单扫描。 本人一直使用java 对c++程序不熟悉,现在这个twain.dll只能取得默认源,并且也弹不出来源的设置对 话框,应该是dllmain的消息...