Sha256: 6c609e9059b8fe8aa221bd6358fd884e31c434a417baced9836441b226f41f41
Contents?: true
Size: 1.26 KB
Versions: 2
Compression:
Stored size: 1.26 KB
Contents
require_relative 'cell/cell' require_relative 'row/table_row_properties' module OoxmlParser class TableRow < OOXMLDocumentObject attr_accessor :height, :cells, :cells_spacing, :table_row_properties def initialize(cells = []) @cells = cells end alias table_row_height height def self.parse(row_node) row = TableRow.new row.height = (row_node.attribute('h').value.to_f / 360_000.0).round(2) unless row_node.attribute('h').nil? row_node.xpath("#{OOXMLDocumentObject.namespace_prefix}:trPr").each do |table_prop_node| row.table_row_properties = TableRowProperties.parse(table_prop_node) end row_node.xpath('*').each do |row_node_child| row_node_child.xpath('*').each do |row_properties| case row_properties.name when 'tblCellSpacing' row.cells_spacing = (row_properties.attribute('w').value.to_f / 283.3).round(2) end end end Presentation.current_font_style = FontStyle.new(true) # TODO: Add correct parsing of TableStyle.xml file and use it row_node.xpath("#{OOXMLDocumentObject.namespace_prefix}:tc").each { |cell_node| row.cells << TableCell.parse(cell_node) } Presentation.current_font_style = FontStyle.new row end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ooxml_parser-0.1.2 | lib/ooxml_parser/common_parser/common_data/table/row/row.rb |
ooxml_parser-0.1.1 | lib/ooxml_parser/common_parser/common_data/table/row/row.rb |