2010-12-14 36 views
0

私はItaspsharpを使用して、埋め込み可能なPDFファイルを.aspxページにあらかじめ埋め込んでいます。しかし、私がi-9ファイル(国土安全保障部からダウンロード)で正確に同じことをしようとしているとき、それは私にサイズ0のファイルを与えました。これは開けませんでした(エラーメッセージが出て、 。itextsharpは、壊れた/空白のPDFファイルを作成します.i-9ファイル

私は同じことを行う場合、私はちょうど、しかし

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(); 

をコードスニペットをコピー(私は、溶液中のすべての必要なItestsharp参照を持っている)破損したPDFファイル(サイズ0)を発生させていますその他の埋め込み可能なPDFそれは完璧に動作します。どんなアイデアだって、ここで何がうまくいかないの?

ありがとうございます。

+0

i-9ファイルを古いAcrobatで保存して、iTextで読むことができるかどうか確認してください。互換性の問題になる可能性があります。 – BeemerGuy

+0

お返事ありがとうございます。私があなたを正しく理解していれば、これは私がしたことです。 Acrobat 9の現在のバージョンをアンインストールして、Acrobat 9でインストールしました。ファイルi-9を開き、そのコピーを保存しました(>>として保存します)。しかし、私はまだ同じエラーが発生します。どのようなバグを私はそれが他のpdfファイル(同じバージョンで保存されている)と完璧にうまく動作することを確認します。 w4。何か本質的にi-9に間違っていますか?どういうわけかこのpdfを作り直せますか?ありがとう。 – Tintin

+0

ctrl + dを押してセキュリティタブをクリックすると、PDFが保護されていることがわかります。詳細は下記の私の答えをチェックしてください。 –

答えて

0

Ahです。 tracked down the PDFを持つと、私は問題を見る。それは空白のオープンパスワードを持っていますが、それ以下のものはいくつかの文書セキュリティを持っていません。

iTextのセキュリティ実装は、まだいくつかのものを許可するだけでなく、パスワード保護されたPDFファイルを開くときに例外をスローします(このPDFへの公開パスワードは空の文字列です。これは自動的に開きますが、OWNERパスワードでオープンしない限り)、何かが行われます。

ログを確認すると、例外が表示されます。

国土安全保障だけがオーナーのパスワードを知っています。私は彼らがあなたに教えてくれるのか疑問です。良いニュースは、他の人がより具体的に尋ねたということです。「iTextを使って「オープンなパスワード」タイプの質問をファイルに適用して、自分自身でそれを理解するにはどうすればいいですか?彼らの答えを使用して

しかし、法的に疑問があるので、私はリンクを提供したり、あなたに(私はすでに知っていたし、いずれかの他の質問者に言わなかった)答えを言うつもりはありません。

+0

Markありがとう!はい、質問を投稿した直後に、私はドキュメントにセキュリティ設定が有効になっていること、「コンテンツのコピー」などを許可していないことを理解しました[pwdを聞いていないので、 質問は、なぜ彼らはそのような種類の制限を置いたのですか?プログラム的にpdfをあらかじめ入力する他の方法はありますか?再度、感謝します。 – Tintin

関連する問題