`
rayln
  • 浏览: 433815 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Print打印机例子

    博客分类:
  • Java
 
阅读更多
例子一:
public class Test {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws Exception {
        File imageFile = new File("f:/1.png");
        //打印作业的属性
        PrintRequestAttributeSet attributes = new HashPrintRequestAttributeSet();
        //打印作业的格式,来源(PNG就换成.PNG就行了)
        DocFlavor flavor = DocFlavor.INPUT_STREAM.JPEG;
        //搜索所有可能的打印服务
        PrintService[] services = PrintServiceLookup.lookupPrintServices(flavor, attributes);
        System.out.println("services:"+services.length);
        
        //搜索默认打印服务
        PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
        //显示打印Dialog
        PrintService service = ServiceUI.printDialog(null, 0, 0, services, defaultService, flavor, attributes);
        //如果用户选择打印
        if(service!=null){
            //创建打印任务
            DocPrintJob job = service.createPrintJob();
            FileInputStream fis = new FileInputStream(imageFile);
            //任务的属性
            DocAttributeSet docAttributes = new HashDocAttributeSet();
            Doc doc = new SimpleDoc(fis, flavor, docAttributes);
            //打印
            job.print(doc, attributes);
        }
    } 

}



例子二:
转载自: http://www.iteye.com/topic/1121183

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("打印失败");
		}
	}
}
分享到:
评论
1 楼 lionios 2012-12-16  
如果不显示printDialog,则打印出来的是空白页,请问你试过这种情况吗?

相关推荐

    pb 获取默认打印机 print powerbuild

    "pb 获取默认打印机 print powerbuild"这个标题所指的知识点,就是如何在PowerBuilder应用中实现对系统默认打印机的选择和设置。描述中的运行效果链接虽然已经失效,但我们可以根据常规操作推测其可能展示的是一个...

    老外最新版android测试无线打印机例子

    "老外最新版android测试无线打印机例子"提供了3.7版本的SDK,相比3.1版本,它可能包含了更多的优化和新特性,使得开发者能更方便地集成到自己的应用中。下面将详细解释这个例子中涉及的核心知识点: 1. **Android...

    java控制热敏打印机的例子

    此外,还可以使用一些预先封装好的Java库,如` ESCPOS-Java-Print-Example `,这些库简化了ESC/POS指令的使用,提供了更友好的API。 总之,通过Java结合RXTX库和ESC/POS指令,我们可以实现对爱普生热敏打印机的控制...

    C# 打印小例子print

    本示例"Print1"主要展示了如何在C#环境中实现窗口内容的打印功能,包括从Label和TextBox控件获取内容,以及提供打印机选择和打印预览的能力。下面我们将深入探讨C#中的打印机制及相关知识点。 1. **打印API**: .NET...

    JS调用打印机打印例子

    在JavaScript(JS)中,调用打印机进行打印是一项常见的需求,尤其在网页应用中。本文将深入探讨如何利用JS实现这一功能,以及涉及到的相关技术点。 首先,JS调用打印通常依赖于浏览器提供的API,例如`window.print...

    VB调用打印机的例子.rar

    这个"VB调用打印机的例子.rar"压缩包提供了一个示例,帮助开发者了解如何在VB环境中利用Windows的打印接口和控制面板进行操作。在VB6.0中,可以顺利编译并运行这段代码。 首先,我们需要理解VB中的打印机制。VB6.0...

    普印力RFID打印机网络打印例子

    在这个示例中,`ipAddress`是打印机的IP地址,`port`是打印机的监听端口(9100),`printData`是待打印的数据,通常是一个包含打印指令的文本字符串。在实际应用中,`printData`可能来自于一个PDF文档、ZPL(Zebra ...

    2个打印例子vc

    这两个例子“Print2”和“VC_PrintTest”旨在帮助开发者理解和实现MFC中的打印机制。 一、MFC打印基础 MFC中,打印和打印预览通常通过CView类的派生类来处理。CView是CDocument类的视图,它负责显示文档内容。为了...

    斑马打印机标签打印例子

    斑马打印机是一款在工业、商业领域广泛使用的专业条形码和标签打印机,尤其适用于物流、仓库管理、零售业等。本示例主要介绍如何利用VB(Visual Basic 6.0)编程语言与斑马打印机进行交互,实现标签的打印功能。 在...

    pdf打印机安装程序

    1. 下载安装文件:在这个例子中,我们有名为"FppPro317chs.exe"的安装程序。这可能是某款PDF打印机软件的简体中文版。用户需双击该文件,按照向导提示进行安装。 2. 安装过程:在安装过程中,系统可能会提示用户...

    jquery调用打印机打印

    在这个例子中,当用户点击“打印”按钮(`#printBtn`)时,`jQuery`会隐藏非打印元素(`body *:not(.print-only)`),显示仅在打印时才需要的元素(`.print-only`),并添加指向`print.css`的`<link>`标签,以应用...

    github上惠普移动打印机android调用sdk打印的例子

    https://codeload.github.com/mobileprint/android-print-sdk/zip/master

    android wifi连接打印机并获取打印机状态

    最后,调用`PrintManager`的`print()`方法提交打印作业。 3. **数据转换与格式化**: Android打印框架支持多种数据格式,如PDF、JPEG等。开发者需要将待打印的数据转换为这些格式。例如,如果要打印网页内容,可以...

    java PrinterJob 操作打印机

    在这个例子中,`ImagePrintable`类实现了`Printable`接口,其`print`方法负责绘制图像到打印页面。 ### 打印预览 Java的打印预览功能可以通过`PrinterJob`的`printDialog`方法实现。这个方法会显示一个对话框,...

    58MM打印机所有文档

    为了兼容58mm打印机,开发者需要创建一个自定义的PrintService,继承自Android的`PrinterDiscoverySession`和`PrintService`类。这样,开发者就可以实现特定于58mm打印机的功能,如设置打印宽度、行间距、字符编码等...

    VB6.0源代码编写的print和for循环方法例子

    Printer.Print "这是使用Printer.Print在打印机上打印的信息。" End Sub ``` `Print`语句还可以配合其他函数或表达式一起使用,例如: ```vb Printer.Print "当前日期是: " & Date ``` `For`循环的使用: `For`...

    Print.zip Java实现Printtable类,打印表格

    综上所述,`Print.zip` 文件中的`PrintTable`类实现了在Java Swing环境中创建一个可调整的表格,并利用`Printable`接口将表格内容输出到打印机的功能。这个示例涵盖了GUI编程、绘图、事件处理以及打印服务等多个Java...

    Android打印例子(包含USB、蓝牙、Wifi)

    Android打印例子(包含USB、蓝牙、Wifi),包含了原生USB连接打印机打印条码,支持链接蓝牙打印机打印条码,支持局域网Wifi网络打印机;威哥例子使用的打印机是“快麦”打印机,大家使用别的打印机时请稍作修改,...

    java实现sdk斑马打印机打印。

    在这个例子中,`generateZplFromImage`是一个自定义方法,用于将Java的`BufferedImage`对象转换为ZPL指令字符串的字节数组。 请注意,为了确保良好的打印效果,需要对打印机的设置(如纸张大小、打印密度、宽度等)...

    C#获取打印机安全句柄

    在这个例子中,我们添加了一个`PrintQueueChangeListener`,并在`OnPrintQueueChanged`方法中处理各种类型的打印机变化。 总之,通过C#的`System.Printing`命名空间,我们可以轻松地获取打印机安全句柄,并监控...

Global site tag (gtag.js) - Google Analytics