48

我想在这里收集所有用于 Java 的 WYSIWYG 文本编辑器。

条目的一些规则:

  • 必须有项目/产品的链接
  • 您必须说明它是开源的还是商业的
  • 是否可以扩展编辑器(添加新功能,如“以紫色为中心的数独”)?那是简单的还是复杂的?
  • 它是否具有许多功能(花哨的字符和段落样式以及在同一文档中对多种语言进行在线拼写检查)或仅具有基本功能(粗体、斜体、无下划线)?
  • 列出重要的依赖项(它是否在带有 Swing 的裸 Java 上运行?SWT?MacOS?)
  • 你的个人意见

此列表应有助于开发人员确定选择哪个编辑器。我不是在寻找“最好的”,而是更多的是“那里有什么”。

4

11 回答 11

7

RSyntaxTextArea

我已经使用过这个组件并且效果很好。它是 LGPL,它基于 javax.swing.text 包 (javax.swing.text.EditorKit)。由于它是一个 Swing 组件,它可以通过几行代码集成到您的应用程序中:

RSyntaxTextArea textArea = new RSyntaxTextArea();
textArea.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_JAVA);
RTextScrollPane sp = new RTextScrollPane(textArea);
于 2009-05-15T13:21:03.257 回答
7

JWebEngine

我推荐JWebEngine。它是我所知道的唯一通过 ACID1 浏览器测试和 mail-acid 测试的。大多数其他 Java HTML 编辑器都基于 javax.swing.text.html.HTMLDocument 并且具有所有相同的错误。HTMLDocument 对 CSS 的支持很差。JWebEngine 对使用 CSS 查看 HTML 有很好的支持。

  • 链接到网站。也有在线示例。
  • 商业许可证
  • 扩展非常简单。供应商将它用于许多不同的东西,如编辑器、HTML 打印引擎、显示自定义占位符等。类的可见性没有问题,如 Sun HTMDocument。
  • 它基于 javax.swing.text.JEditorPane 或 javax.swing.text.JTextPane,您可以将它与拼写检查器 JOrtho 等第三方工具一起使用。
  • 它是纯 Java,可在 Java SE 5 或更高版本的所有平台上运行。它也可以在未签名的小程序中运行。
于 2009-12-16T21:31:43.093 回答
4

我的应用程序需要同样的东西,做了一项研究,发现另外两个产品EKitMetaphase Editor,基于 Charles Bell 的HTMLDocumentEditor,都在 LGPL 许可下并且看起来不错。

但我没有测试它们。这些天我们将看到我们选择什么。

于 2011-01-18T17:56:20.393 回答
4

OpenOffice的作家

可以使用OOoBean嵌入到 Java 中。原始代码在 Swing 下运行,但您也可以使用 AWT/SWT 桥(示例代码)使其在 SWT 下运行。

该项目是开源的(LGPL)。代码依赖于操作系统,但有适用于所有主要操作系统的版本(项目网站支持 Windows、Linux、MacOS 和 Solaris,但您也可以下载源代码并为其他人编译)。

由于底层产品是一个成熟的办公应用程序,它提供了您可能想要的所有功能(花哨的样式、不同语言的在线拼写检查、嵌入图片、在图片周围流动文本,等等)。

缺点是您必须安装 OpenOffice;事实上,编辑器不是 Java 的一部分,但它是一个远程进程,只呈现在 Java 应用程序的窗口中。这意味着启动时间非常明显,性能可能会很慢。处理有时也很“奇怪”。需要一些配置来消除额外的边框和不需要的文档分页。

因此,编辑器不能真正从 Java 扩展。您要么必须用 C++ 编写代码,要么使用 OOo 自己的内置语言。您可以做的是您可以在文档中注册侦听器,并且您可以完全访问文档的底层模型。通过这种方式,您可以深入了解重要部分并修改行为,但这通常感觉就像在进行锁孔手术。

我的结论:如果 OO 具有您需要的功能,这可能是获得您需要的最简单的方法。如果您需要大量定制,您将与框架的默认设置进行上游战斗。

于 2009-05-12T14:41:47.883 回答
3

