From 450e9f08464f7cadf411a47a9fe1b14e21629a49 Mon Sep 17 00:00:00 2001 From: Gauthier LO Date: Thu, 1 Aug 2024 11:56:13 +0200 Subject: [PATCH] fix: pdf now will stay in one page --- .../PlatformOrderShippingInvoiceService.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/PlatformOrderShippingInvoiceService.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/PlatformOrderShippingInvoiceService.java index 421de7b6c..2ae620c0b 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/PlatformOrderShippingInvoiceService.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/service/PlatformOrderShippingInvoiceService.java @@ -1,8 +1,6 @@ package org.jeecg.modules.business.service; -import com.aspose.cells.PdfSaveOptions; -import com.aspose.cells.SaveFormat; -import com.aspose.cells.Workbook; +import com.aspose.cells.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; @@ -786,6 +784,19 @@ public class PlatformOrderShippingInvoiceService { saveOptions.setDefaultFont("Arial"); saveOptions.setCheckWorkbookDefaultFont(false); Workbook workbook = new Workbook(excelFilePath); + Worksheet sheet = workbook.getWorksheets().get(0); + // get number of lines + Cells cells = sheet.getCells(); + int maxRow = cells.getMaxDataRow(); + PageSetup pageSetup = sheet.getPageSetup(); + // Setting the number of pages to which the length of the worksheet will + if(maxRow < 63) { + // be spanned + pageSetup.setFitToPagesTall(1); + + // Setting the number of pages to which the width of the worksheet will be spanned + pageSetup.setFitToPagesWide(1); + } // On enregistre le document au format PDF workbook.save(pdfFilePath, saveOptions); return pdfFilePath;