Java Applet可以使用打印机吗?
发布时间:2020-12-15 00:47:39 所属栏目:Java 来源:网络整理
导读:Java Applet能够轻松打印文本/ HTML到标准的打印机驱动程序(所有常见的平台Win / Mac / Linux)? 需要签名吗? 解决方法 要打印,您将需要使用 Signed Applets,或者如果未签名的小程序尝试打印,则会提示用户询问是否允许权限. 以下是使用JEditorPane打印HTML
Java Applet能够轻松打印文本/ HTML到标准的打印机驱动程序(所有常见的平台Win / Mac /
Linux)?
需要签名吗? 解决方法
要打印,您将需要使用
Signed Applets,或者如果未签名的小程序尝试打印,则会提示用户询问是否允许权限.
以下是使用JEditorPane打印HTML的一些示例代码: public class HTMLPrinter implements Printable{ private final JEditorPane printPane; public HTMLPrinter(JEditorPane editorPane){ printPane = editorPane; } public int print(Graphics graphics,PageFormat pageFormat,int pageIndex){ if (pageIndex >= 1) return Printable.NO_SUCH_PAGE; Graphics2D g2d = (Graphics2D)graphics; g2d.setClip(0,(int)pageFormat.getImageableWidth(),(int)pageFormat.getImageableHeight()); g2d.translate((int)pageFormat.getImageableX(),(int)pageFormat.getImageableY()); RepaintManager rm = RepaintManager.currentManager(printPane); boolean doubleBuffer = rm.isDoubleBufferingEnabled(); rm.setDoubleBufferingEnabled(false); printPane.setSize((int)pageFormat.getImageableWidth(),1); printPane.print(g2d); rm.setDoubleBufferingEnabled(doubleBuffer); return Printable.PAGE_EXISTS; } } 然后发送到打印机: HTMLPrinter target = new HTMLPrinter(editorPane); PrinterJob printJob = PrinterJob.getPrinterJob(); printJob.setPrintable(target); try{ printJob.printDialog(); printJob.print(); }catch(Exception e){ e.printStackTrace(); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读