Image Resizer:没有找到请求的图像编码器(WebP)

Image Resizer: No image encoder was found for the request (WebP)

我在使用 Imageresizer .NET 库对 WebP 格式的图像进行编码时遇到问题。

这是引发异常的代码片段:

ImageResizer.ImageJob i1920Webp = new ImageResizer.ImageJob(filePath, filePath.Replace(name, name + "-1920").Replace(ext, ".webp"),new ImageResizer.Instructions("width=1920;format=webp;quality=65"));
i1920Webp.Build();

这是相对堆栈跟踪:

[ImageProcessingException (0x80004005): No image encoder was found for this request.]
ImageResizer.ImageBuilder.buildToStream(Bitmap source, Stream dest, ResizeSettings settings) +270
ImageResizer.ImageBuilder.BuildJob(ImageJob job) +1237
ImageResizer.ImageBuilder.Build(ImageJob job) +268

Build() 方法调用引发异常。 目标文件是在文件系统上创建的,但它是空的(0 字节);它被正确命名为:image-1920.webp

我已经通过 NuGet 安装了 WebP 插件;我在 web.config.

的调整器部分的插件部分添加了 <add name="WebPEncoder" />

我不明白这是什么问题。

Nathanael,我已按照您最新评论中的提示进行操作,现在可以使用了。 这就是我所做的:

var config = new ImageResizer.Configuration.Config();
new WebPEncoderPlugin().Install(config);
config.BuildImage(
    filePath, 
    filePath.Replace(name, name + "-1920").Replace(ext, ".webp"),
    "width=1920;format=webp;quality=65"
);

感谢您的支持!