public int print(Graphics gra, PageFormat pf, int pageIndex) throws PrinterException {
System.out.println("pageIndex="+pageIndex);
Component c = null;
switch(pageIndex){
case 0:
//我在这里处理gra对象的相应处理,画出了一个图像
return PAGE_EXISTS;
default:
return NO_SUCH_PAGE;
}
现在的问题是我调用打印功能:
book.append(new PrintTest(), pf);
PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(book);
但是new PrintTest()实例了有什么用?我打印出来的是白纸啊!在什么地方进行打印图像的设置呢?有没有不要利用Frame或者Compent的例子?java打印PrinterJob Printable
System.out.println("pageIndex="+pageIndex);
Component c = null;
switch(pageIndex){
case 0:
//我在这里处理gra对象的相应处理,画出了一个图像
return PAGE_EXISTS;
default:
return NO_SUCH_PAGE;
}
现在的问题是我调用打印功能:
book.append(new PrintTest(), pf);
PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(book);
但是new PrintTest()实例了有什么用?我打印出来的是白纸啊!在什么地方进行打印图像的设置呢?有没有不要利用Frame或者Compent的例子?java打印PrinterJob Printable
解决方案 »
- abstract class和interface有什么区别?各自有什么作用
- 看看这个程序有什么错
- 快来,有分抢啊!
- 怎样制作一个java界面,里面有一个文本框用来编译java源程序
- 菜鸟问题——今天刚接触JAVA,帮忙看看
- 关于网页打印的方法??急!!在线等待!!!!高分求救!!!!
- 大小写
- 一个简单的问题请教大家
- 使用jdbc-odbc桥时提示login failed for user ('null')
- java 连接oracle 写一个登陆注册,提示 缺失 SELECT 关键字 大神求解
- 高分求助!各位大神!
- 求助关于getruntime.exec调用keytool的问题,弄了一个晚上,崩溃了
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Rectangle2D;
import java.awt.print.PageFormat;
import java.awt.print.Paper;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;public class PrintableDemo implements Printable {
public int print(Graphics g, PageFormat pf, int pageIndex) {
if (pageIndex != 0)
return NO_SUCH_PAGE;
Graphics2D g2 = (Graphics2D) g;
g2.setFont(new Font("Serif", Font.PLAIN, 36));
g2.setPaint(Color.black);
g2.drawString("Java Source and Support", 100, 100);
Rectangle2D outline = new Rectangle2D.Double(pf.getImageableX(), pf
.getImageableY(), pf.getImageableWidth(), pf
.getImageableHeight());
g2.draw(outline);
return PAGE_EXISTS;
}
public static void main(String[] args) {
PrinterJob pj = PrinterJob.getPrinterJob(); PageFormat pf = pj.defaultPage();
Paper paper = new Paper();
double margin = 36; // half inch
paper.setImageableArea(margin, margin, paper.getWidth() - margin * 2,
paper.getHeight() - margin * 2);
pf.setPaper(paper); pj.setPrintable(new PrintableDemo(), pf);
if (pj.printDialog()) {
try {
pj.print();
} catch (PrinterException e) {
System.out.println(e);
}
}
}
}