问题标签 [magick.net]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
644 浏览

c# - Magick.NET Image Resize 结果为 0 字节文件

我正在尝试使用 Magick.NET 调整图像大小,但在调用该Resize函数后,FileSize属性读取为0. 我究竟做错了什么?

0 投票
1 回答
2193 浏览

c# - MemoryStream 到 BitmapImage

我很难转换MemoryStreamBitmapImage. 关于类似情况有很多问题SO,但是在尝试了所有这些之后,我一直无法解决这个问题,所以我求助于你。请注意,我正在使用Magick.NET(ImageMagick.NET) 并且Tessnet2-- 这就是其中的一些代码。

我使用Bitmap类来完成 Magick.NET 和 Tessnet2 中的大部分工作。 BitmapImage用于显示目的。

首先,我加载 PDF 并从其第一页中提取裁剪的位图:

那是我将位图保存到MemoryStream. 一旦我MemoryStream加载完毕,我就开始使用它。我实例化 a Bitmap,以便我可以将它用于Tessnet2相关工作,然后尝试实例化 a BitmapImage

这是我遇到问题的地方。没有那个DisplayImage块,程序运行良好,我只是没有得到显示的图像。我什至可以毫无问题地将Bitmap( TargetImage) 保存到文件中。但是,有了DisplayImage块,我得到System.NullReferenceException

我无法确定它发生的确切位置,因为该ImageStream物体在检查时看起来“很好”。它包含数据并且位于位置 0。如果我尝试将其关闭或对其执行任何操作,在将其分配为StreamSourceto之后DisplayImage,我会null在尝试执行此类操作的行上遇到异常。我什至尝试创建两个不同的流,看看是否是问题所在;但是,我得到了完全相同的行为。调试这是一种痛苦,考虑到它不指向任何特定的行。MemoryStream这和之间显然存在问题BitmapImage。有没有可能两者之间存在某种格式/转换问题,但MemoryStreamBitmap这种特殊情况下却没有?

我尝试了文件路径,将其保存MagickImage到文件中并将其加载到其中BitmapImageUri它完美地工作;但是,我希望能够在内存中执行此操作。顺便说一句,将位置设置0为 MemoryStream 似乎并没有影响Bitmap(正确加载)或BitmapImage(同样的例外)。

我目前使用的临时修复是制作DisplayImage一个BitmapSource,而不是BitmapImage

0 投票
2 回答
1195 浏览

c# - ImageMagick - 为灰度图像设置级别

我用 C# 编写程序,但希望背景中的 C++ 和 C# 完全相同。我想要什么 - 拍摄灰度图像并分离超过 127 和低于 17 的颜色以分离图像。如果我只是得到“白色”颜色并以编程方式将它们从范围(127-255)拉伸到(0-255),比如

那么这里将不是平滑间隔。我的意思是,127 转换为 0,但 128 转换为 2,颜色 1、3、5、... 不存在。

那是带有 alpha 的原始图像:image original

那是带有“提取的白色”的图像:图像原始

那是带有“提取的黑色”的图像:snorgg.ru/patchwork/tst_black.png。

我不清楚它是如何实现的,所以示例代码如下:

提前感谢))

0 投票
1 回答
3442 浏览

c# - Magick.net 比较

我正在使用 Magick.NET (Q16-x64 v7.0.0.0011) 来比较图像。当我使用 ImageMagick 的命令行版本并在没有任何特殊选项的情况下进行比较时,它会给出一个图像,其中相同部分显示为浅色背景,差异显示为红色。我试图在 Magick.NET 中复制这种行为。我尝试了以下代码:

我最终得到的是一个只显示差异的文件。如果您使用“-compose src”运行命令行版本,这似乎是您会得到的。不同之处在于 SetHighlightColor 设置为什么,而图像的其余部分是根据 SetLowlightColor 的纯色。我尝试了几种不同的文件和文件格式,结果相同。

在以下 SO 问题的答案中参考“图解示例”: 区分图像 我得到的是第一个示例。我想要的是最后一个例子。

任何帮助将不胜感激。

0 投票
0 回答
586 浏览

imagemagick - 切片图像,然后在 Magic.NET 中将切片组合成一个图像

我有一个图像,我想分割这个图像并在每个分割中添加一些额外的图像,然后将所有图像组合成一个图像。所以我写了这个代码:

我有 8 个拆分,但在方法 test4.png 的末尾是我的图像的最后一个拆分。我需要一种方法,每个拆分在一个图像中彼此并排插入。

0 投票
1 回答
3077 浏览

c# - 使用 Magick.NET 创建多页 TIFF

我正在使用 Magick.NET 并尝试创建多页 TIFF 文件。我的输入是一个 PDF 文件。但是将结果写入 MemoryStream 或将其作为字节数组获取会导致错误:

iisexpress.exe:在写入目录之前刷新数据时出错。`TIFFWriteDirectorySec'@error/tiff.c/TIFFErrors/551

但是当我将结果写入硬盘上的文件时,没有错误并且文件很好。

这是我的代码:

0 投票
1 回答
1083 浏览

magick.net - 是否可以将具有 Alpha 通道的 Windows 位图转换为 MagickImage?

使用 Magick.Net,是否可以(在内存中)将具有 Alpha 通道的 Windows 位图转换为 MagickImage?当我尝试以下操作时,.net 格式 Format32bppPARgb 和 Format32bppARgb 失败,但适用于 Format24bppRgb。错误消息是“此图像格式‘XWD’没有解码委托”。

0 投票
0 回答
889 浏览

c# - 如何使用 Magick.NET 最大限度地快速处理图像的每个像素?

我使用 lib Magick.NET 来访问图像文件。我需要处理图像上的每个像素:

但是,访问图像像素的颜色 (12000 X 16000) 需要 5 分钟以上......使用 lib Magick.NET 处理图像的所有像素的速度有多快?

0 投票
1 回答
784 浏览

image - 使用 Java API (JMagick) 或 C# API (Magick.Net) 在 ImageMagick 中将图像与度量 PSNR 进行比较

您能帮我使用 Java API (JMagick) 或 C# API (Magick.Net) 在 ImageMagick 中实现与度量 PSNR 的图像比较。

命令是:

我试图在这里找到关于 JMagick 的文档:http : //www.jmagick.org/jmagick-doc/ 和关于 Magick.NET 的内容:http://magick.codeplex.com/documentation没有结果。

谢谢你的帮助。

0 投票
1 回答
1409 浏览

asp.net - System.UnauthorizedAccessException:访问被拒绝。ImageMagick (Magick.NET)

我正在使用 Magick.NET-AnyCPU,它在本地运行良好。当我部署到我的服务器时它不起作用,并且我收到一个异常记录:

在做了一些挖掘之后,似乎库的 AnyCPU 版本在启动时尝试从 Temp 目录动态加载它需要的版本。任何有关如何解决此问题的帮助将不胜感激。我试图更新权限,但很难说这是否是原因。我试图使用该库的 x64 版本,但后来我什至无法构建我的项目,因为它引用了我猜是 x86 的系统框架。