Pytanie Edytor tekstowy WYSIWYG w języku Java [zamknięty]


Chciałbym zebrać tutaj wszystkie edytory tekstu WYSIWYG dla języka Java.

Niektóre zasady dotyczące wpisów:

  • Musi istnieć link do projektu / produktu
  • Musisz określić, czy jest to open source, czy komercyjne
  • Czy można rozszerzyć edytor (dodać nowe funkcje, takie jak "fioletowe wyśrodkowane sudoku")? Czy to proste czy złożone?
  • Czy ma wiele funkcji (fantazyjny styl liter i akapitów z sprawdzaniem pisowni online dla wielu języków w tym samym dokumencie) lub tylko podstawy (pogrubienie, kursywa, podkreślenie)?
  • Lista ważnych zależności (czy działa na czystej Jawie z Swing? SWT? MacOS?)
  • Twoja osobista opinia

Ta lista powinna pomóc programistom określić, który z edytorów wybrać. Nie szukam "najlepszego", ale bardziej "co tam".


46


pochodzenie


co edytujesz? HTML? dwójkowy? - Oliver Watkins
Nie mam żadnych preferencji co do formatu pliku. Dzięki potężnemu edytorowi powinno być możliwe pisanie konwerterów do odczytywania / zapisu dowolnych formatów. - Aaron Digulla


Odpowiedzi:


JWebEngine

polecam JWebEngine. Jest to jedyny, który znam, który przechodzi test przeglądarki ACID1 i test kwasowo-pocztowy. Większość innych edytorów HTML Java bazuje na javax.swing.text.html.HTMLDocument i ma wszystkie te same błędy. Obsługa HTML jest bardzo słaba dzięki HTMLDocument. JWebEngine ma bardzo dobrą obsługę przeglądania HTML za pomocą CSS.

  • Link do strony internetowej. Istnieją również próbki online.
  • Licencja komercyjna
  • Jest bardzo prosty w rozbudowie. Sprzedawca używa go do wielu różnych rzeczy, takich jak edytor, mechanizm drukowania HTML, wyświetlanie niestandardowych symboli zastępczych itp. Nie ma problemu z widocznością klas, jak w przypadku Sun HTMDocument.
  • Bazuje na javax.swing.text.JEditorPane lub javax.swing.text.JTextPane i można go używać razem z narzędziami innych firm, takimi jak sprawdzanie pisowni JOrtho.
  • Jest to czysta Java i działa na wszystkich platformach z Java SE 5 lub wyższą. Działa również w apletach bez podpisu.

7



ile wynosi opłata licencyjna? - KJW
Zajrzyj do sklepu internetowego pod adresem inetsoftware.de/store - Horcrux7
Obecnie opłata licencyjna za "komercyjną" wynosi 1950 $ USD ... Więc ... zrób to, co chcesz z tymi informacjami ... JWebEngine wygląda świetnie ... ale koszty mogą być problemem dla większości ludzi ... ( nie OSS / biblioteka) - mawalker


RSyntaxTextArea

Użyłem tego komponentu i działa dobrze. Jest to LGPL i bazuje na pakiecie javax.swing.text (javax.swing.text.EditorKit). Ponieważ jest to komponent Swing, można go zintegrować z aplikacją w kilku liniach kodu:

RSyntaxTextArea textArea = new RSyntaxTextArea();
textArea.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_JAVA);
RTextScrollPane sp = new RTextScrollPane(textArea);

6



