# File lib/dragonfly/image_magick/generator.rb, line 42 def plain(width, height, colour, opts={}) opts = Dragonfly::Utils.symbolize_keys(opts) format = opts[:format] || 'png' [ convert(nil, "-size #{width}x#{height} xc:#{colour}", format), {:format => format.to_sym, :name => "plain.#{format}"} ] end
# File lib/dragonfly/image_magick/generator.rb, line 52 def plasma(width, height, format='png') [ convert(nil, "-size #{width}x#{height} plasma:fractal", format), {:format => format.to_sym, :name => "plasma.#{format}"} ] end
# File lib/dragonfly/image_magick/generator.rb, line 59 def text(string, opts={}) opts = HashWithCssStyleKeys[opts] args = [] format = (opts[:format] || :png) background = opts[:background_color] || 'none' font_size = (opts[:font_size] || 12).to_i escaped_string = "\"#{string.gsub(/"/, '\"')}\"" # Settings args.push("-gravity NorthWest") args.push("-antialias") args.push("-pointsize #{font_size}") args.push("-font \"#{opts[:font]}\"") if opts[:font] args.push("-family '#{opts[:font_family]}'") if opts[:font_family] args.push("-fill #{opts[:color]}") if opts[:color] args.push("-stroke #{opts[:stroke_color]}") if opts[:stroke_color] args.push("-style #{FONT_STYLES[opts[:font_style]]}") if opts[:font_style] args.push("-stretch #{FONT_STRETCHES[opts[:font_stretch]]}") if opts[:font_stretch] args.push("-weight #{FONT_WEIGHTS[opts[:font_weight]]}") if opts[:font_weight] args.push("-background #{background}") args.push("label:#{escaped_string}") # Padding pt, pr, pb, pl = parse_padding_string(opts[:padding]) if opts[:padding] padding_top = (opts[:padding_top] || pt || 0) padding_right = (opts[:padding_right] || pr || 0) padding_bottom = (opts[:padding_bottom] || pb || 0) padding_left = (opts[:padding_left] || pl || 0) tempfile = convert(nil, args.join(' '), format) if (padding_top || padding_right || padding_bottom || padding_left) attrs = identify(tempfile) text_width = attrs[:width].to_i text_height = attrs[:height].to_i width = padding_left + text_width + padding_right height = padding_top + text_height + padding_bottom args = args.slice(0, args.length - 2) args.push("-size #{width}x#{height}") args.push("xc:#{background}") args.push("-annotate 0x0+#{padding_left}+#{padding_top} #{escaped_string}") run convert_command, "#{args.join(' ')} #{quote tempfile.path}" end [ tempfile, {:format => format, :name => "text.#{format}"} ] end
Generated with the Darkfish Rdoc Generator 2.