Tag: 打印

用Java创建虚拟打印机

我想使用Java创建一个虚拟打印机,这样当你打印文件(使用Word或其他东西)时,Java打印机就被列为有效的打印机。 我的目标是获得程序(Word等)直接发送到打印机的打印机格式化对象。 我不知道这是否可行。 对于这个问题,这似乎是一个更合理的解决方案: 使用java打印多种文件类型 有任何想法吗? 我听说这只能使用C或C ++,但我不确定。

如何在指定的打印机中打印Jasper Reports?

我想要的只是在没有用户选择打印机的情况下打印JasperReport。 我搜索了它,但没有好的解决方案可行。 这是我的代码的相关部分: //compile to .jasper String report = JasperCompileManager.compileReportToFile(sourceFileName); //fill the report JasperPrint jasperPrint = JasperFillManager.fillReport(report, parameter, dataSource); //print the report JasperPrintManager.printReport(jasperPrint, true); 我想要选择一台打印机而不是简单的printReport。 有没有办法做到这一点?

自动打印在Java中不起作用

我需要以两种不同的方式打印pdf文件 – 通过网页,用户将看到打印预览并选择打印机并进行打印。 第二种方法是自动化打印,只需单击一个按钮,pdf就应该发送到打印机。 第一种打印方式是通过网页工作正常,但不是第二种方式。 成功检索默认打印机以进行自动打印,但未打印,我也没有收到任何错误。 以下是我的分析: 最初,我认为DocFlavor不受支持。 然后我列出了该打印机支持的DocFlavor ,其中一个是application / octet-stream,即DocFlavor.INPUT_STREAM.AUTOSENSE 。 所以打印机支持这种味道。 然后,我添加了PrintJobListener以检查打印作业是否失败。 当我将该监听器添加到printJob时,它会打印No_More_Events和DATA_TRANSFER_COMPLETE ,如果作业成功,则应该打印JOB_COMPLETE 。 最后一步是调试Java代码。 当我执行job.print() ,它进入Win32PrintJob.print()方法。 我做F6执行每一行,看看它在做什么。 我将它与GrepCode中的代码进行了比较 ,因为源代码未在eclipse中加载。 一切顺利,我看不出任何错误。 它没有进入的唯一地方是这个块,它检查mDestination值,因为我没有提供它,它没有通过。 请参阅以下代码: if (mDestination != null) { // if destination attribute is set try { FileOutputStream fos = new FileOutputStream(mDestination); byte [] buffer = new byte[1024]; int cread; while ((cread […]

无边距打印

我正在尝试写一个photobooth程序,但我很难做出无边框打印。 我很近,但图像没有填充4“x 6”打印。 我会很感激有关实现无边框打印的任何提示。 干杯! final BufferedImage img = ImageIO.read(new File(image)); // Assuming that images are going to be 300 DPI PrinterResolution pr = new PrinterResolution(300, 300, PrinterResolution.DPI); PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet(); pras.add(pr); // Set print job so the image name shows (in the print queue) this.pj.setJobName(new File(image).getName()); PageFormat pf = this.pj.getPageFormat(null); Paper paper […]

如何通过Java中的收据打印机打印支票?

我有pos58收据打印机 (中国制造的打印机),这台打印机支持ESC-POS命令 。 我想在没有JavaPos api的情况下打印出Java支票。 只是我不知道这是怎么回事。 有没有办法实现它? 或者图书馆是什么? 或者有任何例子吗? 谢谢你提前。

确定打印机的便携方式是物理的或虚拟的

我需要为我的网站提供直接打印机function,能够区分物理打印机和虚拟打印机(文件)。 Coupons.com通过本机二进制文件具有此function,必须由用户安装。 我宁愿避免这种情况。 SmartSource.com通过Java applet实现: 有谁知道这是怎么做的? 我对Java API进行了一些挖掘,除了查看名称(看起来容易出现错误识别)之外,没有看到任何可以让你确定物理与虚拟的东西。 能够用Java做它会很好,因为我已经知道如何编写Java applet了。 如果做不到,有没有办法在Flash或Silverlight中执行此操作? 提前致谢。 编辑:杰森Sperske获得了当之无愧的奖励,他们制定了一个优雅的解决方案。 感谢那些分享想法的人,以及那些实际调查过SmartSource.com解决方案的人(比如Adrian)。

打印整个java项目的源代码

我必须打印java项目的整个源代码。 最终版本应如下所示: Eclipse:File – > Print 。 但是使用此function,您只能一次打印一个文件。 有没有办法用一个命令打印(或创建一个pdf / rtf)整个项目(所有* .java,*。xml,…文件)? 我在windows xp sp3上使用eclipse galileo 编辑:对于每个类/文件页面应该(或多或少)看起来像这样: C:\ .. \ .. \ .. \ LibraryExtractor.java 1 package utils.libraries; 2 3 import java.io.File; 9 10 /** 11 * @ 12 * @ 13 * @ 14 */ 15 public class LibraryExtractor { 16 17 /** 18 […]

在java中以同一行打印

我有一个名为Items和3个派生类的基类,在Items基类中,我有一个表单的打印function public void print(){ System.out.println(“ID ” + id + ” Title ” + title + ” “); } 在每个派生类中,我通过super.print();调用Items打印函数super.print(); 其后是与派生类相关的特定打印function。 我的问题是,每当从一个派生类执行打印时,打印的文本就不在同一行上。 所以super.print()将在派生类打印函数之上。 我如何让他们俩在同一条线上?

PrintStream仅打印输入文件的最后一行

我有这个代码 public class program { public static void main(String[] args) { try { String filePath = (args[0]); String strLine; BufferedReader br = new BufferedReader(new FileReader(filePath)); //Read File Line By Line and Print the content on the console while ((strLine = br.readLine()) != null) { //System.out.println (strLine); PrintStream out = new PrintStream(new FileOutputStream( //printing output to […]

从print语句中删除最后一个分隔符

这是一个排序整数数组的方法。 如何从输出中删除最后一个分隔符? public void Sort(int[] sort) { for (int a:sort) { System.out.print(a+ “, “); } } 产量 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 期望的输出 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15