问题标签 [graphicsmagick]

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 投票
3 回答
2002 浏览

image - 需要帮助了解 ImageMagick/Graphicsmagick -colors 选项

我正在尝试以编程方式减小(有损)PNG 和 GIF 文件的文件大小。作为其中的一部分,我需要减少图像中的颜色数量。我不想将所有图像减少为单一颜色值,所以我正在做的是;然后获取图像中唯一颜色的数量;将此数字除以 2 可将颜色数量减少一半。

问题是这不起作用。使用 ImageMagic 太慢了,并且不会减小文件大小,除非图像具有几百种独特的颜色。无论原始图像中有多少颜色,使用 GraphicsMagick 始终会产生低于 255 的唯一颜色值。GraphicsMagick 的另一个问题是,如果图像中有任何透明像素,它会用透明替换丢失的颜色。

任何帮助将不胜感激,谢谢。

0 投票
3 回答
16976 浏览

compression - 哪些转换选项(ImageMagick 或 GraphicsMagick)会产生最小(文件大小)的 PNG?

ImageMagick 创建了一些非常大的 PNG。GraphicsMagick 要好得多,但我仍在寻找与 convert 一起使用的最佳选项,以获得最小的文件大小 png。

我这里有一个带有小文件大小的大 png,并且通过 IM convert 传递它我无法达到那个文件大小,更不用说让它变小了。使用 GM convert 我可以让它稍微小一点,但我正在寻找改进,通常是针对我遇到的任何图像。

哪些转换选项会产生最小的 PNG 文件大小?

(是的,我对 OptiPNG、PNGOUT 和 Pngcrush 很熟悉。但我所追求的东西在我碰巧在的每个 *nix 盒子上都可以毫无疑问地使用。)

0 投票
1 回答
1356 浏览

com - 有什么方法可以区分 ImageMagick 和 GraphicsMagick COM 对象吗?

我已经安装了 ImageMagick 和 GraphicsMagick。我可以从命令行自由使用它们,因为它们具有不同的命令命名空间(所有 ImageMagick 命令都是gmGraphicsMagick 命令的参数)。从命令行:

  • convert ...使用 ImageMagick
  • gm convert ...使用 GraphicsMagick

这一切都很好。但是,似乎两个程序的 COM 对象被相同地调用:

  • Set img = CreateObject("ImageMagickObject.MagickImage.1")创建一个 ImageMagick 对象
  • Set img = CreateObject("ImageMagickObject.MagickImage.1")创建一个 GraphicsMagick 对象...难以置信,但这直接来自 GraphicsMagickSimpleTest.vbs示例脚本

如何指定要使用的 COM 对象?还是我运气不好?

编辑:我刚刚比较了 ImageMagick 和 GraphicsMagick 中包含的示例 VBS 脚本,它们都名为 SimpleTest.vbs。事实证明,它们比文件名有更多的共同点。它们几乎是相同的文件。这本身可能意义不大(毕竟,GM 是从 IM 派生的),但我开始怀疑 GraphicsMagick 是否真的有一个 COM 对象,或者它们是否只是将 ImageMagick 的 COM 对象包含在他们的 Windows 二进制文件中。

0 投票
2 回答
3718 浏览

image-processing - GraphicsMagick 是否具有与 ImageMagick 'convert -auto-orient' 选项等效的功能?

我想搬到 GraphicsMagick,因为我只是调整大小和旋转照片,而且我听说它要快一点。但它不直接采用 -auto-orient 选项。有没有另一种方法可以有效地做到这一点?Imagemagick convert -auto-orient 选项将读取 EXIF 方向标签,相应地旋转,然后将 EXIF 标签重置为方向=1。

见:http ://www.imagemagick.org/script/command-line-options.php?ImageMagick=80iu7ek6jb638dl2kin7n3v4d5#auto-orient

0 投票
2 回答
498 浏览

c++ - 如何获取graphicsmagick的头文件

我正在使用 QT 开发图像处理工具。我是 QT 和 graphicsmagick(magick++) c++ 库的新手。我计划使用 c++ 作为我的开发语言。谁能建议我如何获取 graphicsmagick 头文件?

0 投票
2 回答
883 浏览

