PNG文件的自定义解码器

时间:2019-05-02 19:32:10

标签: imagesharp

我从用户手册中下载了一张图片(请参阅attachment),并且需要对其进行转换。当我尝试通过以下代码加载它时,出现了异常:“无法加载图像。可用的解码器:\ r \ n-JPEG:JpegDecoder \ r \ n-PNG:PngDecoder \ r \ n-GIF:GifDecoder \ r \ n-BMP:BmpDecoder \ r \ n”。 是否可以应用自定义解码器,我在哪里可以找到它们?

using (var originalImage = new MemoryStream(...))
using (var image = Image.Load<Rgba32>(originalImage))
{

}

1 个答案:

答案 0 :(得分:0)

可以使用ImageSharp解码链接的图像。正如@tocsoft在评论中所说,您可能忘记了重置输入流位置。

这是两个图像。我们使用以下代码加载并垂直翻转了第二个代码:

using (var image = Image.Load(Path.Combine(inPath, "-7bH2hfA.png")))
{
    image.Mutate(x => x.Flip(FlipMode.Vertical));

    image.Save(Path.Combine(outPath, "-7bH2hfA-flipped.png"));
}

您的输入图片:

the link in comments

我们翻转的输出图像:

Input image

编辑

当我最初测试图像时,我使用了r单击保存,这给了我一个有效的png。此后,我一直使用直接从Dropbox下载的文件来生成原始文件。

不是png!实际上,它是一个webp文件。

Flipped output image