0

我的外壳挂在这个命令上:

/usr/local/bin/convert -size 298x71 -background black -fill white -stroke none -gravity center -trim -interline-spacing 0 -font /home/amazingw/public_html/live/fonts/Phillies.ttf label:'150' png:-

外壳只是坐在那里,直到我按 ctrl+c。如果我在 label: 参数中添加任何字母,命令运行正常并且我得到输出。字体在那里,但它缺少定义中的数字字符。这会导致我的命令失败吗?

4

2 回答 2

0

这似乎是与控制台输入相关的问题,我假设您使用的是 Bash。

如果是这种情况,Bash 会尝试解释引号并等待其他输入。

在查看了 imagemagick 网站的“标签:”之后

Label - Simple Text Label

Basic Labels

Creating a font image using a "label:" image, 
is the more typical way of drawing a font
quickly in ImageMagick...

它继续并给出了许多例子......

convert -background lightblue -fill blue \
      -font Candice -pointsize 72 label:Anthony \
      label.gif

没有一个例子显示单引号。

我假设在 Bash 和 ImageMagick 的转换程序之间,对来自控制台的输入的解释存在一些错误。

我建议尝试不带引号的相同命令

/usr/local/bin/convert -size 298x71 -background black -fill white -stroke none -gravity center -trim -interline-spacing 0 -font /home/amazingw/public_html/live/fonts/Phillies.ttf label:150 png:-

我也会快速浏览一下关于单引号的 Bash 手册

于 2013-02-07T12:59:39.637 回答
0

我能够使用包含数字的字体的修改版本进行测试。命令进行得很顺利,并返回了输出图像。这几乎将其缩小到处理标签的 ImageMagick 问题。看起来如果标签仅由字体中缺少的字符组成(生成的输出图像将为空) - 在这种情况下,ImageMagick 会挂起,直到按下 ctrl+c - 特别有问题,因为我从 php 的 proc_open 运行它.

于 2013-02-07T22:59:41.337 回答