test.png (26.0 KB)
这里表格行数太多,表格自动换页了,但是换页之后有几行数据丢失了,麻烦帮忙解决一下,谢谢您
@magua, 您能否提供以下信息进行分析:
- 将数据插入到您使用的表中的最小代码示例,
- 带有不正确表格的输出 Word 文档(.docx 或 .doc),
- 使用 Aspose.Words 从输出 Word 文档在计算机上创建的 PDF 文件,
- 您正在使用的 Aspose.Words 版本。
public static void fillCommodityList(Map<String,List<Map<String, Object>>> dataSet, MailMerge merge) throws Exception {
// 将 dataSet 转成 DataTable
if (dataSet != null) {
DataTable dataTable;
DataRow dataRow;
List<Map<String, Object>> mapList;
for (Map.Entry<String, List<Map<String, Object>>> ds : dataSet.entrySet()) {
dataTable = new DataTable();
// 与模板里面的TableStart:xx(名称对应)
dataTable.setTableName(ds.getKey());
mapList = ds.getValue();
if (mapList != null && mapList.size() > 0){
for (int i = 0; i < mapList.size(); i++) {
// 初始化DataColumn
if (i == 0){
for (Object mp : mapList.get(0).keySet()) {
dataTable.getColumns().add(JSON.toJSON(mp).toString());
}
}
// 写入数据
dataRow = dataTable.newRow();
for (DataColumn dc : dataTable.getColumns()) {
if (mapList.get(i).containsKey(dc.getColumnName())) {
dataRow.set(dc.getColumnName(), mapList.get(i).get(dc.getColumnName()));
}
}
dataTable.getRows().add(dataRow);
}
}
merge.executeWithRegions(dataTable);
}
}
}
word模板上面给过了。
附件是生成的pdf。
使用的版本是18.6test.pdf (15.1 KB)