首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >itextsharp创建损坏/空白的pdf文件,i-9文件

itextsharp创建损坏/空白的pdf文件,i-9文件
EN

Stack Overflow用户
提问于 2010-12-15 07:42:31
回答 1查看 2.2K关注 0票数 0

我一直使用Itextsharp在.aspx页面中预先填充可填充的pdf。但是当我试图对i-9文件(从国土安全部下载)做同样的事情时,它给了我一个大小为0的文件,无法打开(我得到一个错误消息说,这是一个损坏的文件)。

我只是在复制代码片段(我的解决方案中有所有必要的Itestsharp引用),它会生成一个损坏的pdf文件(大小为0)。

代码语言:javascript
复制
string pdfTemplate = @"c:\PDF\i-9.pdf";
  string newFile = @"c:\PDF\completed_i-9.pdf";
  PdfReader pdfReader = new PdfReader(pdfTemplate);
  PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream(
                                                               newFile, FileMode.Create));
  pdfStamper.Close();

但是,如果我用任何其他可填充的pdf,例如w4,做同样的事情,它工作得很好。伙计们,你们知道怎么回事吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-16 03:34:29

阿。有了tracked down the PDF,我看到了问题所在。它有一个空白的打开密码,但仍然具有一定的文档安全性。

iText的安全实现还不够细粒度,不允许某些东西,而不允许其他东西,所以当你打开一个受密码保护的PDF文件时,我们抛出一个异常(这个PDF的打开密码是一个空字符串,它会自动打开,但它仍然在那里),除非你用所有者密码打开它,在这种情况下,任何东西都可以打开。

如果你检查你的日志,你会看到异常。

只有国土安全部知道车主密码,我怀疑他们不会告诉你。好消息是,其他人问了一个更具体的问题“如何使用iText修改一个带有”打开“密码”类型的文件,并自己解决了这个问题。

然而,使用他们的答案在法律上是有问题的,所以我不会提供链接或告诉你答案(我已经知道了,也没有告诉其他提问者)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4445420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档