iText7解套(三)列表中文中文序号

        iText7列表内置12中列表符号,还可以使用自定义符号或图片作为符号,例如:

         如果需要使用中文数字编号并且自动增长,有两种方法:

        1、插入列表时,对每一项都调用ListItemsetListSymbol方法设置中文编号。如下:

        item.setListSymbol(new Text("一、"));
        ...
        item.setListSymbol(new Text("二、"));

        2、实现IListSymbolFactory

@Override
    public IElement createSymbol(int i, IPropertyContainer iPropertyContainer, IPropertyContainer iPropertyContainer1) {
        return new Text((StringUtils.hasText(this.prefix) ? this.prefix :DEFAULT_PREFIX) +
                        ChineseNumberConverter.convert(i) +
                        (StringUtils.hasText(this.suffix)?this.suffix :DEFAULT_SUFFIX))
                .addStyle(style);
    }

 其中ChineseNumberConverter.convert(i)把序号转换为中文数字,例如:1->一、2->二、3->三等。

prefix和suffix可以为“(”,“)”等,也可空,构造时传入。

使用时,在List上设置。List上没有直接接受IListSymbolFactory类型为参数的setListSymbol方法。使用:

list.setProperty(Property.LIST_SYMBOL, symbolFactory);

效果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值