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();
}
}