2017-05-15 5 views
2

私はIText7バージョン7.0.2.2を使用しています。私はそれを初めて使っています。同時に複数のpdfsを同時にアップロードしようとしています。問題は、私は動的にpdfの1つにテキストを挿入し、それをマージすると、私はPDFにいくつかのコンテンツを書き込むためにPdfWriterを使用しているし、それをマージしようとするが、私はこの例外を得ています: 'Cannot copy indirect object from the document that is being written.テキストを挿入してからpdfをマージする

これは私が使用しているコードの一部は次のとおりです。

private byte[] MergePdfForms(HttpPostedFileBase firstPdf, List<SectionAndPdfs> sectionsAndPdf) 
     { 
var dest = new MemoryStream(); 
      PdfDocument pdf = new PdfDocument(new PdfWriter(dest)); 
      PdfMerger merger = new PdfMerger(pdf); 
firstSourcePdf = new PdfDocument(new PdfReader(keyValuePair.Value), new PdfWriter(dest)); 
Document document = new Document(firstSourcePdf); 
document.Add(new Paragraph(sectionsAndPdf[i].Key).SetBackgroundColor(iText.Kernel.Colors.Color.GRAY)); 

merger.Merge(firstSourcePdf, 1, subPages); //I'm getting the exception here.. 
firstSourcePdf.Close(); 
} 

答えて

2

これはクラスPdfDestinationにおける既知のバグです。これは修正され、次回のリリースで発表される予定です。現時点ではもちろん、スナップショットリリースを使用することができます。これにより問題を解決するはずです。

+0

スナップショットのリリースはどこで入手できますか? – AlexGH

+0

スナップショットリリースはGoogleのリポジトリにあります https://repo.itextsupport.com/webapp/#/artifacts/browse/tree/General/files 単純にバージョンを変更します(MavenまたはNuggetを使用していると仮定します) )をスナップショットバージョンに追加します。 –

+0

私はJavaで7.0.4を実行しています。これはまだ問題なのでしょうか?私はまったく同じような何かをしているまったく同じエラーを取得しています。 – talon8

関連する問題