完美解决.NET Framework 4.0 中 System.Drawing 库不支持 WebP 格式的图像处理

如果你想在 .NET Framework 4.0 中使用 ImageMagick 处理图片,可以通过 Magick.NET 库来实现。Magick.NET 是 ImageMagick 的 .NET 封装,可以用来读取、写入、编辑图像。

以下是如何使用 Magick.NET 来处理图像并提取图像的宽度和高度。

步骤:

  1. 安装 Magick.NET : 首先,你需要在项目中安装 Magick.NET 库。在 NuGet Package Manager Console 中运行:

    cs 复制代码
    Install-Package Magick.NET-Q8-AnyCPU -Version 7.12.0
  2. 示例代码 : 使用 Magick.NET 来读取图像并获取其宽度和高度。

    cs 复制代码
    using ImageMagick;
    
    public void ProcessImage(string filePath)
    {
        using (MagickImage image = new MagickImage(filePath))
        {
            // 获取图像的格式
            string format = image.Format.ToString();
            
            // 处理图像(例如获取宽度、高度等)
            int width = image.Width;
            int height = image.Height;
    
            // 输出图像的格式和尺寸
            Console.WriteLine($"Image Format: {format}, Width: {width}, Height: {height}");
        }
    }

MagickImage (通过 Magick.NET )支持非常多种常见的图像格式。ImageMagick 本身是一个功能强大的图像处理工具,支持超过 100 种 图像格式。以下是一些常见的图像格式,MagickImage 支持的主要格式:

常见的图像格式:

  1. 位图图像格式

    • .bmp (Bitmap)

    • .gif (Graphics Interchange Format)

    • .png (Portable Network Graphics)

    • .jpg.jpeg (JPEG)

    • .tiff (Tagged Image File Format)

    • .webp (WebP)

    • .heif / .heic (High Efficiency Image Format)

  2. 矢量图像格式

    • .svg (Scalable Vector Graphics)

    • .eps (Encapsulated PostScript)

    • .ai (Adobe Illustrator)

    • .pdf (Portable Document Format)

    • .pdfx (PDF/X formats)

  3. RAW 图像格式

    • .cr2 (Canon RAW 2)

    • .nef (Nikon RAW)

    • .dng (Digital Negative)

    • .orf (Olympus RAW)

    • .rw2 (Panasonic RAW)

    • .arw (Sony RAW)

  4. 动画图像格式

    • .gif (Animated GIF)

    • .apng (Animated PNG)

    • .webp (Animated WebP)

    • .mng (Multiple-image Network Graphics)

  5. 特殊图像格式

    • .ico (Windows Icon)

    • .cur (Windows Cursor)

    • .pdf (Portable Document Format)

    • .xpm (X PixMap)

    • .tga (Targa)

    • .hdr (High Dynamic Range Imaging)

相关推荐
波波0073 小时前
C# 15 重磅新特性: 带标签 break 与 continue:重新定义嵌套循环控制流
服务器·前端·c#
wujian83116 小时前
怎么用千问生成word文档:从「格式崩」到「一键过」,AI导出鸭打通最后半厘米
人工智能·ai·c#·word·豆包·deepseek·ai导出鸭
zlinear数据采集卡7 小时前
D223上位机C#开发实战:从帧解析到波形显示的完整实现
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
唐青枫9 小时前
别把 ImmutableArray 当成只读 List:C#.NET 不可变数组深入详解
c#·.net
zlinear数据采集卡11 小时前
D223 ADC数据处理流水线:从原始采样值到工程单位的完整转换链
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
花落人散处14 小时前
CDiskClean 开发历程 —— 文件清理_目录树解析实现方案参考
c#
离陌在学C#15 小时前
C# 泛型:从基础到高级应用
开发语言·c#
Vertira15 小时前
C# 与 OpencvSharp 编程[基础目录]
c#
格林威17 小时前
多相机并行采图最佳实践:Task.WhenAll + 异常处理 + 资源释放
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·机器视觉