- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的应用程序允许用户上传图像并将它们发送到服务,然后将其转换为另一种格式并发回。我们正在添加对 SVG 文件格式的支持,我遇到了从字节数组读取文件的问题。
问题是,当我使用 SVG Stream 对象初始化 MagickImageInfo 对象时,出现以下错误:
“此图像格式没有解码委托(delegate)''@error/blob.c/BlobToImage/355”
如果我改为创建一个 MagickImage 对象并为它提供一个 MagickReadSettings 实例,我在其中将 Format 显式设置为 SVG,我就玩弄了它,并且能够克服这个错误。
核心问题是 MagickImage 代码需要提示它是 SVG 时的文件类型。对于其他文件类型,它似乎能够推断出它是什么类型的文件。但是,虽然我能够为 MagickImage 类提供文件的格式,但 MagickImageInfo 类没有任何参数可以让我提示文件类型。
一种可能的解决方案是将文件写入磁盘,然后让 MagickImageInfo 类从磁盘读取文件,但我真的不想这样做,因为它增加了服务的复杂性并使其依赖于磁盘写访问。
相关代码:
工作代码:
var readSettings = new MagickReadSettings() { Format = MagickFormat.Svg };
using (MagickImage image = new MagickImage(stream, readSettings))
{
image.Write("C:\test"); // Actual code doesn't write to disk
}
MagickImageInfo info = new MagickImageInfo(stream);
最佳答案
您似乎发现了一个缺失的功能。我在这里找到了你的帖子,并为 MagickImageInfo
添加了额外的重载构造函数。以下将在 Magick.NET 7.0.3.9 及更高版本中可用:
var readSettings = new MagickReadSettings() { Format = MagickFormat.Svg };
MagickImageInfo info = new MagickImageInfo(stream, readSettings);
关于svg - 如何使用 MagickNet 从流中读取 SVG 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40746705/
我正在尝试编译 MagickNet 的工作拷贝使用来自 ImageMagick 和 MagickNet 库的源代码的类库 (DLL)。 我无法从创建者的主页获取 MagickNet 源文件的拷贝,因为
我的应用程序允许用户上传图像并将它们发送到服务,然后将其转换为另一种格式并发回。我们正在添加对 SVG 文件格式的支持,我遇到了从字节数组读取文件的问题。 问题是,当我使用 SVG Stream 对象
我正在使用 MagickNet用于我的 ASP.NET C# 项目中的图像处理。我的问题是,我正在上传具有透明度的 PNG 图像,当我将其转换为 JPEG 时,我得到的是带有一些白点的黑色背景,而不是
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
我是一名优秀的程序员,十分优秀!