Method: Spreadsheet::Excel::Writer::Workbook#write_palette
- Defined in:
- lib/spreadsheet/excel/writer/workbook.rb
#write_palette(workbook, writer) ⇒ Object
537 538 539 540 541 542 543 544 545 546 547 548 |
# File 'lib/spreadsheet/excel/writer/workbook.rb', line 537 def write_palette workbook, writer data = default_palette workbook.palette.each do |idx, color| idx = SEDOC_ROLOC[idx] - 8 if idx.is_a? Symbol raise "Undefined color index: #{idx}" unless data[idx] data[idx] = color end writer.write [opcode(:palette), 2 + 4 * data.size, data.size].pack("v3") writer.write data.collect { |c| c.push(0).pack("C4") }.join end |