Spire.XLS for Java 14.2.4已发布。该版本新增支持保存Kingdraw绘制的OLE对象为图片。此外,一些已知问题也在该版本中被成功修复,如将Excel转换为PDF后内容不正确的问题。详情请阅读以下内容。
新功能:
- 新增支持保存Kingdraw绘制的ole对象为图片。
com.spire.xls.Workbook workbook = new com.spire.xls.Workbook();
workbook.loadFromFile("data.xlsx");
Worksheet sheet = workbook.getWorksheets().get(0);
Object o = sheet.getCellRange("C2").getFormulaValue();
if (sheet.hasOleObjects()) {
for (int i = 0; i < sheet.getOleObjects().size(); i++) {
IOleObject oleObject = sheet.getOleObjects().get(i);
OleObjectType oleObjectType = sheet.getOleObjects().get(i).getObjectType();
byte[] picUrl = null;
switch (oleObjectType) {
case Emf:
picUrl = oleObject.getOleData();;
break;
}
if (picUrl != null) {
byteArrayToFile(picUrl, "out.png");
break;
}
}
}
}
public static void byteArrayToFile(byte[] datas, String destPath) {
File dest = new File(destPath);
try (InputStream is = new ByteArrayInputStream(datas);
OutputStream os = new BufferedOutputStream(new FileOutputStream(dest, false));) {
byte[] flush = new byte[1024];
int len = -1;
while ((len = is.read(flush)) != -1) {
os.write(flush, 0, len);
}
os.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
问题修复:
- 修复了将Excel转换为 PDF后,内容不正确的问题。
- 修复了复制内容后,图片不正确的问题。
- 修复了将XML转换为Excel时,程序抛出“A workbook must contain at least a visible worksheet”的问题。
- 优化了setValue方法中关于Locale的设置。
- 修复了复制表时,程序抛出“NullPointerException”的问题。
- 修复了将Excel转换为HTML后, 文本内容样式改变的问题。
获取Spire.XLS for Java 14.2.4请点击: