Can Java applets use printers?
•
Java
Java applet can easily print text / HTML to standard printer drivers (all common platforms win / MAC / Linux)?
Do you need a signature?
Solution
To print, you will need to use signed applets, or if an unsigned applet attempts to print, the user will be prompted to ask if permission is allowed
Here are some sample code for printing HTML using jeditorpane:
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; } }
Then send to the printer:
HTMLPrinter target = new HTMLPrinter(editorPane); PrinterJob printJob = PrinterJob.getPrinterJob(); printJob.setPrintable(target); try{ printJob.printDialog(); printJob.print(); }catch(Exception e){ e.printStackTrace(); }
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码