如何使用OpenOffice API将HTML文本放入OpenOffice电子表格
我找到了ODT-Textdocuments的解决方案.. (但SpreadsheetDocment没有任何内容):
- 将odt文档加载到我们要放置HTML文本的位置。
- 转到您要放置HTML文字的位置。
- 将HTML文本保存在系统的临时文件中(也许可以不使用http URL保存,但我没有对其进行测试)。
- 按照此说明将HTML插入odt并将URL传递给临时HTML文件(请记住将系统路径转换为OO路径)。
醇>
使用方法:insertDocumentFromURL。
我不知道如何在电子表格中使用此方法..还是有其他解决方案?例如:cellText.setHtml("....");
???你或别人可以帮我吗???
完成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();
岸堤