php - 调试从 PHP 调用 GraphicsMagick 的想法

我编写了一个 PHP 小类,它基本上gm convert通过 exec() 从 GraphicksMagick 1.3.12 调用以调整图片大小。来自实时站点的用户正在报告问题,我也能够在我的开发框中重现一些问题。

相关代码如下所示:

实时站点在 PHP/5.2.9-2 下运行,开发站点在 PHP/5.3.0 下运行。两个盒子都运行 Windows Server 2003、Apache/2.2 和 GraphicsMagick 1.3.112 Q16。

在实时站点中,我遇到了 return code 异常1。在开发站点中,我可以随机看到一个cmd.exe进程如何永远保持空闲,使用 0% CPU 直到我终止任务。

鉴于它是一个外部工具,我已经没有关于下一步做什么的想法了。如何解决此问题?

更新#1

我在一段不相关的代码中修复了一个小错误,并且我正在登录到一个文件,每一步我都能想到(包括gm.exe的活动-debug All),但我无处可去。PHP 到达 exec() 调用并 gm.exe保持永远运行,什么也不做。

更新#2

我已经通过两种方式执行了确切的命令。日志文件中的回显显示:

Process Explorer显示的进程属性中,命令行如下所示:

我可以手动运行这两个命令,尽管第二个命令只能从 Start->Run (而不是从命令提示符)运行,除非我双引号整个表达式

无论如何,我有理由确定该命令会按预期执行,因为我确实得到了调整大小的图像,并且 gm 生成的调试日志看起来很正常。最后一行总是看起来像这样,当它停止时,当它没有时:

13:53:52 0:03 3.016u 2344 module.c/UnloadModule/2180/配置:卸载“JPEG”模块...

我怀疑有什么东西会阻止进程在完成后退出:病毒扫描程序、shell 扩展或其他东西......

整件事开始变得不值得修复。我会考虑切换到 ImageMagick 或普通的 PHP 函数图像。

更新#3

有趣...我已经切换到 ImageMagick 并且遇到了同样的问题!而且我总是可以重现它:我只需要打开两个浏览器选项卡。

很明显,我忘记了如何从 PHP 运行命令。我想我会尝试用纯 PHP 代码调整图片的大小。

0 投票
1 回答
649 浏览

command-line - Graphicsmagick 如何将 32 位图像强制转换为 24 位位图

我想强制将所有输入图像转换为 24 位 bmp 格式。我应该在 gm 命令行中添加哪些参数?

gm convert input.png -resize 1920x1080 out.bmp

0 投票
1 回答
409 浏览

png - graphicsmagick 将“一些”PNG 文件的大小翻倍

使用 GraphicsMagick 读取 PNG 文件并以不同的名称将其写入会导致文件大小增加一倍以上。这只发生在一些 PNG 文件上,我不知道是什么原因造成的。

示例问题 PNG:http ://www.google.co.in/logos/2011/verne-hp-3.png

我已经尝试了从禁用不透明度通道到使用不同的压缩类型到更改隔行扫描类型的所有方法,但没有什么能帮助我理解导致此问题的原因。

如果有人对可能导致此问题的原因有任何建议,我们将非常欢迎您的帮助。

谢谢你。

0 投票
1 回答
202 浏览

image-processing - 告诉 GraphicsMagick 在写出文件时为 alpha 值保留 tRNS 块

我正在使用 GraphicsMagick 来减小 PNG 图像的文件大小。一些 PNG 文件的 alpha 值在 tRNS 块中传达,以优化其文件大小。问题是 GM 正在将这些文件写成 RGBA PNG,这从根本上增加了它们的文件大小,因为需要更多的空间来存储 alpha 通道。

有谁知道如何指定 GraphicsMagick 甚至 ImageMagick 使用原始 alpha 编码而不是默认为 RGBA?

0 投票
2 回答
1823 浏览

imagemagick - Creating multiple thumbnails in ImageMagick / GraphicsMagick

I'm currently writing a shellscript for Bash, that will create different size thumbnails for some rather massive amounts of large images.

I was wondering if it's possible to get GM/IM to create multiple sizes of thumbs in one run, to avoid loading the same image over and over again to create different thumbnails, thus saving memory and time in executing the script ?