4
我正在使用OOo SDK构建Java应用程序,我在OpenOffice Impress演示文稿中操纵幻灯片。我知道如何获得包含单张幻灯片的对象,现在我正在寻找将幻灯片从演示文稿复制到另一张幻灯片的方法。将OpenOffice幻灯片从一个演示文稿复制到另一个演示文稿中使用
那(缩短)我做什么来打开文件,并选择幻灯片:
String filename = "file://....odp";
int offset = 2;
XComponent xSourceComponent = xComponentLoader.loadComponentFromURL(filename, "_blank", 0, loadProps);
XComponent xTargetComponent = xComponentLoader.loadComponentFromURL("private:factory/simpress", "_blank", 0, loadProps);
XDrawPages xDrawPages = ((XDrawPagesSupplier)UnoRuntime.queryInterface(
XDrawPagesSupplier.class, xSourceComponent)).getDrawPages();
XPresentationPage xPage = (XPresentationPage)UnoRuntime.queryInterface(XPresentationPage.class,
xDrawPages.getByIndex(offset));
基于我试图让一个转让的对象是这样的:
XTransferable t = (XTransferable)UnoRuntime.queryInterface(
XTransferable.class, xPage);
但是,没有按”似乎得到了支持。任何人有一个想法如何做到这一点?
事实上,文档并不容易使用。目标是在OOo中有一个向导作为插件,它可以创建和填充一些幻灯片,所以我必须遵循OO的UNO API。大多数东西都在工作,但目前创建的幻灯片的布局是在代码中定义的,我希望有一个用户可以编辑的模板。 – johannes 2011-05-09 07:39:36
你有没有看过ODFDOM?它看起来像它有一个幻灯片复制操作(OdfPresentationDocument.copyForeignSlide)。 – jkraybill 2011-05-10 00:00:22