画像に文字を入れる方法|ImageMagickでテキストをのせる基本操作|UNIX Cafe

当ページのリンクには広告が含まれています。
第45回|UNIX Cafe「文字をのせてみよう!」

UNIX Cafe | 第45回

目次

文字をのせてみよう!(ImageMagickで簡単テキスト合成)

ミナちゃん

SNSに投稿する前に、写真にタイトル文字を入れたいんですけど…むずかしいですか?

ユニ先生

大丈夫。ImageMagick を使えば、ターミナルからサッと文字を乗せられるんだよ。

基本の「-draw」で文字を入れてみよう

いちばんシンプルな書き方

bash
$ magick input.jpg -gravity South -pointsize 48 -annotate 0 "Hello World" output.jpg
ユニ先生

これは写真の下側(South)に “Hello World” を入れる例だよ。

ミナちゃん

文字サイズも変えられるんですね!

位置を細かく調整してみよう

座標を指定したいとき

bash
$ magick input.jpg -pointsize 48 -draw "text 50,100 'Welcome!'" output.jpg
ユニ先生

“text X,Y” の形で、好きな位置に自由に置けるよ。

フォントや色も変えられるよ

色やフォントを指定する例

bash
$ magick input.jpg \
  -font Helvetica \
  -fill white \
  -stroke black -strokewidth 2 \
  -pointsize 60 \
  -annotate +50+50 "UNIX Café" \
  output.jpg
ミナちゃん

白文字に黒いフチ…すごく見やすいです!

ユニ先生

写真の上に文字をのせるときは、はっきり見える工夫が大切なんだ。

背景に帯(半透明バー)を入れてもっと読みやすくする

半透明の黒帯の上に白文字をのせる例

bash
$ magick input.jpg \
  -fill "rgba(0,0,0,0.5)" -draw "rectangle 0,400 1200,500" \
  -fill white -pointsize 60 -annotate +30+470 'Wellcome!' \
  output.jpg
ミナちゃん

こうすると明るい写真でも文字がくっきり!

複数行のテキストも書けるよ

bash
$ magick input.jpg \
  -font "/Library/Fonts/Arial.ttf" \
  -gravity Center \
  -pointsize 48 \
  -annotate 0 "UNIX Café\nText Overlay Lesson" \
  output.jpg
ユニ先生

“caption:” を使うと改行したテキストもきれいに配置できるよ。

よくあるトラブルと対処法

  • 文字が小さすぎる → -pointsize をアップ
  • 文字が見えない → -stroke や黒帯を追加
  • 日本語フォントが使えない → macOSは -font /System/Library/... を指定
ミナちゃん

日本語フォントも使えるんですね!

まとめ

  • -annotate で文字をのせられる
  • -gravity で位置を調整
  • -font -fill -stroke で見やすく
  • 半透明の帯で読みやすさUP
  • captionで複数行テキスト
ユニ先生

これでブログ用の写真も、ぐっと読みやすくなるね。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次