JavaこちらのすべてのWYSIWYGテキストエディターを収集したいと思います。
エントリーに関するいくつかの規則:
このリストは、開発者が選択するエディターを決定するのに役立ちます。私は「最高」ではなく、「そこにあるもの」を探しています。
このコンポーネントを使用しましたが、うまく機能します。 LGPLであり、javax.swing.textパッケージ(javax.swing.text.EditorKit)に基づいています。 Swingコンポーネントであるため、数行のコードでアプリケーションに統合できます。
RSyntaxTextArea textArea = new RSyntaxTextArea();
textArea.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_Java);
RTextScrollPane sp = new RTextScrollPane(textArea);
JWebEngine
JWebEngine をお勧めします。 ACID1ブラウザーテストとmail-acidテストに合格したのは、私が知っている唯一のものです。他のほとんどのJava HTMLエディターはjavax.swing.text.html.HTMLDocumentに基づいており、すべて同じバグがあります。HTMLDocumentではCSSのサポートは非常に貧弱です。JWebEngineはCSSでHTMLを表示します。
OOoBean を使用してJavaに埋め込むことができます。元のコードはSwingの下で実行されますが、AWT/SWT Bridgeを使用してSWTの下でも動作させることができます( example code )。
プロジェクトはオープンソースです( [〜#〜] lgpl [〜#〜] )。コードはOSに依存しますが、すべての主要なOSで利用可能なバージョンがあります(Windows、Linux、MacOS、およびSolarisはプロジェクトのサイトでサポートされていますが、ソースをダウンロードして他のユーザー向けにコンパイルすることもできます)。
基礎となる製品は本格的なオフィスアプリケーションであるため、必要なすべての機能(派手なスタイル、異なる言語でのオンラインスペルチェック、画像の埋め込み、画像の周りのフローテキスト、名前を付けます)を提供します。
欠点は、OpenOfficeをインストールする必要があることです。実際、エディターはJavaの一部ではありませんが、Javaアプリのウィンドウでレンダリングするだけのリモートプロセスです。これは、起動時間が非常に顕著であり、パフォーマンスが低下する可能性があることを意味します。また、処理は「奇数」である場合があります。追加の境界線と不要なドキュメントの改ページを削除するには、いくつかの構成が必要です。
このため、エディターは実際にはJavaから拡張できません。 C++でコードを記述するか、OOo独自の組み込み言語を使用する必要があります。できることは、ドキュメントにリスナーを登録し、ドキュメントの基礎となるモデルに完全にアクセスできることです。このようにして、重要な部分にフックして動作を変更することができますが、これはしばしばキーホール手術を行うような感覚です。
私の結論:OOに必要な機能がある場合、これは必要なものを取得する最も簡単な方法かもしれません。多くのカスタマイズが必要な場合は、フレームワークのデフォルトに対する上流の戦いを戦うでしょう。
私たちのアプリケーションにも同じものが必要で、調査を行い、さらに2つの製品を見つけました EKit および Metaphase Editor 、Charles Bellの HTMLDocumentEditor
、LGPLライセンスの下で、見栄えが良い。
しかし、私はそれらをテストしませんでした。最近、私たちは何を選ぶかを見ることになります。
docx4all
docx4allは、docxファイル用のクロスプラットフォームWYSIWYGエディターで、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。
Eclipseプロジェクトが復活しました Vex(Visual Editor for XML)
Wikiページから:
バージョン1.0は2012年にリリースされ、2013年には1.1が計画されています。
JWord をご覧ください
HTML WYSIWYGエディターと SWTブラウザーコンポーネント の使用( 例についてはスニペットを参照 )。オプション:
プロ:
コントラ: