Apache poi - 打印布局,同一张纸上有多个打印区域

2024-03-25

我正在尝试开发一份复杂的报告,并且需要为 Excel 文件设置打印区域。我必须将 xls 文件分成 3 部分,但如果我执行 setPrintArea(..) ,新区域会订阅旧区域,结果是我在打印预览中只有最后一页。如何设置多个打印区域?这是代码:

protected void createCustomerSheet(String label) {
    createSheet(label);
    getCurrentSheet().getPrintSetup().setPaperSize(PrintSetup.A4_PAPERSIZE);
    getCurrentSheet().getPrintSetup().setFitHeight((short)1);
    getCurrentSheet().getPrintSetup().setFitWidth((short)1);
    getCurrentSheet().setAutobreaks(true);
    getCurrentSheet().setFitToPage(true);
}

然后我打了3次电话

 wb.setPrintArea(activeSheetIndex, startColumn, endColumn, startRow, endRow);

我也尝试添加断行,但它不起作用..

有任何想法吗?


Excel只维护一个打印区域 http://www.howtogeek.com/howto/10451/print-only-selected-areas-of-a-spreadsheet-in-excel-2007-2010/用于电子表格。因此 Apache POI 的 Excel API 提供了以下功能:设置一个打印区域 http://poi.apache.org/apidocs/org/apache/poi/ss/usermodel/Workbook.html.

听起来您可能正在尝试定义报告的不同页面。如果是这样,您需要在要完成此操作的每个工作表中设置行和/或列分隔符。使用以下方法Sheet http://poi.apache.org/apidocs/org/apache/poi/ss/usermodel/Sheet.html, 假设sheet是你的Sheet实例:

sheet.setAutobreaks(false);
sheet.setRowBreak(rowIndex);
sheet.setColumnBreak(columnIndex);

您可以多次调用最后两个方法中的每一个来建立多个中断。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Apache poi - 打印布局,同一张纸上有多个打印区域 的相关文章

随机推荐

  • PlotLegends 使 Manipulate[] ing 图形变得慢如爬行

    我设置了一个简短的程序 使用 Manipulate 显示具有不同参数的相同函数的三个图 我想用参数的值来标记每个函数 我的出发点是让一个传奇人物出现 在绘图中添加 PlotLegend 会导致 Mathematica 变得异常缓慢 我的代码
  • C# 中两个 List<> 相交

    我有两个List
  • Three.js 在平面上旋转相机

    我的应用程序中有一个相机 camera new THREE PerspectiveCamera 75 window innerWidth window innerHeight 0 1 1000 camera position z 1 cam
  • Python OOP 继承:方法解析顺序 (MRO)

    当我使用方法解析顺序 MRO 时 输出存在变化 任何人都可以解释为什么结果会出现这种差异 class A def init self pass def abc self print A class B A def init self pas
  • Python 字符串的所有可能组合

    你好 我正在使用 python 我正在尝试编写一个方法 其中给定一个字符串 它会找到该字符串的每个组合并将其附加到列表中 我将给出字符串并显示我想要的结果 string x god outcome lst g o d go gd og od
  • Passport.js + Express.js 在身份验证后将用户转发到原始目的地

    我有一个应用程序 服务器上是 Node Express Passport 客户端上是 jQuery Backbone js 客户端在 URL 中使用哈希标签 但对于某些功能来说 用户登录非常重要 我希望可以通过 URL 访问该应用程序 例如
  • PHP 阿拉伯文文本使用 strpos 进行比较

    我在 mysql 表中有一个阿拉伯语关键字 例如 1591 1610 1585 1575 1606 请考虑用 代替 带有 的值会自动转换为阿拉伯语 Mysql表编码 utf8 general ci 我从外部资源示例 twitter 中获取一
  • laravel 5 - css 文件未在资产清单中定义?

    我收到 laravel 5 的错误消息 我不明白 Next exception ErrorException with message File build css all css not defined in asset manifest
  • 在 C++ 中如何知道数组包含多少个元素? [复制]

    这个问题在这里已经有答案了 例如 我有一个包含 3 个元素的数组 int array 1 4 66 我怎么知道有多少个元素array包含 执行此操作 std size myarray std size https en cppreferen
  • 无法导入 play.api.db.databases

    我正在 Scala Play 2 5 4 中开发一个应用程序 我想测试我的数据库交互 并尝试通过中推荐的方法来测试这一页 https www playframework com documentation 2 5 x ScalaTestin
  • 如何从命令行使用密码生成 openSSL 密钥?

    首先 如果我不提供密码会怎样 是否使用了某种伪随机短语 我只是在寻找 足够好 的东西来阻止休闲黑客 第二 如何从命令行生成密钥对 并在命令行上提供密码 我终于使用这些命令让它工作 使用 exec 通常认为使用不安全 最好在文件中给出 Pas
  • 使用相对 URL 切换到 SSL

    我想创建一个相对链接来切换当前协议http to https 我工作的最后一个地方在服务器上设置了一些东西 以便您可以实现这一点 但我不太记得它 而且我从来不知道它是如何工作的 这样做的理由是 我不需要在需要在生产和开发环境之间移动的文件中
  • 使用 C#/Win32 将文本写入记事本

    我正在摆弄 Win32 API 和 Windows 消息传递 试图弄清楚事情是如何工作的 我发现了这个问题非常有帮助 https stackoverflow com questions 523405 how to send text to
  • Android M 不允许硬链接吗?

    我有一个带有一些 C 代码的 Android 应用程序 它使用 link 2 系统调用来创建到现有文件的硬链接 当我在 Android 5 0 2 上执行该应用程序时 该应用程序的这一部分可以工作 当我在 Android M 设备上执行完全
  • 使用 mysqli 来自 MySQL 列的下拉列表[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我有一个名为的 MySQL 表Users有柱子Name and NameID Like 名称 名称ID布拉德 BD汤姆 ts 我试图拉动所有
  • Heroku:将容器部署到 dyno 时“heroku ps:exec”不起作用

    我正在将 Tensorflow Serving 容器部署到 Heroku 一切正常 但是当我尝试 ssh 到容器中执行某些命令时 Heroku 返回此错误 C Users whitm Desktop CodeProjects deep de
  • CSS 变换比例 - 图像仍然占用空间

    当将以下 CSS 属性添加到图像时 图像仍然占据与大小为 100 时相同的空间 有没有办法让文本填充该图像周围的空间 transform scale 0 2 height auto float right 据我了解 这不是转换的工作原理 它
  • CodenameOne - Android 推送通知支持,无需专业帐户

    因此 我买不起 codeameone 专业帐户 因此我使用 GCM 为 Android 实现了本机推送通知 经过一番努力 我终于成功了 现在 GCM 已弃用 我想迁移到 FCM 但是 我遇到了一些问题 因为代号一不允许我将正确的依赖项注入到
  • 使用 jQuery/cheerio 访问脚本标签中的变量

    我使用 Node js Cheerio 进行网页抓取 请求该网站后 我得到了这样的信息 如何通过 Cheerio jQuery 访问变量值 你可以获得
  • Apache poi - 打印布局,同一张纸上有多个打印区域

    我正在尝试开发一份复杂的报告 并且需要为 Excel 文件设置打印区域 我必须将 xls 文件分成 3 部分 但如果我执行 setPrintArea 新区域会订阅旧区域 结果是我在打印预览中只有最后一页 如何设置多个打印区域 这是代码 pr