⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 printutilities.java

📁 常用机器学习算法,java编写源代码,内含常用分类算法,包括说明文档
💻 JAVA
字号:
package edu.umass.cs.mallet.base.util;import java.awt.*;import javax.swing.*;import java.awt.print.*;/** A simple utility class that lets you very simply print *  an arbitrary component. Just pass the component to the *  PrintUtilities.printComponent. The component you want to *  print doesn't need a print method and doesn't have to *  implement any interface or do anything special at all. *  <P> *  If you are going to be printing many times, it is marginally more  *  efficient to first do the following: *  <PRE> *    PrintUtilities printHelper = new PrintUtilities(theComponent); *  </PRE> *  then later do printHelper.print(). But this is a very tiny *  difference, so in most cases just do the simpler *  PrintUtilities.printComponent(componentToBePrinted). * *  7/99 Marty Hall, http://www.apl.jhu.edu/~hall/java/ *  May be freely used or adapted. */public class PrintUtilities implements Printable {  private Component componentToBePrinted;  public static void printComponent(Component c) {    new PrintUtilities(c).print();  }    public PrintUtilities(Component componentToBePrinted) {    this.componentToBePrinted = componentToBePrinted;  }    public void print() {    PrinterJob printJob = PrinterJob.getPrinterJob();    printJob.setPrintable(this);    if (printJob.printDialog())      try {        printJob.print();      } catch(PrinterException pe) {        System.out.println("Error printing: " + pe);      }  }  public int print(Graphics g, PageFormat pageFormat, int pageIndex) {    if (pageIndex > 0) {      return(NO_SUCH_PAGE);    } else {      Graphics2D g2d = (Graphics2D)g;      g2d.translate(pageFormat.getImageableX(), pageFormat.getImageableY());      disableDoubleBuffering(componentToBePrinted);      componentToBePrinted.paint(g2d);      enableDoubleBuffering(componentToBePrinted);      return(PAGE_EXISTS);    }  }  /** The speed and quality of printing suffers dramatically if   *  any of the containers have double buffering turned on.   *  So this turns if off globally.   *  @see enableDoubleBuffering   */  public static void disableDoubleBuffering(Component c) {    RepaintManager currentManager = RepaintManager.currentManager(c);    currentManager.setDoubleBufferingEnabled(false);  }  /** Re-enables double buffering globally. */    public static void enableDoubleBuffering(Component c) {    RepaintManager currentManager = RepaintManager.currentManager(c);    currentManager.setDoubleBufferingEnabled(true);  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -