Java Excel到图像转换

Java Excel到图像转换,java,excel,aspose-cells,Java,Excel,Aspose Cells,我想将excel文件及其图元(图表、表格、图像)转换为jpeg/png图像。目前正在使用aspose。这是我的密码 public static int excelToImages(final String sourceFilePath, final String outFilePrefix) throws Exception { int noOfImages = 0; Workbook workbook = getWorkbook(sourceFilePath); Li

我想将excel文件及其图元(图表、表格、图像)转换为jpeg/png图像。目前正在使用aspose。这是我的密码

public static int excelToImages(final String sourceFilePath, final String outFilePrefix) throws Exception {
    int noOfImages = 0;

    Workbook workbook = getWorkbook(sourceFilePath);
    List<Worksheet> worksheets = getAllWorksheets(workbook);

    if (worksheets != null) {
        for (Worksheet worksheet : worksheets) {
            if (worksheet.getCells().getCount() > 0) {
                String outFilePath = FileUtils.getAbsoluteFilePath(outFilePrefix + (noOfImages++));

                SheetRender sr = new SheetRender(worksheet, getImageOrPrintOptions());
                sr.toImage(0, outFilePath);
            }
        }
    }
    return noOfImages;
}

private static ImageOrPrintOptions getImageOrPrintOptions() {
    ImageOrPrintOptions imgOptions = new ImageOrPrintOptions();
    imgOptions.setImageFormat(ImageFormat.getJpeg());
    imgOptions.setOnePagePerSheet(true);
    return imgOptions;
}

private static List<Worksheet> getAllWorksheets(final Workbook workbook) {
    List<Worksheet> worksheets = new ArrayList<Worksheet>();

    WorksheetCollection worksheetCollection = workbook.getWorksheets();
    for (int i = 0; i < worksheetCollection.getCount(); i++) {
        worksheets.add(worksheetCollection.get(i));
    }
    return worksheets;
}

有谁能告诉我如何自定义输出图像文件的大小吗?

您可以使用
imgOptions.setonlyrea(true)进行尝试。这会将图像的大小设置为将所有内容放入图像所需的最小值。但我不确定生成的图像是否拆分为A4部分

imgOptions.setOnePagePerSheet(true);