【问题标题】:java awt.print not printing stringjava awt.print 不打印字符串
【发布时间】:2019-05-08 00:29:08
【问题描述】:

我需要使用 java 打印实用程序将字符串打印到打印机。 我可以看到在我的打印机中创建的作业,但没有打印任何内容。 即使我尝试将打印机更改为 PDF,PDF 也会生成空白。

我试图只打印一个字符串值。

String is="Hello\f";

PrintRequestAttributeSet  pras = new HashPrintRequestAttributeSet();
pras.add(MediaSizeName.ISO_A4); 
pras.add(new Copies(1)); 

DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
Doc doc = new SimpleDoc(is.getBytes("UTF8"), flavor, null);
DocPrintJob job = service.createPrintJob();
job.print(doc, pras);

知道我做错了什么吗?

【问题讨论】:

    标签: java printing awt


    【解决方案1】:

    您是否尝试过使用 DocFlavor.BYTE_ARRAY.AUTOSENSE 以外的其他东西?

    如果你这样做,你有没有打印出来的东西:

                InputStream is=null;
                try {
                    String printString = "Hello\f";
                    is = new ByteArrayInputStream(printString.getBytes("UTF8"));                    
                } catch (UnsupportedEncodingException e1) {
                    ...
                }
    
                PrintRequestAttributeSet  pras = new HashPrintRequestAttributeSet();
                pras.add(new Copies(1));
                DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
                Doc doc = new SimpleDoc(is, flavor, null);
                DocPrintJob job = service.createPrintJob();
    

    【讨论】:

    • 是的,我尝试了自动感应但没有工作;上面的 sn-p 甚至没有工作。什么都没有打印出来。我可以看到打印机队列中的作业和文件大小,但没有触发任何内容。另外,如果我将打印机更改为 PDF,它也无法识别格式。
    • 好吧,您仍然可以尝试使用这段代码,rgagnon.com/javadetails/… 然后如果它仍然不起作用,您可以确定它与您的打印机设置有关
    • 我事先尝试了这段代码,但没有成功,其他用户也遇到了同样的问题,但没有书面解决方案。但问题是,即使在尝试打印为 pdf 时,文件也是空的。不知道有什么问题。
    猜你喜欢
    • 1970-01-01
    • 2019-05-04
    • 1970-01-01
    • 2014-05-28
    • 1970-01-01
    • 2017-09-24
    • 1970-01-01
    • 1970-01-01
    • 2017-04-15
    相关资源
    最近更新 更多