2011-01-18 4 views

답변

1

저는 그렇게 생각하지 않습니다. 약 1 년 전 우리는 클라이언트 측에서 rtf 브라우저를 개발하려고했지만 실패했습니다. GWT-Rtf 라이브러리가 없습니다. 당신은 자바 스크립트로 작성된 것을 찾아서 JSNI로 랩핑하려고 시도 할 수는 있지만 그러한 라이브러리도 보지 못했습니다. 누군가는 Activex에서 가능할 수도 있다고 말했지만,이 방법을 사용해 보지 않았습니다.

0

달성하려는 목표는 무엇입니까? Microsoft Word와 같은 RTF 편집기와 문서를 공유하려면 해당 편집기가 HTML에서도 작동하는지 확인해야합니다. 나는 MS 워드가 HTML을 편집 할 수 있다는 것을 알고있다.

또는 RTF를 HTML로 바꾸고 서버 측에서 다시 고려할 수 있습니다. 거기에 몇 가지 Java 라이브러리가 있습니다. 그 중 하나는 Flying Saucer입니다.

+0

데이터베이스에 RTF 데이터가 있습니다. 인터넷 브라우저에 표시하고 사용자가 편집합니다. 그래서 RTF를 HTML로 변환하여 사용합니다. 그러나 HTML을 사용하면 EDITOR에서 여러 공백이 무시됩니다. 따라서 텍스트 형식이 손실되고 사용자는 저장하기 전에 입력 한 내용을 볼 수 없습니다. –

+0

아마 편집자에서 정상적인 공백을 비 - 공백 공백 (http://en.wikipedia.org/wiki/Non-breaking_space)으로 바꾸는 문제 일 것입니다. KeyDownHandler (http://google-web-toolkit.googlecode.com/svn/javadoc/2.1/com/google/gwt/event/dom/client/HasKeyDownHandlers.html)로 키 누르기를 가로 챌 때 바로 수행 할 수 있습니다.) – David

+0

고맙지 만 문제는 이것이 아닙니다. 사용자가 타이핑 할 때 아무런 문제가 없습니다. 저장된 데이터가 DB에서 가져와 에디터에 저장 될 때 문제가 발생합니다. –

0

HTMLEditorKit와 함께 RTFEditorKit을 사용하여 두 서버 측 또는 애플릿에서 변환 할 수 있습니다. 이렇게하면 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(); 
} 
+0

답장을 보내 주셔서 감사합니다. 그러나이 방법의 문제점은 여러 공백입니다. GWT의 richtext 편집기는 여러 공백을 무시합니다. –

+0

html로  로 변경하십시오. – LINEMAN78

+0

이 방법은 쉽지 않습니다.

메서드 변경을

로 바꾸십시오. 허용되지 않습니다. 엔 지능형 대체 방법이 필요합니다. –

관련 문제