gpt4 book ai didi

java - 如何在 Java for WIndows 中为 printservice 设置 DocFlavor

转载 作者:行者123 更新时间:2023-11-29 09:26:06 25 4
gpt4 key购买 nike

我已经用 Java 编写代码来以编程方式运行打印机。我必须设置 docflavor 的值来打印 .txt 文件。当我将它设置为 INPUT_STREAM.TEXT_PLAIN_UTF_8 并在 Linux 上运行我的程序时,它会打印文本文件.但是当我为 windows 运行相同的代码时。它无法打印文本文件。它只打印 jpeg 格式文件。我为此使用 HP Deskjet F735 打印机。以下是我的代码。

            DocFlavor docflavor = DocFlavor.INPUT_STREAM.TEXT_PLAIN_UTF_8;

PrintRequestAttributeSet attr_set = new HashPrintRequestAttributeSet();

attr_set.add(new Copies(2));

PrintService[] service = PrintServiceLookup.lookupPrintServices(docflavor, attr_set);

if (service.length==0) {
JOptionPane.showMessageDialog(null, "No Printer Selected");
}

else if (service.length > 0) {
System.out.println("Selected printer is " + service[0].getName());

DocPrintJob pj = service[0].createPrintJob();
{
PrintService ps = pj.getPrintService();
FileInputStream fis = null;
try {
File file = new File("/home/ignu/Desktop/newfile");
fis = new FileInputStream(file);
Doc doc = new SimpleDoc(fis, docflavor, null);
pj.print(doc, attr_set);

最佳答案

什么是PrintService.getSupportedDocFlavors给你返回?也许 UTF-8 不受支持?

编辑:

"text/plain; charset=utf-8"似乎不受支持。尝试

DocFlavor docflavor = new DocFlavor.INPUT_STREAM ("application/octet-stream") 

相反。

关于java - 如何在 Java for WIndows 中为 printservice 设置 DocFlavor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1438146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com