Sha256: 2a3235f7d88e8e6c92a124f6ac036856149a37aa682cb518d1be12c7a0868cec

Contents?: true

Size: 1.72 KB

Versions: 6

Compression:

Stored size: 1.72 KB

Contents

require 'rvg/rvg'

Magick::RVG.dpi = 90

Border       = { fill: 'none', stroke: 'blue', stroke_width: 1 }
Connect      = { fill: 'none', stroke: '#888', stroke_width: 2 }
SamplePath   = { fill: 'none', stroke: 'red',  stroke_width: 5 }
EndPoint     = { fill: 'none', stroke: '#888', stroke_width: 2 }
CtlPoint     = { fill: '#888', stroke: 'none' }
AutoCtlPoint = { fill: 'none', stroke: 'blue', stroke_width: 4 }
Label        = { font_size: 22, font_family: 'Verdana', font_weight: 'normal', font_style: 'normal' }

rvg = Magick::RVG.new(5.cm, 4.cm).viewbox(0, 0, 500, 400) do |canvas|
  canvas.title = 'Example cubic01 - cubic Bezier commands in path data'
  canvas.desc = <<-END_DESC
        Picture showing a simple example of path data using both a
        "C" and an "S" command, along with annotations showing the
        control points and end points.
  END_DESC

  canvas.background_fill = 'white'
  canvas.rect(496, 395, 1, 1).styles(Border)

  canvas.polyline(100, 200, 100, 100).styles(Connect)
  canvas.polyline(250, 100, 250, 200).styles(Connect)
  canvas.polyline(250, 200, 250, 300).styles(Connect)
  canvas.polyline(400, 300, 400, 200).styles(Connect)

  canvas.path('M100,200 C100,100 250,100 250,200 S400,300 400,200').styles(SamplePath)

  canvas.circle(10, 100, 200).styles(EndPoint)
  canvas.circle(10, 250, 200).styles(EndPoint)
  canvas.circle(10, 400, 200).styles(EndPoint)
  canvas.circle(10, 100, 100).styles(CtlPoint)
  canvas.circle(10, 250, 100).styles(CtlPoint)
  canvas.circle(10, 400, 300).styles(CtlPoint)
  canvas.circle(9, 250, 300).styles(AutoCtlPoint)

  canvas.text(25, 70, 'M100,200 C100,100 250,100 250,200').styles(Label)
  canvas.text(225, 350, 'S400,300 400,200').styles(Label)
end

rvg.draw.write('cubic01.gif')

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rmagick-4.1.0.rc2 doc/ex/cubic01.rb
rmagick-4.1.0.rc1 doc/ex/cubic01.rb
rmagick-4.0.0 doc/ex/cubic01.rb
rmagick-3.2.0 doc/ex/cubic01.rb
rmagick-3.1.0 doc/ex/cubic01.rb
rmagick-3.0.0 doc/ex/cubic01.rb