更改工作目录以使用 RStudio 中降价文档中的 ImageMagick 命令

Change working directory to use ImageMagick command from a markdown doc in RStudio

我想在 RStudio 的 R-markdown 文件中使用 ImageMagick 中的 "montage" 命令将一个文件夹中的两个图像合并为一个图像。我会使用 magick 库的 image_montage 函数,但我找不到如何更改首选项(例如,几何、瓷砖等 - http://www.imagemagick.org/Usage/montage/)。

我可以使用终端在 RStudio 之外执行此操作,方法是导航到包含图像的文件夹,单击地址栏,键入 cmd - 这表明我在正确的文件夹中:

C:\Users\JaneDoe\Desktop\test>

然后在命令中 window:

montage left.jpg logo.jpg new.jpg

这会在该文件夹中创建一个名为 "new.jpg" 的新图像。

但是,我正在努力使用 system 命令从 RStudio 中的降价块中执行相同的操作。

显然我无法更改工作目录 - 假设我的项目目录是 "C:/Users/JaneDoe" - 我无法在降价块中将其更改为 "C:\Users\JaneDoe\Desktop\test"。

我尝试了以下代码的多次迭代,试图让它在 RStudio 中运行,但没有成功。 我做错了什么? 注意:我的 "real" 文件路径 中是否有 space。

system("cd C:\Users\JaneDoe\Desktop\test && montage left.jpg logo.jpg new2.jpg")

不幸的是,我对 RStudio 的了解还不足以添加更多内容。但是了解 ImageMagick 以及 PHP exec() 和 Python 子进程之类的东西,合乎逻辑的做法是提供图像的完整路径,而不是尝试更改目录。所以这样的事情应该有效,如果你的工作目录在 RStudio 中设置为 "C:\Users\JaneDoe":


系统("montage Desktop\test\left.jpg Desktop\test\logo.jpg Desktop\test\new2.jpg")

在其他软件(例如 AppleScript)中的一些类似系统的调用中,您可能必须添加 montage 的完整路径,因为这些其他工具可能不会使用与您的系统相同的 PATH 环境变量,但 RStudio 提供在这种情况下,您的工作区到系统调用。