我想打印出JEditorPane的内容,其中包含突出显示的文本(使用setCharacterAttributes设置颜色)。但是,当我使用最基本的print()方法时,如:
try {
boolean complete = TextArea.print();
if (complete) {
return;
}
else {
JOptionPane.showMessageDialog(null, "File could not be printed");
}
}
catch (PrinterException ex) {
JOptionPane.showMessageDialog(null, "File could not be printed");
}
打印的文件看起来并不像我期望的那样。具体做法是:
我想要的是白色背景上的黑色文字。如果有人能指出我正确的方向,我将非常感激!
答案 0 :(得分:3)
您可以尝试使用此http://java-sl.com/JEditorPanePrinter.html打印JEditorPane的内容。
不打印突出显示。它不属于属性。要打印文本背景/前景,您应指定文本元素的属性。
要缩放JEditorPane的内容,您可以尝试http://java-sl.com/Scale_In_JEditorPane.html
要查看背景,只需设置JEditorPane的背景。但是,某些编辑器工具包对根视图使用自己的渲染,您可能需要在根视图中指定颜色。