在osx下导入imagemagick

时间:2013-01-21 13:27:14

标签: macos imagemagick screenshot

我使用import来鼠标选择一个截图,在linux下它可以与import <filename>一起使用。

在osx下(snowleopard),相同的命令没有任何效果:终端保持光标闪烁,鼠标不改变形状,表明我选择了一个区域,我只能^ C它。

改为使用它:

import -window root a.png

效果很好。

任何提示?

1 个答案:

答案 0 :(得分:1)

对于X11,Imagemagick和Snow Leopard来说,这是一个古怪的事情。 import命令挂起并等待,直到您调用X display server。如果您没有X11 "XQuartz"正在运行或安装,您将体验到与观察相同的行为。以下是在OS X的显示管理器上运行的X服务器的一些示例。

 
convert x: -window root desktop # same as import

X11 desktop on Snow Leopard

请注意,您可以从X服务器看到正在运行的xlogo应用程序,但像素垃圾会形成非X显示管理器。

要捕获单个窗口,我需要运行以下命令,切换到X应用程序,最后选择一个窗口。

convert x: app.png 

X application

提示:

为什么要使用Imagemagick?雪豹附带screencapture实用程序。结帐manual。只需更新您的脚本即可确定要使用的实用程序。

IMPORT_BIN=$(which screencapture)
if [ -z "$IMPORT_BIN" ]; then
  # Not on OS X, use IM's import command
  IMPORT_BIN="import"
else
  # On OS X, don't trust X display system
  IMPORT_BIN="$IMPORT_BIN -wS" 
fi
$(IMPORT_BIN) filename.png

在大多数情况下,大部分问题已经解决。确保您拥有最新版本的X11,Imagemagick,并开始制定从OS X 10.6迁移的计划。