是报告就用JReport,其他的普通打印,图形和文本事一样处理的。

解决方案 »

  1.   

    虽然没有用过,但是看了O'reilly的JFC后知道,其实很简单阿,打印就和在画布上画画和写字一样啊:以下是主要打印的回调部分,实现大部分打印工作
    public int print(Graphics g,PageFormat format,int pagenum) {  ...省略判断页数和字体基线定义
      //清除背景为白色
      g.setColor(Color.white);
      g.gillRect((int)format.getImageableX(),(int)format.getImageableY(),
                 (int)format.getImageableWidth(),(int)foramt.getImageableHeight());
      //设置字体颜色
      g.setFont(font)
      g.setColor(Color.black);
      g.drawString("xxxx",x,y);
      g.draw(new Rectangle2D.Double(x,y,rectWidth,rectHeight));
      等等,随便怎么都可以了
      return PAGE_EXISTS;
    }
      

  2.   

    试试如下代码
    import javax.print.*;
    import javax.print.attribute.*;
    import javax.print.attribute.standard.*;
    import java.io.*;public class PrintFileTest{    public static String TMP_FILE="C:\\172.gif";
        public static void main(String[] args){
          String filename = TMP_FILE;
          PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
          DocFlavor flavor = DocFlavor.INPUT_STREAM.GIF;
          PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras);
          PrintService defaultService =   PrintServiceLookup.lookupDefaultPrintService();
          PrintService service = ServiceUI.printDialog(null, 200, 200,printService, defaultService, flavor, pras);
          if (service != null) {
            try
            {
              DocPrintJob job = service.createPrintJob();
              FileInputStream fis = new FileInputStream(filename);
              DocAttributeSet das = new HashDocAttributeSet();
              Doc doc = new SimpleDoc(fis, flavor, das);
              job.print(doc, pras);
         //     Thread.sleep(10000);
            }catch(Exception e)
            {
              e.printStackTrace();
            }
          }
          System.exit(0);
        }
    }下面是的PDF是Java中那两个打印包的用法,还有例子,大家可以下下来看看。
    http://java.sun.com/j2se/1.4.2/pdf/JPS_PDF.pdf
      

  3.   

    最好的方法就是将JTextPane里的内容打印出来,
    打印包都是要用钱买的
    关注一下
      

  4.   

    同意CoolAbu(阿卜-Never Stop(★★★★)) 的。
      

  5.   

    同意CoolAbu(阿卜-Never Stop(★★★★)) 的观点
    不妨试一试