我正在修改一个现有的 C 程序,该程序会搜索数据库并从找到的垃圾中创建 Latex 文档。大部分数据需要放入表中,因此它使用环境longtable
来允许跨页表。
现在有些情况下,要添加到单元格的数据是所以大latex
单元格会将单元格推离页面底部,然后识别出它无法容纳页面上的表格,并尝试在另一个页面上进行操作。这种情况不断重复,最终导致.dvi
文件.log
填满swap
生产服务器上的空间。这不太好,老实说,我受到了一些批评!
显然,这些文档是“即时”创建的,因此,如果没有很多繁琐的东西,它就不是一件简单的事情,“哦,这里是文本超出页面的地方。然后,我需要在那里添加分页符”。
我知道可能有一种方法可以根据单元格中的内容缩放单元格中数据的字体大小...?这是 longtable 的一部分还是 Latex 机制内部其他更底层的东西?
答案1
由于您使用 C 程序来构建 LaTex,如果您添加代码来检查任何一个单元格中的字符串长度,并且如果超出限制,则关闭该单元格并开始新行,跳过上方单元格下方的相应单元格,结果会怎样?通过这种方式,您可以保持单元格对齐,但又能留出longtable
喘息的机会。如果同一行中有多个单元格可能特别长,那么您的逻辑可能必须同时监视多个单元格。