java设置默认打印机_java 指定打印机 进行打印

news/2024/11/9 2:44:38/

代码如下:

package com.printer;

import java.io.*;

import java.util.Locale;

import javax.print.*;

import javax.print.attribute.*;

import javax.print.attribute.standard.*;

public class PrintTest {

public static void main(String args[]) {

FileInputStream psStream = null;

try {

psStream = new FileInputStream("D:\\work\\发票扫描件\\维修费20121025(发票联).jpg");

} catch (FileNotFoundException ffne) {

ffne.printStackTrace();

}

if (psStream == null) {

return;

}

//设置打印数据的格式,此处为图片gif格式

DocFlavor psInFormat = DocFlavor.INPUT_STREAM.GIF;

//创建打印数据

//DocAttributeSet docAttr = new HashDocAttributeSet();//设置文档属性

//Doc myDoc = new SimpleDoc(psStream, psInFormat, docAttr);

Doc myDoc = new SimpleDoc(psStream, psInFormat, null);

//设置打印属性

PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();

aset.add(new Copies(3));//打印份数,3份

//查找所有打印服务

PrintService[] services = PrintServiceLookup.lookupPrintServices(psInFormat, aset);

// this step is necessary because I have several printers configured

//将所有查找出来的打印机与自己想要的打印机进行匹配,找出自己想要的打印机

PrintService myPrinter = null;

for (int i = 0; i < services.length; i++) {

System.out.println("service found: " + services[i]);

String svcName = services[i].toString();

if (svcName.contains("Snagit 11")) {

myPrinter = services[i];

System.out.println("my printer found: " + svcName);

System.out.println("my printer found: " + myPrinter);

break;

}

}

//可以输出打印机的各项属性

AttributeSet att = myPrinter.getAttributes();

for (Attribute a : att.toArray()) {

String attributeName;

String attributeValue;

attributeName = a.getName();

attributeValue = att.get(a.getClass()).toString();

System.out.println(attributeName + " : " + attributeValue);

}

if (myPrinter != null) {

DocPrintJob job = myPrinter.createPrintJob();//创建文档打印作业

try {

job.print(myDoc, aset);//打印文档

} catch (Exception pe) {

pe.printStackTrace();

}

} else {

System.out.println("no printer services found");

}

}

}


http://www.ppmy.cn/news/917747.html

相关文章

计算机维修 主板 打印机,一台电脑带电拨打印机接口 ,烧坏主板,不能开机

此电脑因关机时只关机箱上电源开关而没有拔电源插头。 一次在拔掉打印机串口插头。再插上后打印机便不工作。而打印机正常。检查重装驱动程序也无果。 检修时发现机箱带电&#xff0c;拔掉电源插头后消失。显然地线未接好。将打印机的25针数据线连接主机。另一头不接打印机测其…

计算机故障基本维修方法,11种打印机常见故障维修方法

11种打印机常见故障维修方法 发布时间:2015-03-28 16:23:39 作者:佚名 我要评论 这篇文章主要介绍了11种打印机常见故障维修方法,本文讲解了打印字迹不清晰、无法打印大文件、打印不完全、打印效果与预览不同、打印机输出空白纸等常见故障的解决方法,需要的朋友可以参考…

java习题3

292. Nim 游戏 难度简单 你和你的朋友&#xff0c;两个人一起玩 Nim 游戏&#xff1a; 桌子上有一堆石头。你们轮流进行自己的回合&#xff0c; 你作为先手 。每一回合&#xff0c;轮到的人拿掉 1 - 3 块石头。拿掉最后一块石头的人就是获胜者。 假设你们每一步都是最优解。…

灌篮高手 贪心

灌篮高手 tur.exe/tur.in/tur.out 题意描述&#xff1a; 小明所在的篮球俱乐部共有N位灌篮高手&#xff08;包括他自己&#xff09;&#xff0c;编号为1到N。他们之间总是不断地进行着挑战。每一次挑战都是两个人单挑&#xff0c;其中某个人获胜。设已经进行了M场挑战&#…

【Cocos正版手游】《灌篮高手》:点燃热血青春记忆

《灌篮高手》是国内获得日本东映动画正版授权&#xff0c;百度移动游戏独家代理发行的手游巨作&#xff0c;根据超人气同名动画《灌篮高手》精心改编&#xff0c;基于Cocos引擎打造而成。 贯穿80、90后的热血青春记忆&#xff0c;点燃一代人的篮球热情&#xff0c;正版手游不容…

《灌篮高手》票房刷新多项IMAX中国市场纪录,创进口动画片历史最佳首周末 | 美通社头条...

美通社消息&#xff1a;IMAX China Holding宣布4月20日上映的日本动画电影《灌篮高手》首周末在IMAX影院火爆"开赛"劲收3800万人民币的票房&#xff0c;横扫多项进口动画和日本影片的开画纪录。从20日零点场开始&#xff0c;全国IMAX影院人头攒动&#xff0c;无数观众…

基于知识图谱的问答系统实践

文章目录 1 项目目标1.1 数据情况1.2 问题分类 2 技术方案2.1 数据准备2.2 数据入库2.3 查询部分 3 模型3.1 问题分类3.1.1 数据准备3.1.2 分类模型TextCNN 3.2 不同类型的问题处理逻辑 4 总结与优化 1 项目目标 1.1 数据情况 基于知识图谱的问答系统&#xff0c;简称为KBQA&…

python智力问答测试,python实现智力问答测试小程序

智力问答测试功能介绍 .程序设计的思路: 程序使用了一个SQLlite试题库test2.db,其中每个智力问答由题目,4个选项和正确答案组成(question,Answer_A,Answer_B,Answer_C,Answer_D,right_Answer).在测试前,程序从试题库test2.db读取题,存储到values列表中。在测试时顺序从val…