我需要验证 HTTP 请求响应是否是图像,我想使用 Magick.NET 来完成此操作,而不是依赖响应的内容类型,因为我将调整图像大小并需要确保输入可由图书馆处理。
我看到一些建议阅读图像的帖子,但我知道有一个专门的命令“identify”可以实现对性能影响较小的技巧,不幸的是,我还没有找到使用它的方法魔法.NET.
有没有办法使用 C# 中的识别命令,或者我应该使用
new MagickImage(inputStream).Format
读取流?
我发现可以通过 MagickImageInfo MagickImageInfo 类使用识别命令,该类在幕后使用
MagickImage.Ping
private static void ValidateContent(Stream imageStream)
{
try
{
if (imageStream.CanSeek)
imageStream.Seek(0, SeekOrigin.Begin);
MagickImageInfo info = new MagickImageInfo(imageStream);
Console.WriteLine($"stream content format {info.Format}");
if (imageStream.CanSeek)
imageStream.Seek(0, SeekOrigin.Begin);
}
catch (MagickErrorException)
{
{...}
}
}