【发布时间】:2017-06-03 15:00:04
【问题描述】:
我在 32 位计算机上使用 Windows 7。我已经安装了 ImageMagick-7.0.4-4-Q16-x86-dll.exe。我在 Environmetal 变量的路径中添加了 ImageMagick 的路径。在命令提示符中使用 convert --version 可以正确显示 ImageMagick(但当我使用 system() 在 R 中运行它时却没有)。现在,我尝试使用以下 R 代码(取自另一个 stackoverflow 帖子)制作一个动画 gif 文件:
library(animation)
ani.options('C:/Program Files/ImageMagick-7.0.4-Q16/convert.exe')
dir.create("examples")
setwd("examples")
png(file="example%02d.png",width=200, height=200)
for(i in c(10:1,"GO!")){
plot.new()
text(.5,.5,i,cex=6)
}
dev.off()
目前还没有显示错误消息。但是当我写下下面这行时:
system("convert -delay 80 *.png example_1.gif")
它会抛出以下错误:
无效参数 - 80 警告信息: 运行命令“convert -delay 80 *.png example_1.gif”的状态为 4
在这之后,我运行了以下命令
system("convert --version")
它会抛出以下错误:
驱动器规格无效 警告信息: 运行命令“convert --version”的状态为 4
我试图通过在管理员模式下运行 RStudio 来解决这个问题,但没有成功。
【问题讨论】:
-
您确定您实际使用的是 ImageMagick 命令,而不是 Windows 系统工具吗?它们具有相同的名称。
-
我不确定我使用的是 ImageMagick 命令还是 Windows 系统工具。我怎么知道?
-
我刚刚打开了我的 Windows 机器 - 您肯定使用的是 Windows 命令,而不是 imageMagick 命令。这应该对您有所帮助:imagemagick.org/Usage/windows/#convert_issue
-
要知道您使用的是哪个,请使用
Sys.which("convert")。我的猜测(同意@Chrisss)是它会返回类似"C:\\WINDOWS\\SYSTEM32\\convert.exe"的东西。convert不会做任何永久性的事情,例如 “将 FAT 卷转换为 NTFS”(参考:Windows 上的system("help convert")),这是一件好事。
标签: r imagemagick