c# - 无法使用 Mono 创建/修改 gif

标签 c# image-processing mono gif

我正在尝试将单元测试添加到 .Net ImageProcessor 库:https://github.com/cosmo0/ImageProcessor/tree/tests

我正在我的 Mac 上开发 Xamarin/Mono。 Mono 似乎在处理 gif 动画图像方面存在一些问题。
对于我的单元测试,我有一堆测试图像,我加载它们并在每个图像上运行转换。每次我应用滤镜(例如亮度)时,它都会在尝试重新创建图像时失败。

失败行在这里:https://github.com/cosmo0/ImageProcessor/blob/tests/src/ImageProcessor/Imaging/Formats/GifFormat.cs#L95

它只是一个 Image.FromStream(stream);。我猜流是错误的;我试图将它保存到文件中,但图像查看器确实无法读取该文件。奇怪的是,在 Windows 上,它似乎完美地通过了测试:https://ci.appveyor.com/project/cosmo0/imageprocessor

知道我可以做什么来检查流或修复它吗?

谢谢!

最佳答案

调用前尝试重置流

Image.FromStream(流)

像这样:

stream.Seek(0, SeekOrigin.Begin);

关于c# - 无法使用 Mono 创建/修改 gif,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24470312/

相关文章:

c# - MaxLength + Asp.net Web API - 错误

c# - 如何将依赖项传递给 Serilog Enricher?

image-processing - 我如何计算 scikit 图像或 mahotas 中的黑色空间数量?

algorithm - 从彩色背景中检测黑点

algorithm - Lowe 如何计算他的 SIFT 算法的 “repeatability”?

asp.net-mvc-3 - Mono 上的 NHibernate 运行 ASP.NET MVC 3 Web 应用程序

linux - 使用 mono/xbuild 编译 VS2015 应用程序时遇到问题

c# - 如何设置 WPF 应用程序的默认字体?

c# - FakeItEasy 属性未更新

c# - 如何修复 int.Parse 中的 ArgumentNullException?