用于打印的手动分页符在Apache POI excel中不起作用

时间:2017-05-11 06:43:05

标签: java excel printing apache-poi

我在Apache POI中使用XSSFWorkbook,XSSFSheet进行Excel下载。在我的excel中,共有154列。我需要用两张A3纸打印。 我必须先在第一张A3纸上打印69列。第二张表中的剩余列。

工作表实例:XSSFSheet sheet = wb.getSheetAt(sheetNo);

我曾尝试过

    sheet.setAutobreaks(false); 
    sheet.setColumnBreak(68); // index value of 69th column 

    PrintSetup printSetup = sheet.getPrintSetup();
    printSetup.setLandscape(true);
    printSetup.setFitWidth((short)2);
    printSetup.setFitHeight((short)1); 
    printSetup.setPaperSize(PrintSetup.A3_PAPERSIZE);

但它没有帮助。这样,第一个打印输出页面包含79列(但只需要69个)

所以我尝试添加

sheet.setColumnBreak(153);
sheet.removeColumnBreak(78); // to remove default page break in 79th column

它也没用。

我也尝试过:

for(int i=0; i<= 153; i++)
        {
            if(i==68 || i== 153)
            {
                sheet.setColumnBreak(i);
            }
            else
            {
                sheet.removeColumnBreak(i);
            }
        }

但它对我没有帮助。请建议我按照我的预期打印。 提前谢谢。

0 个答案:

没有答案