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
目前还没有答案

相关推荐

    java调用小票打印机打印购物清单

    java调用实体打印机打印pdf文件,包含需要的jar包以及源码

    java通过jacob实现包,实现与打印机通信打印excel文档,实例简单易用

    斑马打印机开发使用的sdk,支持文字、图片、条形码、二维码等打印,支持本地、usb或tcp连接方式,调用 zebraprinterfactory

    如果你还在为看不懂java打印服务源码而发愁,请下载这个代码吧。此代码可以根据你的喜好打印不同的字体和图片,还可以根据打印机名自动区分打印机进行打印。代码里面的大小是根据 58mmpos打印机设计的,已经对代码...

    java连接打印机实现打印输出的功能,代码简洁有效,能够独立运行,可以作为工具类实现调用,用起来非常方便有效。

    可以java直接调用 热敏打印机无驱动 打印票据socket工具类 此demo为 芯烨/xprinter 可以参考变成手册, 完成任何自己想要的小票格式

    null 博文链接:https://andrii.iteye.com/blog/794276

    java 如何调用系统打印机打印文件,也是从别人借鉴过来,免费的

    将打印指令放到txt文档中,读取文档中的指令,发送到斑马打印机中,实现打印。此代码已经非常精简,项目需要用到ts24.lib,资源中也付带这个文件,并且附带一个c.txt文档的指令作为实验用。c.txt和ts24.lib请放在代码...

    java实现斑马打印机zpl指令打印,源码,可运行。java调用zebra打印机,采用zpl指令。支持打印中文,不需要ts24.lib文件,支持打印二维码。

    java和打印机 学习如何使用打印服务api 解释了如 何一步一步的定位打印设备,创建打印工程,创建一个doc 接口的实例,以此来描述你想 要打印的数据并且初始化打印 自从问世以来,java 在多数方面都成长迅速。但一直...

    java原生的打印功能,连接打印机可直接代用代码打印,也可以出现文件选择框功能,选中文件再打印!

    实际上,sun公司也一直致力于java打印功能的完善,而java2平台则终于有了一个健壮的打印模式的开端,该打印模式与java2d图形包充分结合成一体。更令人鼓舞的是,新发布的jdk1.4则提供了一套完整的"java 打印服务 api...

    java使用jnative操作二维码打印机,压缩包里有驱动和源码,java如何使用jnative,打印机驱动如何加载网上有资料

    公司需要一个用户下单后自动打印订单金额发票和快递单号的功能,所以特地写的工具类。...具体作用是:java通过网络,调用网络打印机,打印自定义内容,比如快递单号、发票等等,文档中附带了部分快递公司的快递单模版。

    java实现斑马打印机 zpl指令打印条码

    php,java连接打印机插件

    java串口通信通过静态的commportidentifer.getportidentifiers()获得端口列表;再从这个端口列表中选择所需要的端口,并调用commportidentifer对象的open( )方法,这样,就能得到一个commport对象。当然,还要将这个...

    使用java实现调用打印机动态指令打印条码。

global site tag (gtag.js) - google analytics