Image.ForStream() 方法的参数无效错误

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

我正在尝试从

memoryStream
创建 Png 格式的图像,但出现“参数无效”异常。

XGraphics gfx = XGraphics.FromPdfPage(page);

Image image = Image.FromStream(memoryStream);
            image.Save(memoryStream,System.Drawing.Imaging.ImageFormat.Png);

XImage xFoto = XImage.FromStream(memoryStream);
double imageWidth = page.Width;
double imageHeight = page.Height;

double xPosition = 0;
double yPosition = 0;

gfx.DrawImage(xFoto, xPosition, yPosition, imageWidth, imageHeight);

每当代码命中

Image.FromStream(memoryStream)

我遇到了这个异常

参数无效

我看到

System.Drawing.Image.FromStream()
方法仅接受
Stream
对象参数。根据此逻辑,传递
MemoryStream
对象看起来有效,但我仍然遇到此错误。

任何人都可以建议解决此问题吗?

c# .net pdfsharp
1个回答
0
投票

您应该在调用

MemoryStream
之前创建一个新的
image.Save
以避免一个流中出现两个图像。

在调用 Save 之前,您甚至没有将流位置设置为 0。

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