如何以编程方式获取 Openoffice writer 中的默认模板
Posted
技术标签:
【中文标题】如何以编程方式获取 Openoffice writer 中的默认模板【英文标题】:Howto programmatically get the default template on Openoffice writer 【发布时间】:2013-04-02 07:38:32 【问题描述】:如何以编程方式获取 openoffice writer 的默认模板?
openoffice下面的代码相当于什么:
var word = new Microsoft.Office.Interop.Word.Application();
string template = word.NormalTemplate.FullName;
【问题讨论】:
请问您尝试了什么?您使用哪个 DLL 通过 C# 访问 OpenOffice? 【参考方案1】:我能做到这一点的唯一方法是创建一个新的空白文档,然后阅读用于创建它的模板,尽管我期待在应用程序级别有这样的属性,希望这对其他人有所帮助:
private XComponentContext oStrap = uno.util.Bootstrap.bootstrap();
XMultiServiceFactory oServMan = (XMultiServiceFactory) oStrap.getServiceManager();
XComponentLoader oDesk = (XComponentLoader) oServMan.createInstance("com.sun.star.frame.Desktop");
string url = @"private:factory/swriter";
PropertyValue[] propVals = new PropertyValue[0];
XComponent oDoc = oDesk.loadComponentFromURL(url, "_null", 0, propVals);
var DefaultTemplate = ((XDocumentPropertiesSupplier)oDoc).getDocumentProperties().TemplateURL;
【讨论】:
以上是关于如何以编程方式获取 Openoffice writer 中的默认模板的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 c# 检查 OpenOffice 是不是以编程方式安装
如何使用 .NET 从 OpenOffice.org Writer 文档中以编程方式提取宏?
在 PHP 中以编程方式使用 OpenOffice 更正功能
在 OpenOffice Calc 中以编程方式更改打印区域
LibreOffice/OpenOffice 能否以编程方式向现有的 .docx/.xlsx/.pptx 文件添加密码?