imagemagick向圖片中寫文字

命令:
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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章