首页 > 解决方案 > 如何使用 MigraDoc 在 PDF 中添加流(无文件)图像?

问题描述

当我使用以下代码时,它在 PDF 中没有显示图像。
这是我的代码

    private static void RenderHtmlToImage(string html, Paragraph paragraph, int pageCnt)
    {
        System.Drawing.Image image = HtmlRender.RenderToImageGdiPlus(html);
        //var tempImagefile = tempImagePath + "\\tempImage_" + pageCnt + ".png";
        //image.Save(tempImagefile, ImageFormat.Png);
        //paragraph.AddImage(tempImagefile);

        byte[] imageArray = imageToByteArray(image);
        string imageFilename = "base64:" + Convert.ToBase64String(imageArray);
        paragraph.AddImage(imageFilename);
    }

    public static byte[] imageToByteArray(System.Drawing.Image imageIn)
    {
        MemoryStream ms = new MemoryStream();
        imageIn.Save(ms, ImageFormat.Png);
        return ms.ToArray();
    }

当我将图像保存在本地文件夹中时,它工作得很好。
我也关注了这个链接http://www.pdfsharp.net/wiki/MigraDoc_FilelessImages.ashx但它对我不起作用。

标签: c#pdfmigradoc

解决方案


链接站点的代码工作正常。

确保您使用的是最新版本(截至目前为 1.50 RC2)。1.32 或更高版本不支持无文件图像。


推荐阅读