Skip to content

Instantly share code, notes, and snippets.

@jwrubel
Last active March 9, 2016 13:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jwrubel/ba8827f581e08fccbd2e to your computer and use it in GitHub Desktop.
Save jwrubel/ba8827f581e08fccbd2e to your computer and use it in GitHub Desktop.
Using imagemagick caption: command to control text overlays on images

This gist uses the ruby Minimagick library to demonstrate the caption: functions in imagemagick. to recreate, clone this gist and gem install mini_magick. Then run the ruby script: ruby minimagick_caption_test.rb.

require 'mini_magick'
MiniMagick.configure do |config|
config.debug = true
end
base = MiniMagick::Image.open("base_file.png")
MiniMagick::Tool::Convert.new do |convert|
convert.fill "#000000"
convert.size "300x200"
convert.merge! ["caption:This text will be resized to fit in the specified dimensions"]
convert << "composite_layer.png"
end
image = MiniMagick::Image.open("composite_layer.png")
base = base.composite(image) do |c|
c.compose "Over"
c.geometry "+50+50"
end
base.format "png"
base.write "completed.png"
$ ruby minimagick_caption_test.rb
[0.01s] identify /var/folders/sr/3h5hdkd91pd91v5vj0wk1trh0000gn/T/mini_magick20160309-23286-r9w7wn.png
[0.42s] convert -fill #000000 -size 300x200 caption:This text will be resized to fit in the specified dimensions composite_layer.png
[0.01s] identify /var/folders/sr/3h5hdkd91pd91v5vj0wk1trh0000gn/T/mini_magick20160309-23286-10yd9cs.png
[0.01s] identify -format %m %w %h %b /var/folders/sr/3h5hdkd91pd91v5vj0wk1trh0000gn/T/mini_magick20160309-23286-r9w7wn.png[0]
[0.03s] composite -compose Over -geometry +50+50 /var/folders/sr/3h5hdkd91pd91v5vj0wk1trh0000gn/T/mini_magick20160309-23286-10yd9cs.png /var/folders/sr/3h5hdkd91pd91v5vj0wk1trh0000gn/T/mini_magick20160309-23286-r9w7wn.png /var/folders/sr/3h5hdkd91pd91v5vj0wk1trh0000gn/T/mini_magick20160309-23286-a3d5ot.png
[0.04s] convert /var/folders/sr/3h5hdkd91pd91v5vj0wk1trh0000gn/T/mini_magick20160309-23286-a3d5ot.png[0] /var/folders/sr/3h5hdkd91pd91v5vj0wk1trh0000gn/T/mini_magick20160309-23286-lnxxjd.png
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment