如何通过ImageMagick覆盖Windows的转换命令?

时间:2010-12-19 04:21:22

标签: windows imagemagick

Windows 中,名为convert的命令用于转换文件系统。当您键入convert时,它会要求您指定文件系统。

ImageMagick 中,convert命令用于图像处理。

问题是,即使在为ImageMagick convert设置环境变量之后,也不会调用该工具。它只调用Windows convert命令。如何覆盖?

5 个答案:

答案 0 :(得分:27)

这是一个老问题,但目前使用ImageMagick 7的解决方案是使用" magick"命令代替"转换"。

答案 1 :(得分:4)

这是一个老问题,但我今天遇到了这个问题,这是我在Windows 7中的解决方案。

Windows convert.exe位于文件夹C:\Windows\System32中,因此您必须通过将ImageMagick路径(例如C:\Libs\ImageMagick-6.8.8-4)放在加载System32的路径之前来修改Windows PATH变量(即%SystemRoot%\System32)。

这将导致所有ImageMagick可执行文件优先于任何类似命名的系统可执行文件,这些文件应该可以执行您想要的操作,但可能会导致意外行为。

此外,当您要使用系统convert.exe时,您必须指定完整的路径名,例如C:\Windows\System32\convert.exe

答案 2 :(得分:4)

重命名ImageMagick convert.exe对我来说效果很好。

我不喜欢每次使用完整路径,并且在工作PC上我不可能更改系统PATH变量。

convert.exe重命名为imgconvert.exe后,无需进行其他更改。您现在可以在命令行的任何位置使用新命令,而不会将其与内在的Windows文件系统convert混淆


编辑:从7.0版开始,该命令现在为magick.exe,不再与任何本机Windows命令发生冲突。因此,如果可能的话,下载最新版本也可以解决问题。

答案 3 :(得分:3)

您是否已注销并登录?

或者通过提供完整路径指定Imagemagick的转换

答案 4 :(得分:1)

在powershell中,您可以运行以下命令:$env:Path = "C:\path-to-convert\;$env:Path"

现在找到了imagemagick convert exe,因为它首先出现在路径中。