Cuando se necesite m�s control sobre las p�ginas individuales en un trabajo de impresi�n, podemos usar un 'pageable job' en lugar de un 'printable job'. La forma m�s sencilla de manejar un 'pageable job' es utilizar la clase Book, que representa una colecci�n de p�ginas.
�Ejemplo: SimpleBook
El programa SimpleBook usa un Book para manejar dos 'page painters': PaintCover se utiliza para la cubierta, y PaintContent para la p�gina de contenido. La cubierta se imprime en modo apaisado, mientras que el contenido se imprime en modo vertical.
Una vez creado el Book, las p�ginas se a�aden con el m�todo append. Cuando se a�ade una p�gina a un Book, se necesita especificar el Printable y el PageFormat para usar con cada p�gina.
// In the program's job control code... // Get a PrinterJob PrinterJob job = PrinterJob.getPrinterJob(); // Create a landscape page format PageFormat landscape = job.defaultPage(); landscape.setOrientation(PageFormat.LANDSCAPE); // Set up a book Book bk = new Book(); bk.append(new PaintCover(), job.defaultPage()); bk.append(new PaintContent(), landscape); // Pass the book to the PrinterJob job.setPageable(bk);
Se llama al m�todo setPageable sobre PrinterJob para decirle al sistema de control que utilice el Book para localizar el c�digo de dibujo adecuado.
Puedes encontrar el programa completo en SimpleBook.java.