Как поместить текст HTML в электронную таблицу OpenOffice с помощью API OpenOffice
Как поместить текст HTML в электронную таблицу OpenOffice с помощью API OpenOffice
Я нашел решение для ODT-Textdocuments.. (но ничего не для SpreadsheetDocment):
- Загрузите документ odt, в который мы хотим поместить текст HTML.
- Перейти на место, где вы хотите разместить текст HTML.
- Сохраните HTML-текст во временном файле в системе (возможно, это возможно без сохранения с помощью http URL, но я не тестировал его).
- Вставьте HTML в ODT, следуя этой инструкции, и передав URL во временный HTML-файл (не забывайте о преобразовании системного пути в OO-путь).
Там где использовался метод: insertDocumentFromURL.
Я не знаю, как я могу использовать этот метод с электронной таблицей... или есть другое решение? Например: cellText.setHtml("....");
??? Можете ли вы или кто-нибудь помочь мне, пожалуйста???
Пример кода Complet для OpenOffice TextDocument:
IDocumentService documentService = OOConnection.getDocumentService();
IDocument document = documentService.constructNewDocument(IDocument.WRITER, new DocumentDescriptor());
textDocument = (ITextDocument) document;
String htmlText = "<P></P>" + "<P>Paragraph1</P>" + "NOA HTML Insert Test" + "<b>Bold</b>"
+ "<H1>Header 1</H1>" + "<P>Paragraph2</P>" + "<CENTER>Center</CENTER>" + "<TABLE>"
+ "<TR><TD bgcolor=#336699>Cell 1</TD><TD bgcolor=#663399>Cell 2</TD></TR>"
+ "<TR><TD bgcolor=#123456>the third cell</TD><TD bgcolor=#654321>Cell 4</TD></TR>" + "</TABLE>";
textDocument.getTextService().getText().setText(htmlText);
textDocument.getPersistenceService().export(new FileOutputStream("C:/SfH/html.html"), new TextFilter());
XController xController = textDocument.getXTextDocument().getCurrentController();
XTextViewCursorSupplier xTextViewCursorSupplier = (XTextViewCursorSupplier) UnoRuntime.queryInterface(
XTextViewCursorSupplier.class, xController);
XTextViewCursor xViewCursor = xTextViewCursorSupplier.getViewCursor();
XTextCursor xTextCursor = xViewCursor.getText().createTextCursorByRange(xViewCursor.getStart());
XDocumentInsertable xDocumentInsertable = (XDocumentInsertable) UnoRuntime.queryInterface(
XDocumentInsertable.class, xTextCursor);
xDocumentInsertable.insertDocumentFromURL(
URLAdapter.adaptURL(new File("C:/SfH/html.html").getAbsolutePath()), new PropertyValue[0]);
textDocument.update();
И я