java - 如何在特定行数 xsl-fo 1.0 后打破表格?
问题描述
使用 apache fop 将表导出为 pdf 时出现内存问题。我想尝试通过在特定行数(例如 10 行之后)打破我的大表来解决这个问题。如何在使用 xls-fo 1.0 的特定行数后打破表格?
解决方案
在生成行时,您可以使用以下条件,这可能会帮助您生成期望的输出:
<fo:table-body>
<xsl:for-each select="student">
<fo:table-row padding-top="0pt" padding-bottom="0pt">
<xsl:if test="position() mod 10 = 0">
<xsl:attribute name="break-before">
<xsl:value-of select="'page'"/>
</xsl:attribute>
</xsl:if>
<fo:table-cell>
<fo:block>
<fo:inline font-size="12pt" font-family="Arial">
<xsl:value-of select="name"/>
</fo:inline>
</fo:block>
</fo:table-cell>
<fo:table-cell>
<fo:block>
<fo:inline font-size="12pt" font-family="Arial">
<xsl:value-of select="class"/>
</fo:inline>
</fo:block>
</fo:table-cell>
</fo:table-row>
</xsl:for-each>
</fo:table-body>
推荐阅读
- python - 调用时的函数执行问题,python
- java - 如何在 Rxjava 中的列表更改时通知观察者
- amazon-web-services - 在构建项目“Build container dead”时
- c++ - 即使直接分配给非 NULL 指针,指针也为 NULL
- javascript - 更新一个对象,如果不存在则创建它
- php - $this->request->getPost('email') 在执行 axios POST 请求时没有给出任何值
- python - 如何操作字典的键和值
- javascript - (Discord.JS) 机器人在用户加入时不发送 DM 消息
- css - 在应用服务 ASP Net Core Razor 页面标识服务器 4 中部署后未加载 CSS
- vue.js - 唯一标识 vuejs 中单个 v-card 的按钮单击