简单的 HTML

  • 它的 GPL
  • 不知道扩展它有多容易
  • 不支持拼写检查,但有表格、列表。
  • 基于 Swing,需要 Java 1.4 和可选的 Java Help
  • 我没有将它用作程序员 - 就​​像最终用户一样,它有一些怪癖 - 就像没有多级列表或表格不太好但没关系。
  • 另外,它为您提供 HTML,因此很容易将处理结果嵌入到其他组件中。
  • 现在在SourceForge
于 2009-05-14T19:47:35.613 回答
1
  • 这是链接:JRichTextEditor
  • 它是开源的(LGPL)。
  • 你可以用它做任何你想做的事。只需从 github 克隆它。它是可扩展的。
  • 它具有相当多的功能,但欢迎进行增强。它是一个摇摆组件,依赖于 iText 2.1.7(仍然是 LGPL)和其他库(例如 xerces)。一个显着的特点是可以添加任何类别的标记点/范围。可用于超链接或其他任何东西。在库中还有一个帮助应用程序。
于 2013-04-28T17:13:11.057 回答
1

docx4all

docx4all 是用于 docx 文件的跨平台所见即所得编辑器,使用 Java Swing 和 JavaFX Script。作为小程序或应用程序运行。见http://dev.plutext.org/trac/docx4all/wiki/FeatureSet

开源还是商业?见http://dev.plutext.org/forums/viewtopic.php?f=7&t=209

需要 Java 6。

于 2009-10-18T22:25:59.963 回答
0

使用 HTML WYSIWYG 编辑器和SWT 浏览器组件参见示例代码片段)。选项:

临:

  • 由于 HTML 有很多选择
  • 支持 HTML 作为本机格式(因此当您需要将文档保存在某处或修改它们时不会出现异常问题,这与本机 Word 格式不同)。
  • 使用字体、颜色、图像很简单,因为您不必自己管理资源。浏览器组件将为您完成

反对:

  • 该解决方案取决于平台。使用richhtml4eclipse 进行的测试显示了在 Windows XP (IE) 和 Mac OSX (Safari) 上的不同行为
  • 如果出现问题,用户将不得不切换到 HTML 代码视图并自行修复。
  • 祝内容辅助、代码完成、拼写检查、折叠或注释好运。
  • 添加特殊功能将迫使您通过非常简单的 API 进行锁孔手术
  • 对于许多这样的编辑器,性能并不是那么好,尤其是对于大型文档。
  • 取决于 SWT。

资料来源:Lösungen für einen SWT 富文本编辑器

于 2009-09-16T13:38:43.330 回答
0

富文本查看器

临:

  • 提供拼写检查、代码完成、撤消/重做、自动缩进和您期望的大多数其他功能(请参阅此处

反对:

  • 取决于SWT
  • 不支持表格
于 2009-09-16T13:48:11.153 回答
0

Eclipse 项目复活了 Vex (Visual Editor for XML)

从维基页面:

  • Vex 利用了许多构成 Eclipse Java IDE 的成熟插件,例如CVS界面、文档搜索书签工具以及可搜索的帮助系统
  • Eclipse 平台实现了一个复杂的插件架构,允许使用第三方或自定义的内部插件来扩展 Vex。
  • Vex 可用于许多平台的原生外观和感觉,包括 Windows、Linux/GTK 和 Macintosh OS-X/Carbon。
  • 使用 Eclipse IDE 的 Java 开发人员可以将 Vex 作为插件安装到他们的 IDE 中,从而可以轻松地使用 Vex 维护软件文档或其他 XML 文件
  • Vex 可重用:Vex 编辑器小部件可作为纯 Java、跨平台组件使用绑定 SWT。开发人员可以重复使用这个小部件,例如作为 RCP 应用程序。

1.0 版已于 2012 年发布,1.1 版计划于 2013 年发布。

用户指南

于 2013-04-26T07:57:10.747 回答
0

看看JWord

  • 是商业的
  • 很多功能(表格、分页、H/F、列布局、wmf、svg、复制粘贴、RTF、ODT、HTML 导出)
  • 免版税
  • 纯 Java-Swing (1.6)
  • 可扩展(基于 Swing Text API)
于 2010-05-18T12:48:39.403 回答