命令:
mogrify -font Arial -pointsize 24 -fill yellow -weight bolder -annotate +20+100 “hello world zxl” /Users/zhangxiaolong/Documents/imagemagic/example/hi.jpg
-font 后面是字体
如果你使用的字体不存在时,该命令会报异常信息
convert: unable to read font `Ravie’ @ warning/annotate.c/RenderType/986.
可以通过命令magick -list font查看支持的字体
-pointsize 代表字体大小
-fill 代表填充颜色,可以通过RGB方式调整颜色
-fill blue
-fill “#ddddff”
-fill “rgb(255,255,255)”
-annotate代表位置
“hello world zxl” 是放置的文案
最后一个参数是图片路径,通过mogrify命令是在原图上修改
如果我们想使用宋体,楷体等windows下的字体放置中文时,我们可以到windows系统上去找对应的字体文件,拷贝到Linux系统中,然后使用如下命令
mogrify -font /Users/zhangxiaolong/Downloads/simsun.ttc -pointsize 24 -fill red -weight bolder -annotate +20+100 “张小龙” /Users/zhangxiaolong/Documents/imagemagic/example/hi.jpg
/Users/zhangxiaolong/Downloads/simsun.ttc 是我从windows上拷贝过来的宋体文件
如果不想直接修改原图,而是新生成文件,那么可以使用convert命令来放置文本信息
convert -font /Users/zhangxiaolong/Downloads/simsun.ttc -fill red -pointsize 40 -draw “text 10,130’ 张小龙’” hi.jpg nnew.jpg
其中hi.jpg是原图,nnew.jpg是加上文字信息后的图
风险点:通过imagemagick可以向图片中加入文本信息,但是效果未必有css或者ps做出来的效果好,必定这些参数没有css全,图片也只是在内存中强行修改,没有ps那么质量高,使用这种方式做出来的图片,展示效果应该不会太好。对于图片质量要求不高的场景来使用,是足够了,但是对于一些要求特别高的场景,可能不是非常适合。
参考文档:
http://www.imagemagick.org/script/command-line-options.php#colors