def atom_text(string, point, style, rel = :left, rel_v = :bottom, rotate = nil)
point = transform(point)
applystyle(@gc, style, :font)
size = atom_textsize(string, style)
if rel_v == :center
point.y += size.height/2
elsif rel_v == :top
point.y += size.height
end
if rel == :left
@gc.text_align(Magick::LeftAlign)
elsif rel == :center
@gc.text_align(Magick::CenterAlign)
elsif rel == :right
@gc.text_align(Magick::RightAlign)
end
point.cap!
if rotate
rotpoint = transform(rotate.origin)
@gc.translate(rotpoint.x, rotpoint.y)
@gc.rotate(rotate.angle)
@gc.text(point.x-rotpoint.x, point.y-rotpoint.y, string.inspect)
@gc.rotate(-rotate.angle)
@gc.translate(-rotpoint.x, -rotpoint.y)
else
@gc.text(point.x, point.y, string.inspect)
end
end