2015-06-12 66 views
1

我正在嘗試使用PDFsharp將QR碼的動態生成的位圖插入到PDF文檔中。我不想將位圖保存到文件中,只是想將其插入到PDF中。我遇到的問題是DrawImage命令正在尋找圖像文件所在的字符串。但我不想保存該文件,我只是想將其插入到PDF文檔中。有沒有辦法做到這一點?如何使用PDFsharp將動態生成的位圖插入到PDF文檔中?

   var QRCode_BMP = _generalCode.QR_CodeGenerator(AddReviewPath); //This generates the bitmap 
       MemoryStream streamQR = new MemoryStream(); 
       QRCode_BMP.Save(streamQR, System.Drawing.Imaging.ImageFormat.Jpeg); //save bitmap into memory stream in jpeg format System.Drawing.Image QR_Jpeg = System.Drawing.Image.FromStream(streamQR);// save memory stream to image file 
       XImage xImage = XImage.FromGdiPlusImage(QR_Jpeg); 
       gfx = XGraphics.FromPdfPage(page); 

       DrawImage(gfx, xImage, 0, 0, 100, 100); //This is not working 

       QRCode_BMP.Dispose(); 
       streamQR.Close(); 
       gfx.Dispose(); 
+0

請提供更多信息,而不僅僅是「這不工作」。 –

+0

DrawImage命令實際上並不尋找xImage,它需要一個文件所在位置的字符串。正如我上面提到的,我不想將文件保存到磁盤。如果您有任何想法,肯定會感激。 – user2789697

+0

它有助於使用正確的DrawImage()方法。嘗試'gfx.DrawImage(...)'並傳遞你的xImage。 –

回答

2

您創建QRCode_BMP一個QR代碼,然後你從QR_Jpeg創建一個XImage和寫它不工作。

QRCode_BMP僅用於創建從不使用的流。我們沒有看到QR_Jpeg來自哪裏。

提供完整的樣本。

BTW:您可以使用XImage.FromStream來使用您創建的流。

P.S .: IMHO JPEG是一個不錯的選擇QR碼。只需使用BMP並且PDFsharp將使用無損壓縮。

相關問題