c# - 如何使用 PDFsharp 将动态生成的位图插入到 PDF 文档中?

标签 c# pdf bitmap memorystream pdfsharp

我正在尝试使用 PDFsharp 将动态生成的二维码位图插入到 PDF 文档中。我不想将位图保存到文件中,只想将其插入到 PDF 中。我遇到的问题是 DrawImage 命令正在寻找图像文件所在的字符串。但是我不想保存文件,我只想将它插入到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();

最佳答案

我就是这样实现的;

        PdfDocument pdf = PdfGenerator.GeneratePdf("<b>some html here</b>", PageSize.A4);

        QRCodeGenerator qrGenerator = new QRCodeGenerator();
        QRCodeData qrCodeData = qrGenerator.CreateQrCode("some text here", QRCodeGenerator.ECCLevel.Q);
        QRCode qrCode = new QRCode(qrCodeData);

        Bitmap qrCodeImage = qrCode.GetGraphic(10);


        PdfPage page = pdf.Pages[0]; //I will add it to 1st page

        // Get an XGraphics object for drawing
        XGraphics gfx = XGraphics.FromPdfPage(page);

        XImage image = XImage.FromGdiPlusImage(qrCodeImage); //you can use XImage.FromGdiPlusImage to get the bitmap object as image (not a stream)
        gfx.DrawImage(image, 50, 50, 150, 150);
//save your pdf, dispose other objects

关于c# - 如何使用 PDFsharp 将动态生成的位图插入到 PDF 文档中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30809417/

相关文章:

java - 如何减少多个 Activity 的内存分配

c# - Azure 通信服务 - 如何针对 Azure IAM 进行身份验证

c# - ODP .NET 获取 SYSREFCURSOR 输出。 {"Unsupported column datatype"} 错误

php - 使用 php jquery 和 ajax 的 html2fpdf - 使用完整的 CSS 导出

java - 将字节数组转换为位图在 java 中给出 bitmap=null

android imageview 显示质量差

java - 在 Java 中连接到 LDAP Active Directory,无需用户名和密码

c# - 如何在 VS 2015 中获取选定的错误描述

parsing - 我如何知道 PDF 页面是彩色还是黑白?

swift - 如何在 swift macOS 中旋转 PDF 页面?