利用脚本将文字插入到图片或进行多个图片拼接
最近做一個拼圖游戲,因為有十幾關,所以測試的時候也是看的兩眼冒金星!于是想到在圖片上標上數字,直接按數字排序就方便多了。
Linux下有個圖片處理工具imagemagick很強大,正適合做這種后臺處理圖像的工作。
安裝方法:
1、添加文本的命令(折騰了半天才得來的成果):
參數解釋:
- convert - imagemagick工具的一個核心命令,用于圖片格式轉換,縮放,剪切等等
- -font - 指定字體
- -pointsize - 字體點陣大小
- -density - 字體點陣密度
- -fill - 字體顏色
- -draw - 'text'表示插入文本,'0,56'表示文本的起始坐標,'T99'表示要顯示的文本
- in.jpg - 輸入圖片文件名稱
- out.jpg -輸入圖片文件名稱
注意:
'T99'表示要顯示的文本,注意這里文本必須以字符開頭,文字或下劃線或其它字符開頭會報錯
關于字體類型還可以看這一段解釋:
先檢查有無可縮放字體:
$ xlsfonts -fn '*-0-0-0-0-*'
有則:
$ convert -font '-*-helvetica-*-*-*--300-300-*-*-*-*-iso8859-1' -fill green -draw 'text 50,300 Magick' image.gif annotated.gif
# If you have the FreeType support built into ImageMagick,
# just increase your pointsize and/or density:
$ convert -font Helvetica -pointsize 100 -density 300 -fill green -draw 'text 50,300 Magick' image.gif annotated.gi
2、多個圖片拼接命令
$ convert -size 500x500 xc:#cfcfcf -draw 'image Over 10,10 200,200 "in.jpg"' out.jpg
拼接兩個640x960圖成1280x640片示例:
參數說明:
- -size - 定義的圖片尺寸,如果要拼接多圖,需要提取計算出最后的尺寸
- xc - 輸出圖片背景顏色,兩種指定方式看上面示例
- -draw - 該參數的格式為' image Over 起始坐標 要顯示的width與height "輸入圖片名稱"' 輸出圖片名稱
注意:'image Over'關鍵字不可少,表示添加圖片,好像也可以使用'image SrcOver',具體差別不太清楚;起始坐標表示要插入的圖片在輸出圖像中左上角對應的坐標;第二個數值對為在輸出圖像上要顯示的width與height,如果給的不成比例,它會自動調整
至于如何將一張圖片疊加到另一張之上,通過上面拼接示例也很容易實現的(~自己去思考~)。
關于imagemagick的更多信息,可以參閱本人很久之前整理(或撰寫)的三篇文檔:
[1] ImageMagick FAQ摘要:www.mcuos.com/thread-598-1-4.html
[2] ImageMagick簡單介紹:www.mcuos.com/thread-596-1-4.html
[3] ImageMagick詳細補充:www.mcuos.com/thread-597-1-4.html
本文轉自博客園知識天地的博客,原文鏈接:利用腳本將文字插入到圖片或進行多個圖片拼接,如需轉載請自行聯系原博主。
總結
以上是生活随笔為你收集整理的利用脚本将文字插入到图片或进行多个图片拼接的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 今天抽点时间来说一个C#里的关键字及它们
- 下一篇: Winform界面中主从表编辑界面的快速