我通过 MacPorts 安装了 ImageMagick,但不幸的是,它是使用“--without-lcms”和“--with-lcms=no”安装的,尽管它在网站上将 lcms 列为依赖项:http://www.macports.org/ports.php?by=name&substr=imagemagick据我所知,没有 lcms 变体可以启用此功能。顺便说一下,可以在此处找到 lcms:http://www.littlecms.com/
除了 MacPorts 之外,我不知道还有其他任何简单的方法来安装 ImageMagick。
另外,作为背景信息,从我在互联网上读到的内容来看,lcms 是使用 ImageMagick 在颜色配置文件之间转换图像的最佳方式,例如从 CYMK 转换为 RGB,以使它们与网络兼容(好吧,与 IE 兼容)。我尝试使用不带 lcms 的 ImageMagick 使用 -colorspace 和 -profile 选项在颜色配置文件之间进行转换,但没有成功。
无论如何,任何有关安装支持 lcms 的 ImageMagick 或转换图像颜色配置文件的其他方法的帮助都会受到欢迎。谢谢!
答案1
如果 ImageMagick 端口的最新版本似乎包含 lcms,那么我很惊讶它能够在没有它的情况下构建。
首先,确保您的端口文件是最新的。运行sudo port selfupdate
然后sudo port upgrade ImageMagick
。您可能有一个未启用的旧版本的端口文件。
如果这不起作用,sudo port uninstall ImageMagick
请运行sudo port -d configure ImageMagick
并查看日志中关于为什么被排除的提示。
如果看起来 portfile 中的某些内容导致无法构建,您可以在运行之前对其进行修改以更改其使用的选项。运行port file ImageMagick
将显示 portfile 的路径。如果您编辑该文件然后运行,sudo port install ImageMagick
它将使用包含您更改的 portfile。请注意,当您sudo port selfupdate
再次运行时,它将覆盖您的更改。
如果经过所有这些,它仍然不起作用,我可能需要查看输出sudo port -d install ImageMagick
并查看是否出现任何异常。
答案2
也许 sips 对你有帮助?它随 MacOS 提供(请参阅 man sips)。
另外两个选项:(a) 使用芬克而不是 MacPorts。(b)自己构建,无需 MacPorts。如果您满足构建它的所有依赖项,这应该不会太难。
答案3
如果您在 MacPorts 中使用最高版本 ImageMagick 6.5.9-0,它默认禁用 lcms,但它有一个 lcms 变体。
您可以通过查看6.5.9-0 端口文件:
variant lcms description {Support the Little Color Management System} {
depends_lib-append \
port:lcms
configure.args-delete \
--without-lcms
configure.args-append \
--with-lcms
}
你可以从中看到6.5.9-3,已添加 lcms 支持:
ImageMagick:
- update to 6.5.9-3
- remove lcms variant; now always turn on Little Color Management System support (requested by nox)
- simplify how -arch flags are removed from *-config scripts and do so always, not just when building universal
因此,最好的方法是更新 MacPorts 及其端口文件:
sudo port -d selfupdate
sudo port -R upgrade ImageMagick