Spire.Office for Android via Java 8.4.1 已发布。在该版本中,Spire.PDF for Android via Java 支持多项新功能,如转换 PDF 为 PPTX 和 SVGZ,以及比较 PDF 文档;Spire.Presentation for Android via Java 增强了 PPTX 到 PDF 的转换功能。此外,一些已知问题也在该版本中成功修复。详情请阅读以下内容。
获取 Spire.Office for Android via Java 8.4.1 请点击:https://www.e-iceblue.cn/Downloads/office-for-android-via-java.html
Spire.PDF for Android via Java
新功能:
- 支持转换 PDF 到 PPTX。
- 支持压缩图片。
- 新增 pdf.getDocumentInformation() 方法获取 Metadata 数据,废弃了 XmpMetadata。
- 支持在加密 PDF 文档时设置加密选项。
- 支持判断 PDF 文档流是否被加密。
- 新增支持将 PDF 转换为 Word 的新方法。
- 支持比较 PDF 文档。
- 支持转换 PDF 文档为 SVGZ 文档。
String input = "data/JavaPDFSample_1.pdf";
String output = "output/toPPTX.pptx";
//Load a pdf document
PdfDocument doc = new PdfDocument();
doc.loadFromFile(input);
//Convert to pptx file.
doc.saveToFile(output, FileFormat.PPTX);
doc.close();
PdfCompressor compressor = new PdfCompressor(inputFile);
compressor.getOptions().getImageCompressionOptions().setCompressImage(true);
compressor.getOptions().getImageCompressionOptions().setResizeImages(true);
compressor.getOptions().getImageCompressionOptions().setImageQuality(ImageQuality.High);
compressor.compressToFile(outputFile);
PdfDocument doc = new PdfDocument();
doc.loadFromFile(inputFile);
StringBuilder builder = new StringBuilder();
builder.append("Author:" + doc.getDocumentInformation().getAuthor() + "\r\n");
builder.append("Title: " + doc.getDocumentInformation().getTitle() + "\r\n");
builder.append("Creation Date: " + doc.getDocumentInformation().getCreationDate() + "\r\n");
builder.append("Subject: " + doc.getDocumentInformation().getSubject() + "\r\n");
builder.append("Producer: " + doc.getDocumentInformation().getProducer() + "\r\n");
builder.append("Creator: " + doc.getDocumentInformation().getCreator() + "\r\n");
builder.append("Keywords: " + doc.getDocumentInformation().getKeywords() + "\r\n");
builder.append("Modify Date: " + doc.getDocumentInformation().getModificationDate() + "\r\n");
builder.append("Customed Property's value: " + doc.getDocumentInformation().getCustomProperty("Field1"));
FileWriter fw = new FileWriter(new File(outputFile), true);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(builder.toString());
bw.flush();
bw.close();
fw.close();
PdfDocument pdfdoc = new PdfDocument();
pdfdoc.loadFromFile(inputFile);
PdfSecurityPolicy securityPolicy = new PdfPasswordSecurityPolicy("123", "e-iceblue");
securityPolicy.setEncryptionAlgorithm(PdfEncryptionAlgorithm.AES_128);
securityPolicy.setEncryptMetadata(false);
pdfdoc.encrypt(securityPolicy);
pdfdoc.saveToFile(outputFile);
FileInputStream stream_1 = new FileInputStream(new File(inputFile_1));
boolean isPasswordProtected_1 = PdfDocument.isPasswordProtected(stream_1);
PdfToWordConverter convert = new PdfToWordConverter(inputFile);
convert.saveToDocx(outputFile);
PdfDocument pdf1 = new PdfDocument(inputFile_1);
PdfDocument pdf2 = new PdfDocument(inputFile_2);
PdfComparer compare = new PdfComparer(pdf1, pdf2);
compare.getOptions().setPageRanges(0, pdf1.getPages().getCount() - 1, 0, pdf2.getPages().getCount() - 1);
compare.compare(outputFile);
PdfDocument pdf = new PdfDocument(inputFile);
pdf.saveToFile(outputFile, FileFormat.SVGZ);
问题修复:
- 修复了添加新的自定义属性后会丢失已有的自定义属性的问题。
- 修复了当打开密码和权限密码一致时程序不提示错误的问题。
Spire.Presentation for Android via Java
问题修复:
- 修复了转换 PPTX 文档到 PDF,程序抛 "AbstractMethodError" 异常的问题。