这份word 文档中出现第五页存在多个换行符(导致间距过大),而由于客户性质导致不好编辑word。用wps 等转出来的pdf 不存在这个问题。该如何解决这个问题呢?
SDtext2025.docx (62.6 KB)
这份word 文档中出现第五页存在多个换行符(导致间距过大),而由于客户性质导致不好编辑word。用wps 等转出来的pdf 不存在这个问题。该如何解决这个问题呢?
Cause
在将Word文档转换为PDF时,出现多余的空白页通常是由于文档中存在多个换行符或段落间距设置不当。这可能导致PDF生成时,系统认为需要额外的页面来容纳这些空白。
Solution
要解决这个问题,可以尝试以下几种方法:
PdfSaveOptions
类来控制输出格式和布局设置。Code
以下是一个示例代码,展示如何设置PdfSaveOptions
并进行转换:
Document doc = new Document("path/to/your/document.docx");
PdfSaveOptions options = new PdfSaveOptions();
options.setExportDocumentStructure(true); // 导出文档结构
options.setPreserveFormFields(true); // 保留表单字段
doc.save("path/to/output/document.pdf", options);
Next Steps
希望这些建议能帮助您解决问题!如果还有其他疑问,请随时告诉我!
试过你说的方法,并不能解决。至于你说的第一点第二点,报告是客户提供的不方便修改
这是使用的部分代码
PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();
pdfSaveOptions.setCompliance(PdfCompliance.PDF_17);
pdfSaveOptions.setUseHighQualityRendering(true); // 高质量渲染
pdfSaveOptions.setEmbedFullFonts(false);
pdfSaveOptions.setUseCoreFonts(true); // 使用基本字体减少体积
pdfSaveOptions.setAdditionalTextPositioning(true); // 精确文本定位
pdfSaveOptions.setUseBookFoldPrintingSettings(true);
pdfSaveOptions.setExportDocumentStructure(true); // 导出文档结构
pdfSaveOptions.setPreserveFormFields(true); // 保留表单字段
// 设置PDF输出的大纲(书签)选项
OutlineOptions outlineOptions = pdfSaveOptions.getOutlineOptions();
// 1. 不自动创建缺失的大纲级别
outlineOptions.setCreateMissingOutlineLevels(false);
// 2. 设置默认书签的大纲级别为1(顶级)
outlineOptions.setDefaultBookmarksOutlineLevel(1);
// 3. 设置默认不展开任何大纲级别(0表示全部折叠)
outlineOptions.setExpandedOutlineLevels(0);
// 4. 设置标题大纲级别为0(不将标题显示为大纲)
outlineOptions.setHeadingsOutlineLevels(0);
document.save(destPath, pdfSaveOptions);
@lhh 我可以看到,我这边生成的 PDF 与 MS Word 2019 生成的 PDF 看起来相同:
ms.pdf (354.2 KB)
另外,您文档中使用的“仿宋_GB2312”字体在我这边不可用。请问能否将其附加到这里进行测试?由于字体规格不同,字体替换可能会导致文档布局差异。
好像明白了。在MS Word 2019 打开文档和用wps 打开文档效果都不一样。很大概率用户是用wps 编辑的保存格式为.doc 或者.docx 格式。这种情况有解决方案吗?