gpt4 book ai didi

java - 打印作业已提交给打印机,但未打印任何内容。 java

转载 作者:搜寻专家 更新时间:2023-11-01 03:55:20 25 4
gpt4 key购买 nike

Java 打印服务有问题。我需要使用默认打印机打印一个简单的文本文档。我在 Windows 机器上使用 HP Deskjet 作为我的打印机,安装了所有驱动程序。这是我使用的源代码:

import java.io.*;
import javax.print.*;

public class PrintTest {
public static void main(String[] args) throws IOException {
File file = new File("print.txt");
InputStream is = new BufferedInputStream(new FileInputStream(file));

//Discover the default print service.
PrintService service = PrintServiceLookup.lookupDefaultPrintService();

//Doc flavor specifies the output format of the file.
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;


// Create the print job
DocPrintJob job = service.createPrintJob();
//Create the Doc
Doc doc = new SimpleDoc(is, flavor, null);

//Order to print
try {
job.print(doc, null);
} catch (PrintException e) {
e.printStackTrace();
}

is.close();
System.out.println("Printing done....");
}

}

我可以看到打印机队列中的打印作业在它消失之前有几毫秒的时间。但是什么也没有打印出来。我听说这是因为 JDK 1.6 中的 Java Print Service 仍然存在问题。但我不完全确定。有什么想法吗?

最佳答案

我知道这是一个很晚的答案,但我在 Windows 上使用 PDF(不是文本)时遇到了同样的问题。似乎打印机可能无法处理原生 PDF,因此作业被接受但没有任何反应(也没有错误)。我通过使用第三方库解决了这个问题,Apache PdfBox ,它就像一个魅力。

我通过回答类似的问题写了一些代码示例 https://stackoverflow.com/a/39271053/935039 .

关于java - 打印作业已提交给打印机,但未打印任何内容。 java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8924033/

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