1

OpenOffice API を使用して HTML テキストを OpenOffice スプレッドシートに配置する方法

私は ODT-Textdocuments の解決策を見つけました.. (ただし、SpreadsheetDocment には何もありません) :

  1. HTML テキストを配置する場所に odt ドキュメントをロードします。
  2. HTML テキストを配置する場所に移動します。
  3. システムの一時ファイルに HTML テキストを保存します (http URL で保存しなくても可能かもしれませんが、テストしていません)。
  4. この指示に従って 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();

そして私

4

0 に答える 0