在使用自制软件安装的 Mac 上使用 Image::Magick 注释图像

Posted

技术标签:

【中文标题】在使用自制软件安装的 Mac 上使用 Image::Magick 注释图像【英文标题】:Annotating images with Image::Magick on mac installed with homebrew 【发布时间】:2018-06-21 14:19:56 【问题描述】:

我在我的 Mac 上安装了 ImageMagick 软件和自制软件,我正在使用 Image::Magick Perl 模块。我试图弄清楚如何用一些文本注释图像。我没有尝试过:

$error = $image->Annotate(font => 'Courier', gravity => 'North', pointsize=>100, fill=>'black', text => 'blah blah');

$error = $image->Annotate(font => '/Library/Fonts/Impact.ttf', gravity => 'North', pointsize=>100, fill=>'black', text => 'blah blah');

我想它找不到字体,但可能还有其他问题。没有错误被抛出。我已经用自制软件安装了 ghostscript,但这没有帮助。

identify -list font 的部分输出

  Font: Times-BoldItalic
    family: Times
    style: Italic
    stretch: Normal
    weight: 700
    glyphs: /usr/local/share/ghostscript/fonts/n021024l.pfb
  Font: Times-Italic
    family: Times
    style: Italic
    stretch: Normal
    weight: 400
    glyphs: /usr/local/share/ghostscript/fonts/n021023l.pfb
  Font: Times-Roman
    family: Times
    style: Normal
    stretch: Normal
    weight: 400
    glyphs: /usr/local/share/ghostscript/fonts/n021003l.pfb

【问题讨论】:

使用identify -list font查看终端中安装了哪些字体。如果没有,请参阅***.com/a/24701602/2836621 也许在终端中试试这个,看看z.png 的样子...convert -size 100x100 xc:white -gravity center -fill red -font /Library/Fonts/Impact.ttf -annotate 0 "Hi there" z.png 也许你在黑底黑字?还是北方的重力把你从页面顶部扔了出去? 尝试将 Gravity 设置为 center,因为即使您没有设置它也会默认为 NorthWest。 将其设置为 North 或 NorthWest 会使图像的顶部成为文本的底部参考点,即文本的基线。 【参考方案1】:

一般来说,如果您无法使用 ImageMagick 查找文本输出,请尝试以下建议:

建议 1

使用对比鲜明的填充和描边,这样您就可以合理地确定在任何背景上看到您的文字:

magick ... -fill cyan -stroke magenta ...

建议 2

将重力设置为center,以防超出图像边缘:

magick ... -gravity center ...

建议 3

指定字体文件的完整路径,这样即使它没有配置到其配置文件中,ImageMagick 也能找到它:

magick ... -font /Library/Fonts/Impact.ttf ...

建议 4

加载后重新分页您的图像,以便它忘记以前可能具有的任何旧页面设置,当时它可能是某个较大图像的一部分并被裁剪:

magick ... +repage ...

所以,总而言之,尝试如下命令:

magick -size 100x100 xc:white -gravity center -fill cyan -stroke magenta -font /Library/Fonts/Impact.ttf -annotate 0 "Hi there" result.png

【讨论】:

以上是关于在使用自制软件安装的 Mac 上使用 Image::Magick 注释图像的主要内容,如果未能解决你的问题,请参考以下文章

使用自制软件在 Mac Big Sur 上为 PHP 7.3.24 安装 pgsql 扩展时出现问题

使用自制软件安装R后的终端

MAC自制php pdo firebird驱动程序

卸载了macports,不能再使用自制软件了

使用自制 Python 在 Mac 10.8 上安装 scipy 的正确位置是啥?

如何在 Mac OS 上使用自制软件将 postgresql 从 10.1 降级到 9.6 [关闭]