2009-11-27 5 views
0

문제 : 응용 프로그램이 OOo API로 조작되고 실수로 인한 영향을받지 않도록 (다른 시스템에서 가져온) ms 워드 문서를 rtf 문서로 변환해야합니다 (코딩 비 호환성 원인).MS Word 문서를 RTF 문서로 변환

질문 : Java 응용 프로그램에서 직접 ms 워드 문서를 어떻게 조작 할 수 있습니까? 코딩 불일치없이 작업을 수행 할 수있는 API (예 : POI 또는 OOo)가 있습니까?

내 시스템은 Linux 서버 컴퓨터 (예 : 모든 프로덕션 시스템 공개)에서 실행되며 설치 만 완료했습니다.

OOo 자바 API를 사용하여 문서를 열고 조작하고 저장할 수 있지만이 마지막 기간에는 Ms Word 코딩과 OOo opend 문서 형식 간의 코딩에 대한 호환성 문제와 관련하여 많은 문제가 있습니다. 코딩 (나는 swriter를 참조한다). 대부분의 경우 특정 글 머리 기호 (예 : '-'또는 중첩 목록), 페이지 번호 매기기 (예 : x 형식 중 하나) 및 기타 여러 서식 지정 옵션을 사용하여 출력 문서 (조작)에서 , 나는 두 코딩 형식 사이의 비 호환성을 생각한다.

이제 아파치 POI 기능을 연구하여 MS 워드를 열 수 있는지 이해하고 비 호환성을 최소화 할 수있는 RTF 형식으로 문서를 저장합니다.

같은 문제가 있습니까? Java 오픈 소스 라이브러리를 POI보다 강력하게 사용할 수 있습니까? 또는 POI + iText와 같은 결합 된 접근 방식을 사용하여 RTM로 변환 단계 ms 단어를 제안 할 수 있습니까?

답변

1

신뢰할 수있는 방식으로 문서를 Tiff 형식으로 변환하는 방법을 제공하라는 요청을 받았을 때 몇 가지 조사를 수행했습니다. 거기에 많은 라이브러리가 있습니다 - 무료 및 상업용 모두 ms.docs를 렌더링 할 수 있다고 주장합니다. 그들 중 누구도 100 % 정확한 렌더링을 제공하지 못합니다.

내가해야 할 일은 래퍼에서 MS Word를 실행하고 OLE 자동화를 통해 필요한 것을 처리하는 것입니다. 이 (백그라운드에서 Word를 실행하는) 자체에서는 몇 가지 일이 있지만 조용한 디자인으로 사려 깊게 작동시킬 수 있습니다.

당신이 필요로하는 것은 문서를 열어서 저장하는 것뿐이므로 내 것보다 훨씬 쉽습니다.

편집

@Paolo는 - 여기 요. 나는 여러 가지 패키지를 평가하고, OO를 포함하고 그들이 mmmm이라는 것을 알아 냈습니다. 정확하지 않습니다. 물론 모든 것은 고객이 문서 서식에 얼마나 엄격한 지에 달려 있습니다. 나는 여백 크기와 그림 위치까지 매우 까다 롭습니다.

또 다른 옵션은 부정확성 목록을 제공하는 것입니다. 불행히도 새로운 모든 문서를 사용하면 새로운 문서를 작성할 수 있습니다.

+0

감사합니다.하지만 이전에 말씀 드렸듯이 Linux 서버에는 MS Office가 설치되어 있지 않으므로 RT 파일로 프로그래밍 방식으로 Microsoft Word 문서를 변환 할 수있는 Java 라이브러리를 연구하고 있습니다. OOo API 인터페이스와 호환 모드에서이 마지막 유형에서 작업하십시오. 답사 해 주셔서 감사합니다. 최선의 노력을 다하겠습니다. -Paolo P .: 누군가가 그러한 Java 라이브러리 (POI의 강력한 기능)를 알고 있습니까? –

0

Word를 대상 컴퓨터에 설치 한 경우 Microsoft Office 자동화 인터페이스를 사용할 수 있습니다. 이것은 워드 문서를 열고, 만들고, 저장하는 데 사용할 수있는 COM 구성 요소 집합입니다. 프로그래밍 방식으로 Microsoft Word 설치를 제어 할 수 있습니다.

Word가 설치되어있는 경우 "Microsoft Word XX.X Object Library"라는 등록 된 형식 라이브러리가 있어야합니다. Java에서 COM에 액세스하는 방법을 잘 모르겠습니다.

+0

왜 downvote? –

0

Docvert을 사용하면 Word 문서를 Open Office 형식으로 변환하는 웹 서비스를 설정할 수 있습니다.그것은 비록 OLE 개체에 쓰레기.

+0

안녕 주머니, 우선, 감사합니다. MS Word 문서의 조작 과정을 자동화 할 수있는 Java API 모음이 필요합니다. 대체 솔루션으로 PDF 버전의 문서를 얻고 iText 및 워터 마킹 기능을 사용할 수 있습니다. 하지만 이해할 수 있듯이 이는 매우 제한된 해결책입니다. 레가, - 파올로 –

관련 문제