如何使用iText7在C#中从MemoryStream创建图像对象?

问题描述 投票:0回答:2

我正在ASP.NET-MVC v5.2中使用iText7。我对iText缺乏经验,而C#仍在尝试弄清楚该库中的类如何工作。

说我有一个MemoryStream,其中包含一张图像...

MemoryStream imgStream = new MemoryStream(imgLocation);

如何使用imgStream创建图像对象?我正在寻找类似于

的东西
Image img = new Image(imgStream);

感谢您的帮助:)

c# asp.net asp.net-mvc itext
2个回答
0
投票

将MemoryStream转换为byte[]并使用GetInstance方法

public static byte[] GetByteArray(Stream input)
{
    byte[] buffer = new byte[16*1024];
    using (MemoryStream ms = new MemoryStream())
    {
        int read;
        while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
        {
            ms.Write(buffer, 0, read);
        }
        return ms.ToArray();
    }
}

然后使用像这样的字节数组

var Image = Image.GetInstance(GetByteArray(imgStream));

© www.soinside.com 2019 - 2024. All rights reserved.