Method: Spreadsheet::Excel::Writer::Workbook#write_sst
- Defined in:
- lib/spreadsheet/excel/writer/workbook.rb
#write_sst(workbook, writer, offset) ⇒ Object
429 430 431 432 433 434 435 436 437 438 439 440 441 442 |
# File 'lib/spreadsheet/excel/writer/workbook.rb', line 429 def write_sst workbook, writer, offset # Offset Size Contents # 0 4 Total number of strings in the workbook (see below) # 4 4 Number of following strings (nm) # 8 var. List of nm Unicode strings, 16-bit string length (➜ 3.4) num_total = 0 strings = worksheets(workbook).each_with_object(Hash.new(0)) do |worksheet, memo| worksheet.strings.each do |k, v| memo[k] += v num_total += v end end _write_sst workbook, writer, offset, num_total, strings.keys end |