You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Datatable导出PDF时表格被裁剪右侧列缺失 如何解决?

解决Datatable导出PDF列截断问题

核心原因

Datatable默认PDF导出使用pdfmake库,默认采用纵向A4布局、固定边距、无自适应列宽配置,列数过多时就会出现右侧内容截断。

修复方案

将默认的pdf按钮替换为自定义配置项,修改布局、边距、字体、列宽规则即可:

$(document).ready(function() {
  $('#example_booking').DataTable({
    "order": [
      [0, "desc"]
    ],
    dom: 'lBfrtip',
    buttons: [
      'copy', 'csv', 'excel', 
      // 替换原有pdf字符串为下方自定义配置
      {
        extend: 'pdf',
        orientation: 'landscape', // 切换为横向布局,大幅提升可容纳列数
        pageSize: 'A4', // 列数极多时可替换为'A3'获得更大宽度
        customize: function (doc) {
          doc.pageMargins = [10, 10, 10, 10]; // 缩小页面四边留白,增加可用宽度
          doc.defaultStyle.fontSize = 8; // 适当缩小字体,适配更多列
          doc.defaultStyle.wordWrap = true; // 长单元格内容自动换行
          // 所有列宽度自动分配,铺满整页
          doc.content[1].table.widths = Array(doc.content[1].table.body[0].length).fill('*');
        }
      },
      'print'
    ]
  });
});

$(document).ready(function() {
  $('#example').DataTable({
  });
});
  • 若调整后仍有截断,可继续调小fontSize数值,或更换更大的pageSize规格。
  • 如果你自定义了PDF导出的标题内容,需调整doc.content[1]的索引值,确保指向表格对象即可。

内容的提问来源于stack exchange,提问作者tamerjar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 14:15:05