libreoffice API 开发(三):创建保存一个swriter文档
来源:互联网 发布:node 模块开发 编辑:程序博客网 时间:2024/05/17 21:52
UNO是通用网络对象的简称,是libreoffice的基本组件技术。通过UNO我们可以在不同的平台上利用UNO进行编程。
要利用UNO进行编程,需要按照如下的步骤进行:
1.建立本地组件上下文。
2.获取本地servicemanager。
3.通过本地servicemanager获得特定类型的抽象接口。
4.通过抽象接口查询到具体的接口。
好了,介绍到此为止。
因为只是初步学习,所以先把代码的架子搭起来,以后需要深入研究的话,再来深入讨论其理论。
下面是一个创建swriter文档的代码,只要头文件什么的没有少包含,完全可以使用。
Reference < XComponent > newDocument(){ try { Reference<XComponentContext> xContext; Reference<XMultiComponentFactory> xMSFactory; Reference<XComponent> xDocument; xContext = bootstrap(); xMSFactory = xContext->getServiceManager(); Reference<XInterface> desktop = xMSFactory->createInstanceWithContext( OUString::createFromAscii("com.sun.star.frame.Desktop"), xContext ); Reference<XComponentLoader> rComponentLoader( desktop, UNO_QUERY_THROW ); Sequence<PropertyValue> loadProps(1); loadProps[0].Name = OUString::createFromAscii("Hidden"); loadProps[0].Value = Any(false);//new Boolean(true); xDocument = rComponentLoader->loadComponentFromURL( OUString::createFromAscii("private:factory/swriter"), OUString::createFromAscii("_blank"), 0, loadProps); return xDocument; } catch (Exception & e) { std::cout<<e.Message<<std::endl; return NULL; }}
接下来是保存swriter文件的代码:
时间有点久了,关于这块的代码手里没有了,有时间再补一份。
0 0
- libreoffice API 开发(三):创建保存一个swriter文档
- libreoffice API 开发(一):libreoffice SDK 安装配置
- libreoffice API 开发(二):libreoffice SDK VS2010配置
- [LibreOffice]Calc文档开发_001:Calc文档的创建
- libreoffice API 开发(四):插入表格
- libreoffice API 开发(五):处理段落
- libreoffice 文档中插入表格-保存-打印
- Insert table in Openoffice Swriter(插入一个表格)
- libreoffice打开文档-修改表格-修改书签-保存pdf
- 使用vs2010搭建libreoffice openoffice UNO sdk开发环境(三)
- vb.net创建一个word文档并保存
- java微信开发API解析(三)-高级功能的前奏----获取以及保存接口调用凭证 标签: 微信java办微信开发微信文档解析 2016-04-06 20:50 1101人阅读 评论(0) 收藏 举报
- [LibreOffice]Calc文档开发_002:Calc文档_表格样式_合并单元格
- [LibreOffice]Calc文档开发_003:Calc文档_表格样式_绘制边框
- [LibreOffice]Calc文档开发_004:Calc文档_文本内容的插入
- [LibreOffice]Calc文档开发_005:Calc文档_图片的插入
- Libreoffice online集成开发
- java微信开发API解析(三)-高级功能的前奏----获取以及保存接口调用凭证
- Android中Serializable和Parcelable序列化对象详解
- HDU 2121 Ice_cream’s world II 不定根最小树形图
- Mysql的Root密码忘记,查看或修改的解决方法
- JAVA的集合框架
- Java 自动装箱与拆箱(Autoboxing and unboxing)
- libreoffice API 开发(三):创建保存一个swriter文档
- 计算方法_拉格朗日插值_C++实现_方法2
- Java实现字符串倒序输出的常用方法小结
- laravel-5.3(2) 路由配置
- Atitit 修改密码的功能流程设计 attilax总结
- Ehcache是现在最流行的纯Java开源缓存框架
- 软件无线电 SDR LTE平台简介---OAI、srsLTE、OpenLTE与Amarisoft
- (5)循环链表
- CF - 711D 搜索环