你好,目前测试发现有两个问题:
1 同时处理很多xls文件的时候好像会占用大量IO资源,最后导致阻塞,整台机器都停止工作,在资源占用这块有没有可以优化的地方?
2 xls转jpg时候会把sheet1全部内容转成jpg,但是如果是sheet1超长的xls,转出来就是一个很细很长的jpg(如示例示例.zip (27.9 KB)
)完全看不清。我们只是想要一个预览图的效果,只显示部分就行,所以有没有API可以选择把从第一行开始指定的行数转成jpg?
非常感谢!
你好,目前测试发现有两个问题:
1 同时处理很多xls文件的时候好像会占用大量IO资源,最后导致阻塞,整台机器都停止工作,在资源占用这块有没有可以优化的地方?
2 xls转jpg时候会把sheet1全部内容转成jpg,但是如果是sheet1超长的xls,转出来就是一个很细很长的jpg(如示例示例.zip (27.9 KB)
)完全看不清。我们只是想要一个预览图的效果,只显示部分就行,所以有没有API可以选择把从第一行开始指定的行数转成jpg?
非常感谢!
@chenxf,
关于处理大量文件和大文件,请尝试以下文章中的选项并分享反馈。
Optimizing Memory Usage while Working with Big Files having Large Datasets
要将大文件转换为图像,可以按页面将它们转换为图像,如以下示例代码所示:
Workbook book = new Workbook(path + "book1.xlsx");
Worksheet sheet = book.getWorksheets().get(0);
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setHorizontalResolution(200);
options.setVerticalResolution(200);
options.setImageType(ImageType.JPEG);
// Sheet2Image By Page conversion
SheetRender sr = new SheetRender(sheet, options);
for (int j = 0; j < sr.getPageCount(); j++)
{
sr.toImage(j, path + "Book1_" + (j + 1) + ".jpg");
}
不好意思,你可能没有理解我的意思。我是问:有没有API可以把从第一行开始到指定位置行转成jpg?
您可以根据所需的单元格范围设置可打印区域,然后将其渲染为满足您需求的图像或PDF文件格式,请参阅文档以供参考:
Export Range of Cells in a Worksheet to Image
希望这个对你有帮助。