Skip to content

Instantly share code, notes, and snippets.

@hogelog
Created March 25, 2011 02:17
Show Gist options
  • Save hogelog/886249 to your computer and use it in GitHub Desktop.
Save hogelog/886249 to your computer and use it in GitHub Desktop.
#!/usr/bin/ruby
require "rubygems"
require "RMagick"
require "kconv"
require "uri"
$KCODE = "utf8"
name = ARGV[0].toutf8
name =~ /^(\w)/
char = $1
filename = URI.escape(name)
image_path = "images/#{filename}.png"
image = Magick::ImageList.new.new_image(250, 250)
Magick::Draw.new.annotate(image, 0, 0, 0, 0, char) do
self.font = "/usr/share/fonts/truetype/mikachan/mikachan.ttf"
self.gravity = Magick::CenterGravity
self.pointsize = 200
end
image.write(image_path)
circle = Magick::Draw.new
circle.stroke("black")
circle.stroke_width(10)
circle.fill_opacity(0)
circle.circle(125, 125, 25, 125)
circle.draw(image)
extent = image.change_geometry("250x300"){|cols,rows,img|
img.resize_to_fit!(cols, rows)
img.border(0, 25, 'white').roll(0, -25)
}
Magick::Draw.new.annotate(extent, 0, 0, 0, 0, name) do
self.font = "/usr/share/fonts/truetype/mikachan/mikachan.ttf"
self.gravity = Magick::SouthGravity
self.pointsize = 50
end
extent.write("images/card_#{filename}.png")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment