如何通过api将文本文档(ODT或DOCX)中的表导出为EMF格式

如何通过api将文本文档(ODT或DOCX)中的表导出为EMF格式,api,libreoffice,openoffice.org,Api,Libreoffice,Openoffice.org,我有一个文本文档(ODT或DOCX)和一些表格。我使用libreofficeapi(Java)打开此文档 我想将表导出为EMF文件。有什么想法吗? P.S.LibreOffice(OpenOffice)API的官方文档非常差。在这篇非常有趣的文章中,没有找到这方面的信息。没有现成的LibreOffice API可以做到这一点,但取决于您对细节的决定,我认为这仍然是可行的。两个提示: 如果要导出表,首先需要遍历文档的表容器,xtexttablesupplier允许您这样做 然后,您可能希望将每个表

我有一个文本文档(ODT或DOCX)和一些表格。我使用libreofficeapi(Java)打开此文档

我想将表导出为EMF文件。有什么想法吗?
P.S.LibreOffice(OpenOffice)API的官方文档非常差。在这篇非常有趣的文章中,没有找到这方面的信息。

没有现成的LibreOffice API可以做到这一点,但取决于您对细节的决定,我认为这仍然是可行的。两个提示:

  • 如果要导出表,首先需要遍历文档的表容器,
    xtexttablesupplier
    允许您这样做

  • 然后,您可能希望将每个表复制到一个单独的Writer文档中,因此当您导出Writer页面时,只有该表显示在那里,没有其他内容。(请记住,表格可能跨越多个页面)。可以使用
    XTextCopy
    界面在文档之间复制内容

  • 一旦您有一个只包含一个表的Writer文档,您就需要迭代文档的所有页面:打开的文档的组件可以转换为
    XRenderable
    ,然后
    getrenderCount()
    告诉您页面的数量。(您也可以使用
    XPageCursor
    ,但下面仍然需要前面的接口。)

  • 最后,一旦您拥有单个文档的单个页面,就可以使用
    XRenderer
    接口的
    render()
    方法将页面实际渲染为矢量格式

  • 我建议你考虑一下,如果你真的想在办公室里做这些事情的话。如果替换步骤3,您可以简化您的工作。四,。通过导出为PDF,然后自己处理PDF到EMF的转换