aspose-cell将excel转pdf时,对pdf设置权限限制
直接看代码:
public static void excelToPdf(InputStream fileInput, OutputStream fileOutput) {
// 验证License
if (!getLicense()) {
return;
}
String property = System.getProperty("user.dir");
File isFile = new File(property + "/exportFonts");
String path = property + "/exportFonts";
createFontFile(isFile);
IndividualFontConfigs fontConfigs = new IndividualFontConfigs();
fontConfigs.setFontFolder(path, false);
LoadOptions opts = new LoadOptions(LoadFormat.XLSX);
opts.setFontConfigs(fontConfigs);
Workbook wb;
try {
wb = new Workbook(fileInput, opts);
PdfSaveOptions saveOption = new PdfSaveOptions();// 设置pdf保存时的配置
PdfSecurityOptions securityOptions = new PdfSecurityOptions();// pdf权限配置
securityOptions.setPrintPermission(true); // 将打印权限设置为true,可以打印
saveOption.setSecurityOptions(securityOptions);
wb.save(fileOutput, saveOption);
} catch (Exception e) {
logger.error(e.getMessage(), e);
}
}
这里我们通过配置PdfSecurityOptions这个权限配置类,来操作pdf保存时的权限问题。我们看PdfSecurityOptions这个类:
我们可以看到,这里有各种的权限配置,比如是否可以编辑文档、是否可以打印、设置密码等等权限配置。
而且,我们可以看到,这个权限配置类,默认是没有任何权限的,也就是说如果使用这个类,不自定义权限,则导出的pdf文档就是只读的,只能看,不能做其他的任何操作。如果想放开某个权限,则可以将对应的属性设置为true即可。