我使用pd4ml来创建pdf文档,但是我不希望用户能够使用ms word 2013编辑这些文档。 这是我到目前为止所尝试的
pd4ml = new PD4ML();
pd4ml.setPageSize(PD4Constants.A4);
pd4ml.setPageInsetsMM(new Insets(TOPVALUE, LEFTVALUE, BOTTOMVALUE, RIGHTVALUE));
pd4ml.setHtmlWidth(USERSPACEWIDTH);
pd4ml.enableImgSplit(false);
pd4ml.disableHyperlinks();
//some more code
pd4ml.render(arrayOfURLs, byteArrayOutputStream);
//some more code
然后我读了PD4ML API documentation并添加了这行代码pd4ml.generatePdfa(true);
当我在adobe reader中打开文档并看到此消息时,我认为问题已解决“
这个文件声称符合pdf / a标准,并且已经以只读方式打开“,但当然它仍然是可编辑的;所以关于如何在pd4ml中完成任何建议,或任何对api的引用我可以用来添加这个对生成的pdf的限制将受到欢迎。
答案 0 :(得分:0)
试过这个? 这个如果从文档中顺便说一下:
AllowModify
public static final int AllowModify
Document access permission (bit 4, value = 8).
Modify the contents of the document by operations other than those controlled by bits 6, 9, and 11.
See Also:
PD4ML.setPermissions(String, int, boolean), Constant Field Values
您也可以这样做:
pd4ml.setPermissions("", 0xffffffff ^ PD4Constants.AllowModify, false);
禁用修改。