Method: Writexlsx::Sheets#write_drawing_rels_files

Defined in:
lib/write_xlsx/sheets.rb

#write_drawing_rels_files(package_dir) ⇒ Object



117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
# File 'lib/write_xlsx/sheets.rb', line 117

def write_drawing_rels_files(package_dir)
  dir = "#{package_dir}/xl/drawings/_rels"

  index = 0
  each do |sheet|
    index += 1 if !sheet.drawing_links[0].empty? || sheet.has_shapes?

    next if sheet.drawing_links[0].empty?

    FileUtils.mkdir_p(dir)

    rels = Package::Relationships.new

    sheet.drawing_links.each do |drawing_datas|
      drawing_datas.each do |drawing_data|
        rels.add_document_relationship(*drawing_data)
      end
    end

    # Create the .rels file such as /xl/drawings/_rels/sheet1.xml.rels.
    rels.set_xml_writer("#{dir}/drawing#{index}.xml.rels")
    rels.assemble_xml_file
  end
end