Browse Source

fix(pdf): 解决PDF导出时换行文本缩放问题

- 启用PdfSaveOptions的自动合并单元格功能
- 配置ShrinkToFitSettings以支持换行文本的缩放适配
- 确保工作簿在导出为PDF时正确应用文本缩放设置
xuzhancheng 1 tháng trước cách đây
mục cha
commit
9e3d6cf33b

+ 2 - 0
src/main/java/com/grapecity/controller/GrapeCityController.java

@@ -220,6 +220,7 @@ public class GrapeCityController {
                 worksheet.getPageSetup().setLeftMargin(7); // 左边距
                 worksheet.getPageSetup().setRightMargin(7); // 右边距
                 worksheet.getPageSetup().setCenterHorizontally(true);
+                worksheet.getUsedRange().setShrinkToFit(true);
                 worksheet.setDataSource(new JsonDataSource(JSON.toJSONString(data)));
                 if (!worksheet.getName().contains("封面") && !worksheet.getName().contains("注意")) {
                     worksheet.getPageSetup().setIsAutoFirstPageNumber(true);
@@ -249,6 +250,7 @@ public class GrapeCityController {
             };
             PdfSaveOptions pdfOptions = new PdfSaveOptions();
             pdfOptions.setIncludeAutoMergedCells(true);
+            pdfOptions.getShrinkToFitSettings().setCanShrinkToFitWrappedText(true);
             List<PageInfo> pages = printManager.paginate(workbook);
             printManager.savePageInfosToPDF(byteArrayOutputStream, pages, pdfOptions);
             return byteArrayOutputStream.toByteArray();