找回密码
 立即注册

QQ登录

只需一步,快速开始

avicdev

中级会员

69

主题

203

帖子

752

积分

中级会员

积分
752

[已处理] 设置多表头

avicdev
中级会员   /  发表于:2024-2-28 16:29  /   查看:3300  /  回复:11
1金币
image.png913411254.png 这个$** 指的是什么区域?如果要设置这个区域怎么写? image.png13232726.png   或者设置多行怎么写?

最佳答案

查看完整内容

了解了,也就是说,您的每一页的表头都不一样是吗,如果是这样的话,我们没有相关方法可以做到每一页都自定义表头,您只能通过去拿每一页的打印区域,然后动态的给每页添加表头,以下是拿取每页打印区域的方法,您可以参考: 对于您的第二个问题,您可以通过worksheet.getTables().get(0).getRange();来获取每个table的区域

11 个回复

倒序浏览
最佳答案
最佳答案
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-2-28 16:29:10
来自 9#
avicdev 发表于 2024-3-1 13:03
还有第三页你没看到   第三页表头是A89:H89

了解了,也就是说,您的每一页的表头都不一样是吗,如果是这样的话,我们没有相关方法可以做到每一页都自定义表头,您只能通过去拿每一页的打印区域,然后动态的给每页添加表头,以下是拿取每页打印区域的方法,您可以参考:
  1. public void 获取默认分页信息(){
  2.     Workbook workbook = new Workbook();
  3.     workbook.open("demo.ssjson");
  4.     PrintManager printManager = new PrintManager();
  5.     int size = printManager.paginate(workbook).size();
  6.     System.out.println("一共"+size+"页");
  7.     for(int i = 0; i < size; i++){
  8.         PageInfo info = printManager.paginate(workbook).get(i);
  9.         System.out.println("第"+i+"页,区域:" + info.getPageContent().getRange());
  10.     }
  11.     workbook.save("test.pdf", SaveFileFormat.Pdf);
  12. }
复制代码


对于您的第二个问题,您可以通过worksheet.getTables().get(0).getRange();来获取每个table的区域
回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-2-28 16:56:40
2#
您好
  1. $5:$10 // 表示的是第5行到第10行区域
  2. $4:$4 // 表示第4行区域
复制代码
这个是和Excel的范围写法保持一致的
image.png178857115.png
回复 使用道具 举报
avicdev
中级会员   /  发表于:2024-2-29 10:39:13
3#
能动态设置表头区域吗?因为表头可能在变
回复 使用道具 举报
avicdev
中级会员   /  发表于:2024-2-29 10:58:01
4#
avicdev 发表于 2024-2-29 10:39
能动态设置表头区域吗?因为表头可能在变

按A4纸打印  每页设置的表头区域可能不一样
回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-2-29 16:19:15
5#
avicdev 发表于 2024-2-29 10:58
按A4纸打印  每页设置的表头区域可能不一样

您好,能否截图描述以下您期望的效果呢,我想,同一份工作簿打印出来,那么表头区域应该都是一样的,您所说的这种每页表头区域都不一样,指的是什么样子
回复 使用道具 举报
avicdev
中级会员   /  发表于:2024-2-29 17:55:38
6#
本帖最后由 avicdev 于 2024-2-29 18:02 编辑

image.png465421752.png image.png884890746.png 就是一个sheet页有多个表头    如果表格在一页没有打印完延伸到下一页   表头也会延伸到下一页
回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-3-1 11:56:57
7#
avicdev 发表于 2024-2-29 17:55
就是一个sheet页有多个表头    如果表格在一页没有打印完延伸到下一页   表头也会延伸到下一页

您好,您的意思是,您的第一页的表头区域是A1到H4这个区域,之后的页面表头只有A4到H4这个区域是吗?
那么我们就完全可以按照您所描述的这个方法来实现,他只会重复打印您框定的这个区域,不会涉及到其他区域:
worksheet.getPageSetup().setPrintTitleRows("A4:H4")
回复 使用道具 举报
avicdev
中级会员   /  发表于:2024-3-1 13:03:12
8#
本帖最后由 avicdev 于 2024-3-1 13:06 编辑

还有第三页你没看到   第三页表头是A89:H89



还有 gcexcle 获取sheet页的每个table区域的起始行和结束行有没有方法呀?
回复 使用道具 举报
avicdev
中级会员   /  发表于:2024-3-1 17:54:06
10#
好的  谢谢
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部