SWT Java Tutorial

print the name of the file on top of each page,
print the page number at the bottom of each page,
print the word "Confidential" in the lower-right corner,
print the text in the appropriate colors and styles

import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StyledText;
import org.eclipse.swt.custom.StyledTextPrintOptions;
import org.eclipse.swt.printing.Printer;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
public class StyledTextPrintFormat {
  public static void main(String[] args) {
    final Display display = new Display();
    final Shell shell = new Shell(display);
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);
    styledText.setText("12345");
    StyledTextPrintOptions options = new StyledTextPrintOptions();
    options.header = StyledTextPrintOptions.SEPARATOR + "myfile.txt"
        + StyledTextPrintOptions.SEPARATOR;
    options.footer = StyledTextPrintOptions.SEPARATOR + StyledTextPrintOptions.PAGE_TAG
        + StyledTextPrintOptions.SEPARATOR + "Confidential";
    options.printLineBackground = true;
    options.printTextBackground = true;
    options.printTextFontStyle = true;
    options.printTextForeground = true;
    styledText.print(new Printer(), options).run();
    styledText.setBounds(10, 10, 100, 100);
    shell.open();
    while (!shell.isDisposed()) {
      if (!display.readAndDispatch()) {
        display.sleep();
      }
    }
    display.dispose();
  }
}