仙人不会跳丶 2022-07-22 09:50
浏览 448
已结题

关于itext生成pdf表格 使用单元格合并

问题遇到的现象和发生背景

itext画一个带有合并单元格的pdf表格

问题相关代码,请勿粘贴截图
 PdfContentByte canvas = writer.getDirectContent();
        Font size9font = new Font(baseFont, 9, Font.BOLD); //大小为9的粗体
        Font size10font = new Font(baseFont, 10, Font.NORMAL);  //大小为10的正常字体
        //第一行表头
        PdfPTable firstTitle = new PdfPTable(10);
        firstTitle.setWidthPercentage(100);
        firstTitle.addCell(mircoSoftFont("预算项目", size10font, 20, 3, 0));
        firstTitle.addCell(mircoSoftFont("项目", size10font, 20, 2, 0));
        firstTitle.addCell(mircoSoftFont("收款人", size10font, 20, 3, 0));
        firstTitle.addCell(mircoSoftFont("申请金额", size10font, 0,0,3));
        firstTitle.addCell(mircoSoftFont("批准金额", size10font, 0,0,3));
        document.add(firstTitle);
        PdfPTable secondTitle = new PdfPTable(10);
        secondTitle.setWidthPercentage(100);
        secondTitle.addCell(mircoSoftFont("功能分类(类款项)", size10font, 20));
        secondTitle.addCell(mircoSoftFont("政府经济分类(类款)", size10font, 20));
        secondTitle.addCell(mircoSoftFont("部门经济分类(类款)", size10font, 20));
        secondTitle.addCell(mircoSoftFont("编码", size10font, 0,0,2));
        secondTitle.addCell(mircoSoftFont("名称", size10font, 0,0,2));
        secondTitle.addCell(mircoSoftFont("全称", size10font, 0,0,2));
        secondTitle.addCell(mircoSoftFont("开户银行", size10font, 0,0,2));
        secondTitle.addCell(mircoSoftFont("银行账号", size10font, 0,0,2));
        secondTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        secondTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        document.add(secondTitle);
        PdfPTable thirdTitle = new PdfPTable(10);
        thirdTitle.setWidthPercentage(100);
        thirdTitle.addCell(mircoSoftFont("编码和名称", size10font, 20));
        thirdTitle.addCell(mircoSoftFont("编码和名称", size10font, 20));
        thirdTitle.addCell(mircoSoftFont("编码和名称", size10font, 20));
        thirdTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        thirdTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        thirdTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        thirdTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        thirdTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        thirdTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        thirdTitle.addCell(mircoSoftFont("", size10font, 0,0,0));
        document.add(thirdTitle);

运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果

后面几列存在单元格合并

img

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 7月30日
    • 创建了问题 7月22日

    悬赏问题

    • ¥15 微信会员卡接入微信支付商户号收款
    • ¥15 如何获取烟草零售终端数据
    • ¥15 数学建模招标中位数问题
    • ¥15 phython路径名过长报错 不知道什么问题
    • ¥15 深度学习中模型转换该怎么实现
    • ¥15 HLs设计手写数字识别程序编译通不过
    • ¥15 Stata外部命令安装问题求帮助!
    • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
    • ¥15 TYPCE母转母,插入认方向
    • ¥15 如何用python向钉钉机器人发送可以放大的图片?