If you are trying to print with AWT, find a 1.1 book with a chapter on printing.<br>
But, if you can upgrade to JFrame, life will be easier for you.<br>
Here's a test case that extends JEditorPane to be a printable editor.<br>
The first file just tests the second. See the print() method overridden in the second file, the PrintableEditor:<br>
---------------------------------------------<br>
import java.awt.*;<br>
import java.awt.event.*;<br>
import java.awt.print.*;<br>
import javax.swing.*;<br>
public class PrintTest extends JPanel{<br>
private String text = "Once upon a time...\nin a galaxy far, far, away..."+<br>
"\nthere was a story to be told...\nsimilar to stories told many times before.";<br>
private JButton portrait = new JButton("Portrait"

;<br>
private JButton landscape = new JButton("Landscape"

;<br>
private PrintableEditor editor;<br>
private JToolBar toolbar = new JToolBar();<br>
public PrintTest() {<br>
try { editor = new PrintableEditor("",text); }<br>
catch (Exception e) {}<br>
portrait.addActionListener(editor);<br>
landscape.addActionListener(editor);<br>
toolbar.add(portrait);<br>
toolbar.add(landscape);<br>
setLayout(new BorderLayout());<br>
add(toolbar, BorderLayout.NORTH);<br>
add(new JScrollPane(editor), BorderLayout.CENTER);<br>
}<br>
public static void main(String args[]) {<br>
JFrame jf = new JFrame("Swing Print Test"

;<br>
jf.addWindowListener(new WindowAdapter() {<br>
public void windowClosing(WindowEvent e) {System.exit(0);}<br>
});<br>
jf.getContentPane().add(new PrintTest());<br>
jf.setSize(new Dimension(250,400));<br>
jf.show();<br>
}<br>
}<br>
-----------------------------------------------------<br>
import java.awt.event.*;<br>
import java.awt.print.*;<br>
import javax.swing.*;<br>
public class PrintableEditor extends JEditorPane<br>
implements Printable, ActionListener {<br>
public PrintableEditor() { super(); }<br>
public PrintableEditor(String type, String text) { super(type,text); }<br>
public int print(Graphics g, PageFormat pf, int pi) throws PrinterException {<br>
Graphics2D g2 = (Graphics2D) g;<br>
g2.translate(pf.getImageableX(), pf.getImageableY());<br>
this.paint (g2);<br>
return Printable.PAGE_EXISTS;<br>
}<br>
public void actionPerformed(ActionEvent e) {<br>
int orientation = ((e.getActionCommand()).equalsIgnoreCase("LANDSCAPE"

) ?<br>
PageFormat.LANDSCAPE : PageFormat.PORTRAIT ;<br>
PrinterJob printerJob = PrinterJob.getPrinterJob();<br>
PageFormat pageFormat = printerJob.defaultPage();<br>
pageFormat.setOrientation(orientation);<br>
Book book = new Book();<br>
book.append((Printable)this, pageFormat);<br>
printerJob.setPageable(book);<br>
try { printerJob.print(); }<br>
catch (PrinterException pe) { System.out.println(pe); }<br>
}<br>
}<br>
-------------------------------------------------