【问题标题】:How can I add stream (file less) image in PDF using MigraDoc?如何使用 MigraDoc 在 PDF 中添加流(无文件)图像?
【发布时间】:2018-07-18 17:34:28
【问题描述】:

当我使用以下代码时,它在 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,但它对我不起作用。

【问题讨论】:

  • 如果不能正常工作,请提供 MCVE 而不仅仅是代码 sn-p。

标签: c# pdf migradoc


【解决方案1】:

链接网站的代码运行良好。

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

【讨论】:

    猜你喜欢
    • 2015-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-19
    • 1970-01-01
    • 2015-04-06
    • 2013-10-07
    • 1970-01-01
    相关资源
    最近更新 更多