1

スタイル付きの JTextPane を RTF として保存してから再度開くと、テキストの配置が保持されません。ここに私の方法があります:

private void saveAsRTF(File outfile) {
RTFEditorKit rtfkit = new RTFEditorKit();
StyledDocument doc = (StyledDocument) pane.getDocument();
try {
    FileOutputStream fwi = new FileOutputStream(outfile);
    rtfkit.write(fwi, doc, 0, doc.getEndPosition().getOffset());
    fwi.close();
} catch (IOException ioe) {
    ioe.printStackTrace();
} catch (BadLocationException ble) {
    ble.printStackTrace();
}
}

と (RTF を開く)

 RTFEditorKit rtf = new RTFEditorKit();
  FileInputStream fi = new FileInputStream(j.getSelectedFile());
  rtf.read(fi, pane.getStyledDocument(), 0);

最後に、最初にテキストを整列するには:

 SimpleAttributeSet attribs = new SimpleAttributeSet();  
StyleConstants.setAlignment(attribs , StyleConstants.ALIGN_CENTER);  
pane.setParagraphAttributes(attribs,true);
4

2 に答える 2

2

デフォルトの RTFEditorKit は本当に制限されています。http://java-sl.com/advanced_rtf_editor_kit.htmlで同じことを試してください

于 2012-07-11T05:45:19.823 に答える
0

Java 9 の RTFEditorKit 配置が修正されました。
https://bugs.openjdk.java.net/browse/JDK-8139215

于 2016-05-06T07:19:58.340 に答える