→ java企业应用
-
0 0
-
java 连接打印机 打印作业属性设置无效果问题 5
各位好:
我现在在做一个用java 发送打印文件 到打印机上的项目但是我现在遇到一些问题,希望大家给点思路,谢谢。
《疑问一》
fileinputstream psstream;
try {
psstream = new fileinputstream("file.ps");
} catch (filenotfoundexception ffne) {
}
if (psstream == null) {
return;
}
docflavor psinformat = docflavor.input_stream.postscript;
doc mydoc = new simpledoc(psstream, psinformat, null);
printrequestattributeset aset = new hashprintrequestattributeset();
aset.add(new copies(5));
aset.add(sides.duplex);
printservice[] services = printservicelookup.lookupprintservices(psinformat, aset);
if (services.length > 0) {
docprintjob job = services[0].createprintjob();
try {
job.print(mydoc, aset);
} catch (printexception pe) {}
}
首先我 电脑上 装了 4 到 5 个 不同厂商 的打印机驱动
上面的这段代码我是从jdk 1.7 api 上拷贝下来的, 我 运行时 发现 返回的 services 为空,即没有找到适合条件的 打印服务,
但是我装的这几个打印机 的驱动是支持 多份 ,双面打印的啊 ?
如果我把
aset.add(new copies(5));
aset.add(sides.duplex);
这两行代码删掉, 那么就可以找到 我装的那4,5 个打印服务了。
这是疑问一
《疑问二》
file file=new file("d:\\1.pdf");
printrequestattributeset pras1 = new hashprintrequestattributeset();
docflavor flavor = docflavor.input_stream.autosense;
inputstream in= new fileinputstream(file);//这里的file是已经生成的pdf
printservice printservice1[]= printservicelookup.lookupprintservices(flavor, pras1);
printservice defaultservice = printservicelookup.lookupdefaultprintservice(); //默认的printservice
printservice service = serviceui.printdialog(null, 200, 200,printservice1, defaultservice, flavor, pras1);
docprintjob pj=service.createprintjob();
docattributeset das = new hashdocattributeset();
pras1.add(new copies(2));
pras1.add(printquality.high);
pras1.add(sides.duplex);
pras1.add(new jobname("e2",null));
das.add(printquality.high);
das.add(sides.duplex);
doc doc1=new simpledoc(in,flavor,das);
pj.print(doc1, pras1);
上面这段代码是我自己写的, 首先 pdf文件可以发到打印机 打印出来,但是, 诸如 我设置的
pras1.add(new copies(2));
pras1.add(printquality.high);
pras1.add(sides.duplex);
pras1.add(new jobname("e2",null));
或
das.add(printquality.high);
das.add(sides.duplex);
文件始终 打印出来的 都是 1 份 , 单面打印, 这个是疑问 2 , 我猜想,是不是 java 设置的这些打印 属性在 调用打印机驱动的时候, 没有能够将这些属性传递给打印机?还有 java 的这些属性设置 是不是在不同厂商 开发的打印机打印机驱动 不一定有效果?
小弟现在正在疑惑中,希望有经验的朋友可以指点一下,谢谢。
2012年1月06日 14:14
25
0 0 1
目前还没有答案
相关推荐
通过pos命令/tsclib/java类库三种方式实现打印小票,提供完整示例,可选方式较多
java 如何调用系统打印机打印文件,也是从别人借鉴过来,免费的
可以java直接调用 热敏打印机无驱动 打印票据socket工具类 此demo为 芯烨/xprinter 可以参考变成手册, 完成任何自己想要的小票格式
java调用小票打印机打印购物清单
斑马打印机开发使用的sdk,支持文字、图片、条形码、二维码等打印,支持本地、usb或tcp连接方式,调用 zebraprinterfactory
java通过jacob实现包,实现与打印机通信打印excel文档,实例简单易用
将打印指令放到txt文档中,读取文档中的指令,发送到斑马打印机中,实现打印。此代码已经非常精简,项目需要用到ts24.lib,资源中也付带这个文件,并且附带一个c.txt文档的指令作为实验用。c.txt和ts24.lib请放在代码...
实际上,sun公司也一直致力于java打印功能的完善,而java2平台则终于有了一个健壮的打印模式的开端,该打印模式与java2d图形包充分结合成一体。更令人鼓舞的是,新发布的jdk1.4则提供了一套完整的"java 打印服务 api...
打印图片程序,里面有详细的语句注释;在pic.printjpg("filename.gif", "1");输入文件名"filename.gif" 和打印份数"1";
java上位机连接打印机打印指定内容
java调用并口打印机 usb并口打印 无驱打印 本地打印
只需知道ip即可连接打印机控制打印
java实现斑马打印机zpl指令打印,源码,可运行。java调用zebra打印机,采用zpl指令。支持打印中文,不需要ts24.lib文件,支持打印二维码。
java通过串口(lpt1)连接小票打印机 ,打印商品摘要信息及条形码
java连接打印机实现打印输出的功能,代码简洁有效,能够独立运行,可以作为工具类实现调用,用起来非常方便有效。
需要一个用户下单后自动打印订单金额发票和快递单号的功能。 具体作用是:java通过网络,调用网络打印机,打印自定义内容,比如快递单号、发票等等,文档中附带了部分快递公司的快递单模版。
php,java连接打印机插件
公司需要一个用户下单后自动打印订单金额发票和快递单号的功能,所以特地写的工具类。...具体作用是:java通过网络,调用网络打印机,打印自定义内容,比如快递单号、发票等等,文档中附带了部分快递公司的快递单模版。
java6打印插件,如果不行就安装java8安装工具
纯java代码实现跨平台打印word、pdf、图片等信息,无需系统嵌入第三方dll文件等,方便,可移植性好。