2008-10-13 9 views
31

समृद्ध टेक्स्ट एडिटर जावा में लागू किया जाना चाहिए, स्विंग समर्थन प्रदान करें, और अधिमानतः ओपन सोर्स बनें।क्या कोई जावा समृद्ध टेक्स्ट एडिटर की सिफारिश कर सकता है?

मैं इसे मौजूदा जावा/स्विंग एप्लिकेशन में एकीकृत करने के लिए देख रहा हूं।

धन्यवाद।

+0

मुझे स्विंग के बारे में कोई जानकारी नहीं है, लेकिन [jEdit] (http://www.jedit.org/) पूरी तरह से जावा लगता है .. और इसका खुला स्रोत भी – nawfal

उत्तर

23

शायद यह आपके द्वारा किए जाने वाले स्थान के रूप में ड्रॉप-इन-प्लेस नहीं है ... लेकिन JTextPane समृद्ध टेक्स्ट और HTML का समर्थन करता है। इसे पर प्रदर्शित करने के लिए यह छोटा है आरटीएफ या एचटीएमएल, बस सामग्री के साथ भरने से पहले एन्कोडिंग प्रकार सेट करें।

छोटे "बी" और "I" आदि शैली-संशोधित बटन बनाने के लिए, ठीक है अगर यह नीचे आ गया है, तो एक चुटकी में जो खुद को बनाना मुश्किल नहीं होगा। आइकन के साथ जेबटन को सोचें। उनके श्रोताओं को JTextPane की वर्तमान चयन प्रारंभ और अंत इंडेक्स की स्थिति मिलती है: jpane.getSelectionStart() या jpane.getSelectionEnd() और फिर उन स्थानों पर एचटीएमएल/आरटीएफ टैग खोलना और बंद करना।

पूर्ववत आसान भी है - JPanel, हर बार जब उपयोगकर्ता एक संपादन कार्रवाई करता है, एक सरल history.push (jpane.getText()) की स्ट्रिंग सामग्री की एक सरल ढेर बनाए रखने के राज्य की दुकान है, और पूर्ववत बटन jpane.setText (history.pop()) जितना आसान होगा।

मैं/आप बी के साथ एक बना सकता है, मैं & चारों ओर 30 मिनट में पूर्ववत मुझे लगता है - सूचियों की तरह अन्य बटन में लंबा समय लग जाएगा, लेकिन बहुत ज्यादा नहीं तो।

+3

इस प्रकार स्टाइल टेक्स्ट की कॉपी/पेस्ट को कैसे संभालना है दृष्टिकोण? –

7

आप एक स्विंग ऐप में सभी ओपन सोर्स समृद्ध टेक्स्ट एडिटर्स की मां को एम्बेड कर सकते हैं: ओपनऑफिस.org एक "ओओबीन" प्रदान करता है, जिसका उपयोग करके आप एक स्विंग ऐप में एक पूर्ण ओपनऑफिस इंस्टेंस एम्बेड कर सकते हैं।

+3

शायद अधिक मात्रा में लेकिन यह निश्चित रूप से अंतिम समाधान है: डी –

+0

यह ठीक काम करता है। लेकिन यह एक आसान समाधान नहीं है, क्योंकि ओओबीन एक भारी वजन घटक है जबकि स्विंग हल्का वजन है। दोनों तंत्र का संयोजन आदर्श नहीं है। – lvr123

5

मैंने चारों ओर जांच की और मुझे इसमें एक टेक्स्ट एडिटर के साथ एक जार फ़ाइल नहीं मिल रही है। हालांकि, यहाँ 2 अन्य विकल्प

विकल्प ए उपयोग घुमाओ और निर्माण एक अपने आप को। स्विंग में पहले से ही javax.swing.text में शामिल कई componenets हैं, हालांकि इसे अभी भी कोड की एक विस्तृत मात्रा की आवश्यकता है। मैं एक ओपन सोर्स प्रोजेक्ट से एक उदाहरण here

विकल्प बी, मांजना कोड मिला। मुझे वास्तविक परियोजनाओं के साथ 2 परियोजनाएं मिलीं, जिनमें एचटीएमएल WYSIWYG प्रकार के संपादकों को निकाला जा सकता है (दोनों केवल कुछ कक्षाओं में निहित हैं)।

  1. Memoranda (जीपीएल): इसका पाठ संपादित करें या net.sf.memoranda.ui.htmleditor.HTMLEditor में है। यह एक जेपीनल है और केवल एक अन्य वर्ग का उपयोग करता है।
  2. Ekit (एलजीपीएल): यह एक पूर्ण विशेषीकृत WYSIWYG HTML संपादक है। इसका com.hexidec.ekit.EkitCore क्लास एक जेपीनल है और काफी बहुउद्देश्यीय लगता है, हालांकि यह पैकेज से कई अन्य वर्गों का उपयोग करता है।

वहाँ भी वाणिज्यिक लोगों का एक समूह यह सोचते हैं आप एक बजट :)

4

या JWord पर एक नज़र JRichTextEditor है है उपलब्ध हैं,

JWord तालिकाओं के साथ एक व्यावसायिक स्विंग रिच टेक्स्ट संपादक, है, पेजिंग और आरटीएफ/ओपेन्डोक/एक्सएमएल समर्थन। इसके अलावा शीर्षलेख/पादलेख, बहु कॉलम लेआउट, निर्यात एचटीएमएल, एसवीजी, WMF आदि

JRichTextEditor एक खुला स्रोत स्विंग विजेट है, कि नोट लेने के लिए काफी ठीक है का समर्थन करता है। छवियों का समर्थन करता है, स्टोरेज के लिए एक साधारण एक्सएमएल प्रारूप, पीडीएफ में निर्यात, एचटीएमएल। JWord के रूप में उन्नत नहीं है, लेकिन खुला स्रोत।

शायद मदद कर सकता है।

10

चार्ल्स बेल के HTMLDocumentEditor के आधार पर MetaPhase editor आज़माएं। यह LGPL v3 लाइसेंस प्राप्त है और यह बहुत अच्छा है, खासकर StyledEditorKit का उपयोग करने के उदाहरण के रूप में, here पर चर्चा की गई।

+0

हालांकि इसमें कुछ बग हैं, इसमें बॉक्स के बाहर पर्याप्त सुविधाएं हैं .. मैं अब देख रहा हूं कि पूरी प्रणाली कितनी एक्स्टेंसिबल है .. हो सकता है कि कोई भी कुछ विशेषताओं को निचोड़ सके (जैसे डिस्क ड्राइव से एक छवि जोड़ना) .. – pek

+2

ऊपर दिया गया यूआरएल मृत प्रतीत होता है, इसे आजमाएं: http://kenai.com/projects/metaphaseeditor। –

संबंधित मुद्दे