GWT是否具有显示RTF类型数据的RichTextbox?
-
12-10-2019 - |
题
我在用着 GWT RichTextbox, ,但是此窗口小部件显示了简单文本或格式的HTML值的值。有什么方法可以在GWT-RICHTEXT或GWT-HTMLEDITOR小部件中显示RTF数据?还是其他GWT库中有小部件会这样做?
解决方案
我不这么认为。大约一年前,我们想在客户端开发RTF浏览器,但我们失败了。没有GWT-RTF库。您可以尝试找到用JavaScript编写的内容,然后用JSNI包装,但我也没有看到这样的库。有人告诉我,ActiveX可能是可能的,但是我们甚至没有尝试过这种方法。
其他提示
您想实现什么?如果您想与RTF编辑器共享文档,例如Microsoft Word,则应检查该编辑器是否也可以与HTML一起使用。我知道MS Word可以编辑HTML。
另外,您可以考虑将RTF转移到HTML中,然后再返回服务器端。有几个Java库这样做,我相信 飞碟 是其中之一。
您可以将RTFEDITORKIT与HTMLEDITORKIT结合使用,以在两个服务器端或Applet之间进行转换。这样,您可以使用GWT丰富的文本编辑器以及输出或输入RTF。
public static String getHtmlFromRtf(InputStream fi){
Writer sOut = new StringWriter();
DefaultStyledDocument doc = new DefaultStyledDocument();
HTMLEditorKit htmlKit = new HTMLEditorKit();
RTFEditorKit rtf = new RTFEditorKit();
try
{
rtf.read( fi, doc, 0 );
htmlKit.write(sOut, doc, 0, doc.getLength());
}
catch (IOException e)
{
e.printStackTrace();
}
catch (BadLocationException e)
{
e.printStackTrace();
}
return sOut.toString();
}
不隶属于 StackOverflow