Spire.Office for Java 8.10.2 已发布。在该版本中,Spire.XLS for Java 新增支持验证限制编辑的密码是否正确的方法;Spire.PDF for Java新增支持设置 AES 加密算法以及重置已有域的名字;Spire.Doc for Java将 AppendHorizonalLine() 方法同步到 Java中; Spire.Presentation for Java支持转换指定幻灯片到 SVG 以及转换 PPT 到 SVGZ。 此外,一些已知问题也在该版本中得到修复。详情请阅读以下内容。
获取 Spire.Office for Java 8.10.2请点击:
Spire.XLS for Java
新功能:
- 新增支持验证限制编辑的密码是否正确的方法
worksheet.checkProtectionPassword(String password)
问题修复:
- 修复了将Excel转换为PDF后,文档内容不正确的问题。
- 修复了将Excel转换为图像后,图表中的内容不正确的问题。
- 修复了将Excel转换为OFD后,表格边框丢失的问题。
- 修复了加载Excel文档时,程序抛出 “Invalid ValidationAlertType string val” 的问题。
- 修复了无法将透视表计算域添加为列字段的问题。
- 修复了透视表计算域的名称自动添加 “Sum of” 前缀的问题。
- 修复了加载Excel文档时,程序抛出 “java.lang.ClassException” 的问题。
Spire.PDF for Java
新功能:
- 同步 .NET 新的加解密接口到 JAVA,并支持设置 AES 加密算法。
PdfEncryptionAlgorithm.AES
//创建密码安全策略
PdfSecurityPolicy securityPolicy = new PdfPasswordSecurityPolicy("", "123456");
//设置加密算法
securityPolicy.setEncryptionAlgorithm( PdfEncryptionAlgorithm.AES_256);
//设置文档权限(所有权),默认是ForbidAll
securityPolicy.setDocumentPrivilege(PdfDocumentPrivilege.getForbidAll());
securityPolicy.getDocumentPrivilege().setAllowDegradedPrinting(true);
securityPolicy.getDocumentPrivilege().setAllowModifyAnnotations(true);
securityPolicy.getDocumentPrivilege().setAllowAssembly(true);
securityPolicy.getDocumentPrivilege().setAllowModifyContents(true);
securityPolicy.getDocumentPrivilege().setAllowFillFormFields(true);
securityPolicy.getDocumentPrivilege().setAllowPrint(true);
pdf.encrypt(securityPolicy);
PdfDocument pdf = new PdfDocument();
//传递打开密码打开PDF文档
pdf.loadFromFile(inputFile, "1234");
//解密
pdf.decrypt();
pdf.saveToFile(outputFile, FileFormat.PDF);
pdf.dispose();
PdfDocument document=new PdfDocument();
document.loadFromFile("input.pdf");
PdfFormWidget formWidget = (PdfFormWidget)document.getForm();
for (int i = 0; i < formWidget.getFieldsWidget().getCount(); i++)
{
PdfField field = (PdfField)formWidget.getFieldsWidget().get(i);
for (PdfFieldWidget widget : (Iterable<? extends PdfFieldWidget>) formWidget.getFieldsWidget())
{
if (widget.getName() == "oldName")
{
widget.setName("NewName");
}
}
}
document.saveToFile("result.pdf",FileFormat.PDF);
问题修复:
- 修复了转换PDF到SVG后背景不正确的问题。
- 修复了转换PDF到PPTX后形状颜色不正确以及内容缺失的问题。
- 修复了转换PDF到PPTX后图像被遮挡的问题。
- 修复了转换PDF到PDFA2B后标准验证失败的问题。
- 修复了转换OFD到PDF后图章丢失的问题。
- 修复了加载PDF时程序抛"NullPointerException"的问题。
Spire.Doc for Java
新功能:
- 同步AppendHorizonalLine()方法到JAVA。
- paragraph.appendHorizonalLine()
- 支持在转换为非流式布局文档时,将不支持绘制字符的字体通过FontFallbackRule方法中的xml做字体切换。
Document doc = New Document();
doc.loadFromFile(inputFile);
doc.saveFontFallbackRuleSettings(outputFile_xml);
doc.loadFontFallbackRuleSettings(outputFile_xml);
doc.saveToFile(outputFile, FileFormat.PDF);
- 使用说明:
如果没有 XML需要先通过saveFontFallbackRuleSettings保存一个XML,然后可以通过XML手动编辑字体替换的规则。
规则现在一共包含三个属性Ranges,FallbackFonts,BaseFonts:
Ranges对应字符对应的Unicode范围;FallbackFonts对应字符需要替换的字体名称;BaseFonts是文档中字符对应的字体名;
在编辑XML的时候需要注意在XML中字符查找对应的规则是按从上到下的顺序查找。
在对XML编辑过后通过loadFontFallbackRuleSettings方法把规则加载进来。
问题修复:
- 修复了使用WPS规则转换Word到PDF时程序抛“OutOfMemoryError”的问题。
- 修复了"楷体_GB2312"字体嵌入失败的问题。
- 修复了转换RTF到PDF后中文乱码的问题。
- 修复了保存Word文档后可编辑区域被改变的问题。
- 修复了修改Word文档后可编辑区域被改变的问题。
- 修复了设置图片缩放大小的结果不正确的问题。
- 修复了转换Word 到HTML后表格样式不正确的问题。
- 修复了转换HTML到Word后字号不正确的问题。
- 修复了使用executeWidthNestedRegion()方法执行嵌套域填充字段后每个值会显示两次的问题。
- 修复了转换Word到OFD后文件变大很多的问题。
Spire.Presentation for Java
新功能:
- 支持转换PPT文档到SVGZ格式文档。
Presentation ppt = new Presentation();
ppt.loadFromFile("input.pptx");
List<byte[]> bytes=ppt.saveToSVGZ();
for (int i=0;i<bytes.size();i++)
{
FileOutputStream fileOutputStream=new FileOutputStream("slide"+i+".svgz");
fileOutputStream.write(bytes.get(i)); fileOutputStream.flush(); fileOutputStream.close();
}
Presentation ppt = new Presentation();
ppt.loadFromFile("input.pptx");
List<byte[]> bytes=ppt.saveToSVG(0,36);
for (int i=0;i<bytes.size();i++){
FileOutputStream fileOutputStream=new FileOutputStream("slide"+(i+1)+".svg");
fileOutputStream.write(bytes.get(i));
fileOutputStream.flush();
fileOutputStream.close();
}
问题修复:
- 修复了转换PPT到PDF后内容显示不完整的问题。
- 修复了转换PPT到PDF后手绘图画丢失的问题。
- 修复了加载PPT文档时程序抛异常java.lang.NullPointerException的问题。
本文暂时没有评论,来添加一个吧(●'◡'●)