Czy kod jest łatwy do rozszerzenia lub podziurawiony z private / final / static? A może sprawdzanie pisowni? Czy próbowałeś dodać własne reguły formatowania? - Aaron Digulla
Ponieważ jest oparty na javax.swing.text.EditorKit, jest dość elastyczny (zajmuje trochę czasu, aby się z nim przyzwyczaić, ale gdy już to zrobisz, jest to łatwe). Miałem swój własny EditorKit, ale RSyntaxTextArea jest lepszy, znacznie lepszy. Kod wygląda dobrze, używa JFlex do tokenizacji tekstu, więc musisz napisać własny plik flex, aby dodać nowy znacznik składni. Dodatkowa biblioteka uzupełniania kodu została dodana pod koniec zeszłego roku i zakładam, że sprawdzanie pisowni można dodać bez zbytniego wysiłku. Możesz poprosić autora o dodanie czegoś takiego, ponieważ jest on bardziej przystosowany do kodu. - adrian.tarau
@ Adrian.tarau Jest to trudne do pracy, a dokumentacja jest nieaktualna. Czy są jakieś alternatywy? - Jeel Shah
@gekkostate Nie jest idealny, ale spełnia swoją funkcję. Co masz na myśli przez "Jest to trudne do pracy"? rozszerzyć bibliotekę lub ją wykorzystać? Jest code.google.com/p/jsyntaxpane, ale go nie używałem. - adrian.tarau
@ Adrian.tarau Aby być bardziej szczegółowym. Nie ma pliku .jar dla biblioteki. Musimy więc dodać go ręcznie, a następnie użyć go lub utworzyć projekt, a następnie samodzielnie utworzyć .jar. Dokumentacja i tutoriale nie są tak dobre, ponieważ podane źródło jest niespójne. - Jeel Shah


OpenOfficePisarz

Może być osadzony w Javie przy użyciu OOoBean. Oryginalny kod działa pod Swingiem, ale możesz go także uruchomić pod SWT, używając mostu AWT / SWT (przykładowy kod).

Projekt jest open source (LGPL). Kod jest zależny od systemu operacyjnego, ale dostępne są wersje dla wszystkich głównych systemów operacyjnych (Windows, Linux, MacOS i Solaris są obsługiwane na stronie projektu, ale można również pobrać źródło i skompilować je dla innych).

Ponieważ produkt bazowy jest pełnowartościową aplikacją biurową, oferuje wszystkie funkcje, które możesz chcieć (wymyślne style, sprawdzanie pisowni online w różnych językach, osadzanie obrazów, tekst przepływu wokół obrazów, jak go nazywasz).

Wadą jest to, że musisz mieć zainstalowany pakiet OpenOffice; w rzeczywistości edytor nie jest częścią Java, ale jest to proces zdalny, który renderuje się w oknie aplikacji Java. Oznacza to, że czas rozpoczęcia jest dość zauważalny, a wydajność może być powolna. Obsługa również czasami jest "dziwna". Aby pozbyć się dodatkowych obramowań i niechcianych stronicowania dokumentów, wystarczy kilka konfiguracji.

Z tego powodu edytora nie można tak naprawdę rozszerzyć z poziomu Java. Będziesz musiał napisać kod w C ++ lub używając wbudowanego języka OOo. Możliwe jest zarejestrowanie słuchaczy w dokumencie i uzyskanie pełnego dostępu do podstawowego modelu dokumentu. W ten sposób możesz podłączyć się do ważnych części i zmodyfikować zachowanie, ale często czujesz się tak, jakbyś wykonywał operację z użyciem dziurki od klucza.

Mój wniosek: Jeśli OO ma potrzebne funkcje, może to być najprostszy sposób na uzyskanie tego, czego potrzebujesz. Jeśli potrzebujesz dużo personalizacji, będziesz walczyć z poprzednią bitwą przeciwko domyślnym ramom.


4



Weź to jako przykładowy wpis :) - Aaron Digulla


Potrzebowałem tego samego dla naszej aplikacji, zrobiłem badania i znalazłem dwa kolejne produkty EKit i Edytor metafazowy, na podstawie Charlesa Bella HTMLDocumentEditor, zarówno na licencji LGPL, jak i dobrze wyglądającej.

Ale ich nie przetestowałem. W dzisiejszych czasach zobaczymy, co wybieramy.


3



Przetestowałem więc oba produkty i chociaż są lekkie i łatwe do zintegrowania, oba są błędne i dziwaczne. - Tiberiu


Po prostu HTML

  • jego GPLed
  • nie mam pojęcia, jak łatwo jest go rozszerzyć
  • nie obsługuje sprawdzania pisowni, ale ma tabele, listy.
  • W oparciu o Swing, wymaga Java 1.4 i opcjonalnie Pomocy Java
  • Nie używałem go jako programisty - tak jak użytkownik końcowy, ma pewne dziwactwa - jak żadna wielopoziomowa lista czy tabele, które są mniej niż świetne, ale jest OK.
  • Dodatkowo daje HTML, więc łatwo jest osadzić wyniki przetwarzania na inne komponenty.
  • Teraz SourceForge

3



wygląda na to, że produkt został wycofany - basszero
Po prostu HTML jest teraz tutaj: sites.google.com/site/uhilger/software/simplyhtml  Kliknij "herunterladen" w dolnej części, aby uzyskać plik zip. - Jim Ferrans
Najnowsza wersja pochodzi z 2003 roku. Myślę, że projekt został przerwany. - Horcrux7
Nie przerwać; strona sourceforge pokazuje aktualizacje w 2014 roku. - Jules


docx4all

docx4all to wieloplatformowy edytor WYSIWYG dla plików docx, wykorzystujący Java Swing i JavaFX Script. Działa jako aplet lub aplikacja. Widzieć http://dev.plutext.org/trac/docx4all/wiki/FeatureSet

open source lub komercyjne? Widzieć http://dev.plutext.org/forums/viewtopic.php?f=7&t=209 

Wymaga Java 6.


1





  • Oto link: JRichTextEditor
  • Jest open source (LGPL).
  • Możesz zrobić z tym, co chcesz. Po prostu sklonuj go z github. Jest rozszerzalny.
  • Zawiera sporo funkcji, ale są one mile widziane. Jest to komponent swing, zależy od iText 2.1.7 (który nadal jest LGPL) i innych bibliotek (np. Xerces). Jedną z ważniejszych funkcji jest możliwość dodawania znaczników / zakresów dowolnej klasy. Które można wykorzystać do hiperłączy lub cokolwiek innego. W bibliotece znajduje się również aplikacja Pomoc.

1





Korzystanie z edytora WYSIWYG HTML i Komponent przeglądarki SWT (zobacz fragmenty przykładów). Opcje:

Zawodowiec:

  • Wiele opcji ze względu na HTML
  • Obsługuje HTML jako format natywny (więc nie ma żadnych nietypowych problemów, gdy trzeba zapisać dokumenty gdzieś lub modyfikować je, w przeciwieństwie do, powiedzmy, natywnego formatu Word).
  • Praca z czcionkami, kolorami, obrazami jest prosta, ponieważ nie musisz samodzielnie zarządzać zasobami. Komponent przeglądarki zrobi to za Ciebie

Contra:

  • Rozwiązanie zależy od platformy. Testy z richhtml4eclipse wykazały inne zachowanie w systemach Windows XP (IE) i Mac OSX (Safari)
  • Jeśli wystąpi problem, użytkownicy będą musieli przejść do widoku kodu HTML i naprawić go samodzielnie.
  • Życzymy powodzenia z pomocą zawartości, uzupełnianiem kodu, sprawdzaniem pisowni, składaniem lub adnotacjami.
  • Dodanie specjalnych funkcji zmusi cię do wykonania operacji z użyciem dziurki od klucza za pomocą całkiem prostego interfejsu API
  • W przypadku wielu z tych edytorów wydajność nie jest najlepsza, szczególnie w przypadku dużych dokumentów.
  • Zależy od SWT.

Źródło: Lösungen für einen SWT Edytor tekstu sformatowanego


0





Spójrz na JWord

  • Jest komercyjny
  • Wiele funkcji (tabele, stronicowania, H / F, układ kolumn, wmf, svg, kopiuj-wklej, RTF, ODT, eksport HTML)
  • darmowe
  • czysty Java-Swing (1.6)
  • Rozszerzalny (oparty na Swing Text API)

0