[Gem ] RMagick 2.0 繪製中文
看了上篇的寫中文在圖片上...
心想超級強大的 rmagick 應該沒有做不到的事(?)
所以就翻了翻 rmagick 網站用 irb 試著繪出中文:
require 'rubygems'
require 'rmagick'
img = Magick::ImageList.new 'spiritual_soul.jpg'
=> [spiritual_soul.jpg JPEG 56x57 56x57+0+0 DirectClass 8-bit 6kb]
這個 ImageList 可以一次開多張圖片,大概可以拿來串 gif 動畫吧
這邊就暫時只開一張,測試繪製中文即可,有興趣再去翻翻手冊吧:
http://studio.imagemagick.org/RMagick/doc/
draw = Magick::Draw.new
draw.font = '/System/Library/Fonts/儷黑 Pro.ttf'
偉大的儷黑體...
draw.fill = 'black'
draw.annotate img, 0, 0, 20, 20, '測試'
他這四個數字的參數,我搞不太懂是什麼意思,
應該也跟他的座標系統有關(例如,置中版、靠左版、一大堆...)
這邊 annotate 也可以吃 block, 在裡面可以呼叫 self.fill = 'black',
我猜大概就是作成 temp 這樣吧?如果需要重複利用這個 draw 的話才有差
接著把圖片寫入 filesystem:
img.write '測試中文.jpg'
=> [spiritual_soul.jpg=>測試中文.jpg JPEG 56x57 56x57+0+0
DirectClass 16-bit 6kb]
呃,我的圖片從 8-bit 變成 16-bit 了 @_@
anyway...
`open 測試中文.jpg`
open 是 mac 的 command, 意思跟滑鼠點兩下差不多,
會用看圖程式(預設 preview)打開 filesystem 上的 測試中文.jpg
(沒記錯的話,windows 可以用 explorer?)
果然成功用儷黑畫出中文了!雖然位置跟我設想的不太一樣,
這再看手冊或自己稍微調整一下就好了。rmagick 果然強大啊。
不過仍然要說,如果只是想做縮圖,不用做各種影像處理的話,
可以沒有必要用 rmagick, 因為那真的是個龐然大物...
可以試試看 ImageScience:
http://seattlerb.rubyforge.org/ImageScience.html
Seattle.rb 的作品不少,包含知名的 ParseTree, ruby2ruby, hoe, 等等
或是 MiniMagick:
https://rubyforge.org/projects/mini-magick
--
生死去来、棚頭傀儡、一線断時、落落磊磊
《花鏡》-世阿弥
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.30.220
討論串 (同標題文章)