Class: Axlsx::VmlShape
- Inherits:
-
Object
- Object
- Axlsx::VmlShape
- Includes:
- Accessors, OptionsParser
- Defined in:
- lib/axlsx/drawing/vml_shape.rb
Overview
A VmlShape is used to position and render a comment.
Instance Method Summary collapse
-
#initialize(options = {}) {|_self| ... } ⇒ VmlShape
constructor
Creates a new VmlShape.
-
#to_xml_string(str = '') ⇒ String
serialize the shape to a string.
Methods included from OptionsParser
Constructor Details
#initialize(options = {}) {|_self| ... } ⇒ VmlShape
Creates a new VmlShape
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/axlsx/drawing/vml_shape.rb', line 20 def initialize(={}) @row = @column = @left_column = @top_row = @right_column = @bottom_row = 0 @left_offset = 15 @top_offset = 2 @right_offset = 50 @bottom_offset = 5 @visible = true @id = (0...8).map{65.+(rand(25)).chr}.join yield self if block_given? end |
Instance Method Details
#to_xml_string(str = '') ⇒ String
serialize the shape to a string
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/axlsx/drawing/vml_shape.rb', line 40 def to_xml_string(str ='') str << <<SHAME_ON_YOU <v:shape id="#{@id}" type="#_x0000_t202" fillcolor="#ffffa1 [80]" o:insetmode="auto" style="visibility:#{@visible ? 'visible' : 'hidden'}"> <v:fill color2="#ffffa1 [80]"/> <v:shadow on="t" obscured="t"/> <v:path o:connecttype="none"/> <v:textbox style='mso-fit-text-with-word-wrap:t'> <div style='text-align:left'></div> </v:textbox> <x:ClientData ObjectType="Note"> <x:MoveWithCells/> <x:SizeWithCells/> <x:Anchor>#{left_column}, #{left_offset}, #{top_row}, #{top_offset}, #{right_column}, #{right_offset}, #{bottom_row}, #{bottom_offset}</x:Anchor> <x:AutoFill>False</x:AutoFill> <x:Row>#{row}</x:Row> <x:Column>#{column}</x:Column> #{@visible ? '<x:Visible/>' : ''} </x:ClientData> </v:shape> SHAME_ON_YOU end |