libreoffice API 开发(四):插入表格

本文介绍如何利用libreoffice的API在C++中进行表格操作,包括创建4*5的表格,设置间距,插入文字和调整单元格格式。虽然官方文档主要以Java示例为主,但理解后可应用于C++。
摘要由CSDN通过智能技术生成

    通过libreoffice的接口可以实现对表格的操作,不过真的需要吐槽一下,表格真难看。。。。

    下面言归正传,通过查官方文档,我们了解到对表格的操作都在TextTable中,所以我们需要通过工厂中获得一个XTextTable 的实例,然后根据官方文档中的相关示例(多是java的,不过好歹看懂了之后都是一个套路),实现了如下的代码。

    

void manipulateTable(Reference<XTextDocument> xTextDocument)
{
    Reference <XMultiServiceFactory> xWriterFactory(xTextDocument,UNO_QUERY);

    Reference<XInterface> xInterface = xWriterFactory->createInstance(OUString::createFromAscii("com.sun.star.text.TextTable"));
    Reference<XTextTable> xTable(xInterface,UNO_QUERY);

    ///初始化一个4*5的表格
    xTable->initialize(4,5);
   
    ///设置表格左右,上下间距
    Reference<XPropertySet> xProps(xTable,UNO_QUERY);

    sal_Int32 margin;
    margin = 1000;
    Any any_margin;
    any_margin <<= margin;

    ///只有当HoriOrientation设置为NONE时,表格的左右间距设置才能成功
    Any oriention;
    oriention &
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值