2017-08-01 12 views
0

Aspose PDFが新しくなりました。なぜ私はこの相互参照エラーを取得しているのか分かりません。これは、イメージがpdfファイルに追加されるときに発生します。AddImage関数でクロスリファレンステーブルまたはクロスリファレンスストリームが見つかりません

以下はコードサンプルです。

// Gets the image file to be merged with the document 
var b1 = GetDocumentFile(imageLayer.UNIQUE_ID); 
if (b1.File.DocumentLayer?.PAGE_NUMBER != null) 
{ 
    var i = b1.File.DocumentLayer.PAGE_NUMBER.Value; 
    var pngBin = EFSUtil.ReadFileFromFileServer(b1.File.FullFilePathAndName, b1.Server); 

    pngBin = CheckIfWebPAndProcess(pngBin); 

    //open document based ont eh stream 
    var pdfDocument = new Document(pdfMemoryStream); 
    var rect = pdfDocument.Pages[i].GetPageRect(true); 
    pdfDocument.Pages[i].AddImage(new MemoryStream(pngBin), rect); <-- Error hit here 

    var bMemStrm = new MemoryStream(); 
    pdfDocument.Save(bMemStrm); 
    pdfMemoryStream = bMemStrm; 
} 

私はエラーがAddImage()中に起こったと私は、エラーが起こったとどのようにそれを解決するのではなく、失敗した理由を理解しようとした理由として、いくつかの貴重な情報を取得しようとしました。私が探すことができる最も近いものは、これらのリンクです。

Manipulate Images

Page class

私はあなたがこれで私を助けることができると思います。

UPDATEありがとう

これは役立つだろうかどうかわからしかし、問題は、私は私のPDFが問題を抱えていたことが判明AddImage

at   .   ​() 
    at   .(Int32 , Int32&) 
    at   .   ​(Int32) 
    at ​  .(Int32) 
    at Aspose.Pdf.OperatorCollection.79au5vc3bv4m9r8vf6tce224vh3rwyeh ​() 
    at Aspose.Pdf.OperatorCollection.(IList) 
    at Aspose.Pdf.OperatorCollection.(IList , ) 
    at Aspose.Pdf.OperatorCollection.(List`1) 
    at Aspose.Pdf.OperatorCollection.Add(ICollection ops) 
    at Aspose.Pdf.Page.(Stream , Rectangle , Matrix , CompositingParameters , Boolean , Boolean ,   &) 
    at Aspose.Pdf.Page.(Stream , Rectangle , Matrix , CompositingParameters ,   &) 
    at Aspose.Pdf.Page.AddImage(Stream imageStream, Rectangle imageRect) 
+0

このリンクを介してこれを検証することができました。 Aspose.Pdf for .NET 17.7を使用しているときに私のサンプルPDFの1つを使用してシナリオをテストしましたが、あなたが言及したAddImage()メソッドで例外を認識できませんでした。場合によっては、問題が特定のドキュメントや入力ファイルに関連している可能性があります。サンプル・イメージをサンプル・イメージと共有して、シナリオを再度テストし、それに応じて対処できるようにしてください。 –

+0

さらに、メソッド "ReadFileFromFileServer()"の定義と、イメージを追加しようとしているサンプルドキュメントの特定のページ番号を共有することもできます。サンプルのAsp.NET Applicationでシナリオをテストし、それに応じてあなたに連絡します。 –

+0

@AsadAli、 'ReadFileFromFileServer()'はサーバからファイルを取得し、バイト配列に変換します。しかし、悲しいことに、私はこれが機密であるため、サンプル文書や画像を共有することはできません。しかし、問題が特定の文書や入力ファイルに関連していると言ったときに、より多くの情報を提供できますか?これが起こる特定の問題のように? – Musikero31

答えて

0

に発生したときに、ここでスタックトレースだわけではありません。私はこんにちは、私はAspose社のサポートの開発者として働いて

3-HEIGHTS™ PDF VALIDATOR ONLINE TOOL

+0

特定の文書でのみ問題が発生していることを確認できるように、いくつかの異なるPDF文書でシナリオを試してください。 –

+0

それは私がやったことです。それで私は私の答えに向かった。 – Musikero31

関連する問題