写点什么

针对.NET Core 的图像类库

  • 2017-02-07
  • 本文字数:748 字

    阅读完需:约 2 分钟

开发人员在试着使用.NET Core 进行应用开发时可能会发现其中一个缺点,那就是缺乏基于图像的 API。在那些较流行的 API 中有值得称道的 System.Drawing,但在.NET Core 中却无法使用它,因为它依赖于 Windows GDI+ 接口。幸运的是,许多开发者社区已经投身其中,去开发支持.NET Core 的图像类库。

微软的 Bertrand Le Roy 提供了一个不同类库的调查比较,以考量它们的适合性,他的初步调查为比较以下四个实现的输出和性能提供了很有价值的参考依据:

  • CoreCompat.System.Drawing

  • ImageSharp

  • Magick.NET

  • SkiaSharp

开发人员使用已经依赖 System.Drawing 的代码将发现 CoreCompat.System.Drawing 类图很有帮助,因为它最容易替换。然而,应注意当在 Windows 上运行时它会遇到死锁问题。

ImageSharp 是一个由纯托管代码编写的新库。这使它具有非常好的跨平台支持能力,未使用原生代价的是牺牲了较高的性能。

Magick.NET 是针对 ImageMagick 类库的基于.NET 的一个包装器。它提供了大量的功能,而且 Le Roy 认为其产出物具有最好的图像质量,但当前仅支持 Windows 上的.NET Core。Magick.NET 的作者 Dirk Lemstra 想要提供一个自身跨平台的 ImageMagick,以支持其他的平台。

SkiaSharp 有一个针对谷歌 Skia 跨平台 2d 图像类库的 .NET 包装器,然而这不支持.NET Core。Miguel de Icaza 为了提供.NET Core 支持需要克服这一挑战。

在Le Roy 的结论中,哪个类库最合适实际上取决于你的需求。如果你的应用可以容忍潜在的死锁问题,那么CoreCompate.System.Drawing 是更为高效的一个选择。Magick.NET 在质量和文件类型的支持上最好。最后一个ImageSharp 从纯托管代码中得到了好处,但其性能要落后于其他的类库,由于它正在积极地开发之中,所以在不久的将来可能会得到进一步优化。

查看英文原文 Image Libraries for .NET Core

2017-02-07 18:004185

评论

发布
暂无评论
发现更多内容

边缘云原生操作系统的设计与思考

火山引擎开发者社区

2025交易所开发突围:AI增强型撮合引擎与零知识证明跨链架构

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

新书上线 |《零门槛AIGC应用实战——Serverless+AI 轻松玩转高频AIGC场景》免费下载

阿里巴巴云原生

阿里云 云原生

Cisco ASAv 9.23.1 - 思科自适应安全虚拟设备 (ASAv)

sysin

ASAv

区块链加密技术公司DApp开发指南:从零开始到上线

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

WebGL开发VR软件的测试

北京木奇移动技术有限公司

VR开发 软件外包公司 webgl开发

人工智能丨Manus现象:一场AI流量的狂欢,还是一场生产力革命?

测试人

人工智能

WebGL开发VR软件的技术难点

北京木奇移动技术有限公司

VR开发 软件外包公司 webgl开发

AI驱动零信任:从人机信任到智能信任的跨越

权说安全

【FAQ】HarmonyOS SDK 闭源开放能力 —Map Kit(6)

HarmonyOS SDK

人工智能丨AI质量攻坚战:2025年测试工程师的生存法则

测试人

人工智能

扣子实践 | 汽车线上营销助手:功能实现与效果分析

火山引擎开发者社区

血亏60%库存?你的"AI"可能正在吞噬零售利润

第七在线

智能制造:流程管理简析

积木链小链

数字化转型 流程管理 智能制造

字节跳动冯佳时:大语言模型在计算机视觉领域的应用、问题和我们的解法

火山引擎开发者社区

满满干货,选手必读!4C大赛大数据主题赛国赛一等奖选手参赛经验分享完整实录已整理!

ModelWhale

人工智能 大数据 计算机 比赛 中国大学生计算机设计大赛

vue2和vue3的响应式原理有何不同?

威哥爱编程

JavaScript html js Vue3 vue2

Cisco Secure Firewall Management Center 7.7.0 - 思科防火墙管理中心

sysin

FMC

内容风控平台对比评测:从安全到合规管控

易成研发中心

FlowGram 简介:开源前端流程搭建引擎

字节跳动开源

低代码平台 可视化开发 分层扩展 IOC依赖注入 AI工作流

Cisco Nexus 9000v Switch, NX-OS Release 10.4(5)M - 虚拟化数据中心交换机

sysin

nexus

下一代代币技术白皮书:合规化智能合约与零知识证明隐私协议

区块链软件开发推广运营

交易所开发 公链开发 代币开发

抢占红海市场,从云等保做起

黑龙江陆陆信息测评部

演讲实录|分布式 Python 计算服务 MaxFrame 介绍及场景应用方案

阿里云大数据AI技术

云计算 大数据 分布式 云原生 MaxCompute

功能更新|虚拟项目——效能度量中的数据胶水

思码逸研发效能

研发效能 研发效能度量 研发效能管理 研发效能度量研发效能管理

Cisco ACI Simulator 6.0(9c)M - ACI 模拟器

sysin

ACI

人工智能助力家庭机器人:从清洁到陪伴的智能转型

天津汇柏科技有限公司

人工智能 机器人

Trae 开发工具与使用技巧

威哥爱编程

编程工具 AI编程 AI工具 Trae

针对.NET Core的图像类库_.NET_Jeff Martin_InfoQ精选文章