Class: Writexlsx::Drawing
- Inherits:
-
Object
- Object
- Writexlsx::Drawing
- Defined in:
- lib/write_xlsx/drawing.rb
Instance Attribute Summary collapse
-
#embedded ⇒ Object
writeonly
Sets the attribute embedded.
Instance Method Summary collapse
-
#add_drawing_object(*args) ⇒ Object
Add a chart or image sub object to the drawing.
-
#assemble_xml_file ⇒ Object
Assemble and write the XML file.
-
#initialize ⇒ Drawing
constructor
A new instance of Drawing.
- #set_xml_writer(filename) ⇒ Object
- #xml_str ⇒ Object
Constructor Details
#initialize ⇒ Drawing
Returns a new instance of Drawing.
8 9 10 11 12 13 |
# File 'lib/write_xlsx/drawing.rb', line 8 def initialize @writer = Package::XMLWriterSimple.new @drawings = [] @embedded = false @orientation = false end |
Instance Attribute Details
#embedded=(value) ⇒ Object (writeonly)
Sets the attribute embedded
6 7 8 |
# File 'lib/write_xlsx/drawing.rb', line 6 def (value) @embedded = value end |
Instance Method Details
#add_drawing_object(*args) ⇒ Object
Add a chart or image sub object to the drawing.
56 57 58 |
# File 'lib/write_xlsx/drawing.rb', line 56 def add_drawing_object(*args) @drawings << args end |
#assemble_xml_file ⇒ Object
Assemble and write the XML file.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/write_xlsx/drawing.rb', line 26 def assemble_xml_file @writer.xml_decl # Write the xdr:wsDr element. write_drawing_workspace if @embedded index = 0 @drawings.each do |dimensions| # Write the xdr:twoCellAnchor element. index += 1 write_two_cell_anchor(index, *(dimensions.flatten)) end else index = 0 # Write the xdr:absoluteAnchor element. index += 1 write_absolute_anchor(index) end @writer.end_tag('xdr:wsDr') @writer.crlf @writer.close end |
#set_xml_writer(filename) ⇒ Object
19 20 21 |
# File 'lib/write_xlsx/drawing.rb', line 19 def set_xml_writer(filename) @writer.set_xml_writer(filename) end |
#xml_str ⇒ Object
15 16 17 |
# File 'lib/write_xlsx/drawing.rb', line 15 def xml_str @writer.string end |