❶ java如何调用打印机打印图片
package com.iba.cxx.adm.controller;import javax.print.*;import javax.print.attribute.DocAttributeSet;import javax.print.attribute.HashDocAttributeSet;import javax.print.attribute.HashPrintRequestAttributeSet;import javax.swing.*;import java.io.File;import java.io.FileInputStream;/** * Created by Administrator on 2017/9/8 0008. */public class TestController { public static void main(String[] args) {
JFileChooser fileChooser = new JFileChooser(); //创建打印作业 int state = fileChooser.showOpenDialog(null); if(state == fileChooser.APPROVE_OPTION){ // File file = new File("D:/haha.txt"); //获取选择的文件 File file = fileChooser.getSelectedFile();//获取选择的文件 //构建打印请求属性集 HashPrintRequestAttributeSet pras = new HashPrintRequestAttributeSet(); //设置打印格式,因为未确定类型,所以选择autosense DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE; //查找所有的可用的打印服务 PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras); //定位默认的打印服务 PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService(); //显示打印对话框 PrintService service = ServiceUI.printDialog(null, 200, 200, printService,
defaultService, flavor, pras); if(service != null){ try {
DocPrintJob job = service.createPrintJob(); //创建打印作业 FileInputStream fis = new FileInputStream(file); //构造待打印的文件流 DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
job.print(doc, pras);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
❷ java怎么实现打印机打印
javax.print***
可以 当图形那样打开,挺费劲的
想打印好看、又省事,一般是转专pdf等有格式的文档来打印
~~属~~~~~~~
~~~~~~~
~~~~~~~~~~~~
~~~~~~~~~~~~~~~~
❸ 怎么用java调用默认打印机打印文档
java实现调用默认打印机打印文档(以D盘.txt文档为例),代码如下:
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjavax.print.Doc;
importjavax.print.DocFlavor;
importjavax.print.DocPrintJob;
importjavax.print.PrintException;
importjavax.print.PrintService;
importjavax.print.PrintServiceLookup;
importjavax.print.ServiceUI;
importjavax.print.SimpleDoc;
importjavax.print.attribute.DocAttributeSet;
importjavax.print.attribute.HashDocAttributeSet;
importjavax.print.attribute.HashPrintRequestAttributeSet;
importjavax.print.attribute.PrintRequestAttributeSet;
/**
*调用打印机功能
*@authorAdministrator
**/
publicclassPrintDemoII{
publicstaticvoidmain(String[]args){
DocFlavorflavor=DocFlavor.INPUT_STREAM.AUTOSENSE;
PrintRequestAttributeSetaset=();
PrintService[]pservices=PrintServiceLookup.lookupPrintServices(flavor,aset);
PrintServicedefaultService=PrintServiceLookup.lookupDefaultPrintService();
PrintServiceservice=ServiceUI.printDialog(null,200,200,pservices,
defaultService,flavor,aset);
if(service!=null){
try{
DocPrintJobpj=service.createPrintJob();
FileInputStreamfis=newFileInputStream("D:"+File.separator+".txt");//打印D盘.txt文档。
DocAttributeSetdas=newHashDocAttributeSet();
Docdoc=newSimpleDoc(fis,flavor,das);
pj.print(doc,aset);
}catch(FileNotFoundExceptionfe){
fe.printStackTrace();
}catch(PrintExceptione){
e.printStackTrace();
}
}else{
System.out.println("打印失败");
}
}
}
❹ Java如何调用系统打印机打印文件
具体步骤如下:
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.print.Doc;
import javax.print.DocFlavor;
import javax.print.DocPrintJob;
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.swing.JFileChooser;
public class PrintDemo {
public static void main(String[] args) {
JFileChooser fileChooser = new JFileChooser(); // 创建打印作业
File file = new File("f:/111.txt"); // 获取选择的文件
// 构建打印请求属性集
HashPrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
// 设置打印格式,因为未确定类型,所以选择autosense
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
// 定位默认的打印服务
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
InputStream fis = null;
try {
DocPrintJob job = defaultService.createPrintJob(); // 创建打印作业
fis = new FileInputStream(file); // 构造待打印的文件流
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
job.print(doc, pras);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
❺ java 打印机实现(急)
这个很明显是使用读取文件流来实现打印
所以没有GUI界面
也可以实现
只要加载文件的路径就可以了