Sha256: 6011fab5aa2ac75bb19e25e703f88ab2d834f3382db0e4ab54ed51404751afd4

Contents?: true

Size: 1.3 KB

Versions: 12

Compression:

Stored size: 1.3 KB

Contents

#!/usr/bin/env ruby
# -*- coding: utf-8 -*-

#######################################################################
#
# A simple example of how to use the WriteXLSX gem to
# add shapes (objects and top/bottom connectors) to an Excel xlsx file.
#
# reverse('c'), May 2012, John McNamara, jmcnamara@cpan.org
# converted to Ruby by Hideo NAKAMURA, nakamura.hideo@gmail.com
#

require 'write_xlsx'

workbook  = WriteXLSX.new('shape5.xlsx')
worksheet = workbook.add_worksheet

s1 = workbook.add_shape(
      :type   => 'ellipse',
      :width  => 60,
      :height => 60
                        )
worksheet.insert_shape('A1', s1, 50, 50)

s2 = workbook.add_shape(
      :type   => 'plus',
      :width  => 20,
      :height => 20
                        )
worksheet.insert_shape('A1', s2, 250, 200)

# Create a connector to link the two shapes.
cxn_shape = workbook.add_shape(:type => 'bentConnector3')

# Link the start of the connector to the right side.
cxn_shape.start       = s1.id
cxn_shape.start_index = 4  # 4th connection pt, clockwise from top(0).
cxn_shape.start_side  = 'b' # r)ight or b)ottom.

# Link the end of the connector to the left side.
cxn_shape.end         = s2.id
cxn_shape.end_index   = 0  # clockwise from top(0).
cxn_shape.end_side    = 't' # t)op.

worksheet.insert_shape('A1', cxn_shape, 0, 0)

workbook.close

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
write_xlsx-1.09.4 examples/shape5.rb
write_xlsx-1.09.3 examples/shape5.rb
write_xlsx-1.09.2 examples/shape5.rb
write_xlsx-1.09.1 examples/shape5.rb
write_xlsx-1.09.0 examples/shape5.rb
write_xlsx-1.08.2 examples/shape5.rb
write_xlsx-1.08.1 examples/shape5.rb
write_xlsx-1.08.0 examples/shape5.rb
write_xlsx-1.07.0 examples/shape5.rb
write_xlsx-1.04.0 examples/shape5.rb
write_xlsx-1.02.0 examples/shape5.rb
write_xlsx-1.01.0 examples/shape5.rb