ooxml_parser 0.5.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/ooxml_parser.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/alternate_content/choice.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/alternate_content/choice/math_text.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/alternate_content/choice/math_text/math_paragraph.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/chart/chart.rb +6 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/chart/chart/series.rb +2 -2
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/chart/chart/series/series_text.rb +0 -2
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/docx_drawing.rb +1 -20
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/drawing_properties/docx_drawing_distance_from_text.rb +3 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/drawing_properties/docx_drawing_properties.rb +51 -4
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/drawing_properties/ooxml_coordinates.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/drawing_properties/ooxml_size.rb +4 -1
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/picture/docx_blip.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/picture/docx_blip/file_reference.rb +4 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/picture/docx_picture.rb +0 -2
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape.rb +3 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/ooxml_text_box.rb +1 -3
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style.rb +42 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style/effect_reference.rb +35 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style/fill_reference.rb +35 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style/font_reference.rb +35 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style/line_reference.rb +35 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/shape_properties/color/docx_color_scheme.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/shape_properties/custom_geometry/docx_custom_geometry/docx_shape_line_path/docx_shape_line_element.rb +0 -2
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/shape_properties/docx_shape_line.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/shape_properties/docx_shape_properties.rb +12 -4
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/shape_properties/docx_shape_size.rb +10 -3
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/picture/old_docx_picture.rb +1 -3
- data/lib/ooxml_parser/common_parser/common_data/alternate_content/picture/shape/old_docx_shape_properties.rb +1 -3
- data/lib/ooxml_parser/common_parser/common_data/borders_properties.rb +3 -0
- data/lib/ooxml_parser/common_parser/common_data/color.rb +48 -82
- data/lib/ooxml_parser/common_parser/common_data/color/color_helper.rb +4 -3
- data/lib/ooxml_parser/common_parser/common_data/color/color_indexes.list +66 -0
- data/lib/ooxml_parser/common_parser/common_data/color/ooxml_color.rb +5 -0
- data/lib/ooxml_parser/common_parser/common_data/colors/color_properties.rb +8 -2
- data/lib/ooxml_parser/common_parser/common_data/colors/hsl_color.rb +11 -0
- data/lib/ooxml_parser/common_parser/common_data/colors/scheme_color.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/colors/theme_colors.rb +4 -0
- data/lib/ooxml_parser/common_parser/common_data/content_types.rb +2 -0
- data/lib/ooxml_parser/common_parser/common_data/content_types/content_type_default.rb +3 -0
- data/lib/ooxml_parser/common_parser/common_data/content_types/content_type_override.rb +3 -0
- data/lib/ooxml_parser/common_parser/common_data/coordinates.rb +7 -0
- data/lib/ooxml_parser/common_parser/common_data/hyperlink.rb +14 -3
- data/lib/ooxml_parser/common_parser/common_data/ooxml_document_object.rb +28 -2
- data/lib/ooxml_parser/common_parser/common_data/paragraph/paragraph_run.rb +3 -0
- data/lib/ooxml_parser/common_parser/common_data/paragraph/paragraph_run/run_properties.rb +28 -12
- data/lib/ooxml_parser/common_parser/common_data/paragraph/paragraph_run/run_properties/outline.rb +4 -2
- data/lib/ooxml_parser/common_parser/common_data/paragraph/paragrpah_properties/numbering_properties.rb +2 -0
- data/lib/ooxml_parser/common_parser/common_data/paragraph/paragrpah_properties/paragraph_borders.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/paragraph/paragrpah_properties/spacing.rb +16 -13
- data/lib/ooxml_parser/common_parser/common_data/table.rb +2 -0
- data/lib/ooxml_parser/common_parser/common_data/table/margins/paragraph_margins.rb +3 -0
- data/lib/ooxml_parser/common_parser/common_data/table/margins/table_margins.rb +7 -0
- data/lib/ooxml_parser/common_parser/common_data/table/properties/table_position.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/table/properties/table_style_properties.rb +1 -0
- data/lib/ooxml_parser/common_parser/common_data/table/properties/table_style_properties/table_style_properties_helper.rb +4 -4
- data/lib/ooxml_parser/common_parser/common_data/table/row/cell/cell_properties.rb +4 -5
- data/lib/ooxml_parser/common_parser/common_data/table/row/cell/properties/borders.rb +6 -0
- data/lib/ooxml_parser/common_parser/common_data/table/table_grid.rb +3 -0
- data/lib/ooxml_parser/common_parser/common_data/underline.rb +7 -2
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure.rb +41 -9
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/comments/comment.rb +3 -0
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/document_style.rb +3 -0
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph.rb +25 -8
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph/bookmark_end.rb +1 -1
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph/comment_range_start.rb +1 -0
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph/docx_formula/pre_sub_superscript.rb +3 -0
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph/docx_paragraph_run.rb +13 -3
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph/docx_paragraph_run/docx_paragraph_run_helpers.rb +4 -1
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph/docx_paragraph_run/shape.rb +0 -2
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph/frame_properties.rb +3 -0
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/docx_paragraph/indents.rb +4 -2
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/header_footer.rb +8 -4
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/numbering.rb +5 -0
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/page_properties/columns.rb +3 -0
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/page_properties/note.rb +6 -2
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/page_properties/page_size.rb +1 -0
- data/lib/ooxml_parser/docx_parser/docx_data/document_structure/styles.rb +2 -0
- data/lib/ooxml_parser/docx_parser/docx_parser.rb +3 -0
- data/lib/ooxml_parser/name.rb +1 -0
- data/lib/ooxml_parser/pptx_parser/pptx_data/presentation.rb +2 -0
- data/lib/ooxml_parser/pptx_parser/pptx_data/presentation/presentation_theme.rb +3 -0
- data/lib/ooxml_parser/pptx_parser/pptx_data/presentation/presentation_theme/theme_color.rb +3 -0
- data/lib/ooxml_parser/pptx_parser/pptx_data/presentation/slide.rb +5 -2
- data/lib/ooxml_parser/pptx_parser/pptx_data/presentation/slide/slide/timing/time_node.rb +3 -0
- data/lib/ooxml_parser/pptx_parser/pptx_data/presentation/slide/slide_helper.rb +15 -1
- data/lib/ooxml_parser/pptx_parser/pptx_data/presentation/slide/transition/transition.rb +3 -0
- data/lib/ooxml_parser/pptx_parser/pptx_parser.rb +4 -1
- data/lib/ooxml_parser/version.rb +2 -1
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook.rb +21 -2
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/chartsheet.rb +3 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/pivot_cache.rb +41 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/pivot_cache/pivot_cache_definition.rb +37 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/pivot_cache/pivot_cache_definition/cache_source.rb +33 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/pivot_cache/pivot_cache_definition/cache_source/worksheet_source.rb +26 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/style_sheet.rb +2 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/style_sheet/cell_xfs/xf.rb +5 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/style_sheet/fills/fill.rb +2 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/style_sheet/fonts/font.rb +3 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/worksheet.rb +5 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/worksheet/excel_comments.rb +4 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/worksheet/xlsx_column_properties.rb +4 -0
- data/lib/ooxml_parser/xlsx_parser/xlsx_parser.rb +3 -0
- metadata +70 -4
|
@@ -11,6 +11,9 @@ module OoxmlParser
|
|
|
11
11
|
@parent = parent
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
+
# Parse Chartsheet object
|
|
15
|
+
# @param file [String] file to parse
|
|
16
|
+
# @return [Chartsheet] result of parsing
|
|
14
17
|
def parse(file)
|
|
15
18
|
OOXMLDocumentObject.add_to_xmls_stack(OOXMLDocumentObject.root_subfolder + file)
|
|
16
19
|
doc = parse_xml(OOXMLDocumentObject.current_xml)
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'pivot_cache/pivot_cache_definition'
|
|
4
|
+
|
|
5
|
+
module OoxmlParser
|
|
6
|
+
# Class for parsing <pivotCache> tag
|
|
7
|
+
class PivotCache < OOXMLDocumentObject
|
|
8
|
+
# @return [Integer] cacheId of pivot cache
|
|
9
|
+
attr_reader :cache_id
|
|
10
|
+
# @return [String] id of pivot cache
|
|
11
|
+
attr_reader :id
|
|
12
|
+
# @return [PivotCacheDefinition] parsed pivot cache definition
|
|
13
|
+
attr_reader :pivot_cache_definition
|
|
14
|
+
|
|
15
|
+
# Parse Pivot Cache data
|
|
16
|
+
# @param [Nokogiri::XML:Element] node with Pivot Cache data
|
|
17
|
+
# @return [PivotCache] value of PivotCache
|
|
18
|
+
def parse(node)
|
|
19
|
+
node.attributes.each do |key, value|
|
|
20
|
+
case key
|
|
21
|
+
when 'cacheId'
|
|
22
|
+
@cache_id = value.value.to_i
|
|
23
|
+
when 'id'
|
|
24
|
+
@id = value.value.to_s
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
parse_pivot_cache_definition
|
|
28
|
+
self
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
private
|
|
32
|
+
|
|
33
|
+
# @return [PivotCacheDefinition] pivot cache definition for current pivot cache
|
|
34
|
+
def parse_pivot_cache_definition
|
|
35
|
+
definition_file = root_object.relationships.target_by_id(id)
|
|
36
|
+
full_file_path = "#{OOXMLDocumentObject.path_to_folder}/xl/#{definition_file}"
|
|
37
|
+
@pivot_cache_definition = PivotCacheDefinition.new(parent: root_object)
|
|
38
|
+
.parse(full_file_path)
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'pivot_cache_definition/cache_source'
|
|
4
|
+
module OoxmlParser
|
|
5
|
+
# Class for parsing <pivotCacheDefinition> file
|
|
6
|
+
class PivotCacheDefinition < OOXMLDocumentObject
|
|
7
|
+
# @return [String] id of pivot cache definition
|
|
8
|
+
attr_reader :id
|
|
9
|
+
# @return [CacheSource] source of pivot cache
|
|
10
|
+
attr_reader :cache_source
|
|
11
|
+
|
|
12
|
+
# Parse PivotCacheDefinition file
|
|
13
|
+
# @param file [String] path to file
|
|
14
|
+
# @return [PivotCacheDefinition]
|
|
15
|
+
def parse(file)
|
|
16
|
+
return nil unless File.exist?(file)
|
|
17
|
+
|
|
18
|
+
document = parse_xml(file)
|
|
19
|
+
node = document.xpath('*').first
|
|
20
|
+
|
|
21
|
+
node.attributes.each do |key, value|
|
|
22
|
+
case key
|
|
23
|
+
when 'id'
|
|
24
|
+
@id = value.value.to_s
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
node.xpath('*').each do |node_child|
|
|
29
|
+
case node_child.name
|
|
30
|
+
when 'cacheSource'
|
|
31
|
+
@cache_source = CacheSource.new(parent: self).parse(node_child)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
self
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'cache_source/worksheet_source'
|
|
4
|
+
|
|
5
|
+
module OoxmlParser
|
|
6
|
+
# Class for parsing <cacheSource> file
|
|
7
|
+
class CacheSource < OOXMLDocumentObject
|
|
8
|
+
# @return [String] type
|
|
9
|
+
attr_reader :type
|
|
10
|
+
# @return [WorksheetSource] source of worksheet data
|
|
11
|
+
attr_reader :worksheet_source
|
|
12
|
+
|
|
13
|
+
# Parse `<cacheSource>` tag
|
|
14
|
+
# # @param [Nokogiri::XML:Element] node with CacheSource data
|
|
15
|
+
# @return [CacheSource]
|
|
16
|
+
def parse(node)
|
|
17
|
+
node.attributes.each do |key, value|
|
|
18
|
+
case key
|
|
19
|
+
when 'type'
|
|
20
|
+
@type = value.value.to_s
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
node.xpath('*').each do |node_child|
|
|
25
|
+
case node_child.name
|
|
26
|
+
when 'worksheetSource'
|
|
27
|
+
@worksheet_source = WorksheetSource.new(parent: self).parse(node_child)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
self
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OoxmlParser
|
|
4
|
+
# Class for parsing <worksheetSource> file
|
|
5
|
+
class WorksheetSource < OOXMLDocumentObject
|
|
6
|
+
# @return [String] ref of cells
|
|
7
|
+
attr_reader :ref
|
|
8
|
+
# @return [String] sheet name
|
|
9
|
+
attr_reader :sheet
|
|
10
|
+
|
|
11
|
+
# Parse `<worksheetSource>` tag
|
|
12
|
+
# # @param [Nokogiri::XML:Element] node with WorksheetSource data
|
|
13
|
+
# @return [WorksheetSource]
|
|
14
|
+
def parse(node)
|
|
15
|
+
node.attributes.each do |key, value|
|
|
16
|
+
case key
|
|
17
|
+
when 'ref'
|
|
18
|
+
@ref = value.value.to_s
|
|
19
|
+
when 'sheet'
|
|
20
|
+
@sheet = value.value.to_s
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
self
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -26,6 +26,8 @@ module OoxmlParser
|
|
|
26
26
|
@parent = parent
|
|
27
27
|
end
|
|
28
28
|
|
|
29
|
+
# Parse StyleSheet object
|
|
30
|
+
# @return [StyleSheet] result of parsing
|
|
29
31
|
def parse
|
|
30
32
|
doc = parse_xml("#{OOXMLDocumentObject.path_to_folder}/#{OOXMLDocumentObject.root_subfolder}/styles.xml")
|
|
31
33
|
doc.root.xpath('*').each do |node_child|
|
|
@@ -4,6 +4,7 @@ require_relative 'cell_style/alignment'
|
|
|
4
4
|
module OoxmlParser
|
|
5
5
|
# Class for parsing `xf` object
|
|
6
6
|
class Xf < OOXMLDocumentObject
|
|
7
|
+
# [Array<String,nil>] list of predefined format values
|
|
7
8
|
ALL_FORMAT_VALUE = ['General',
|
|
8
9
|
'0',
|
|
9
10
|
'0.00',
|
|
@@ -119,18 +120,22 @@ module OoxmlParser
|
|
|
119
120
|
self
|
|
120
121
|
end
|
|
121
122
|
|
|
123
|
+
# @return [Font] font of object
|
|
122
124
|
def font
|
|
123
125
|
root_object.style_sheet.fonts[@font_id]
|
|
124
126
|
end
|
|
125
127
|
|
|
128
|
+
# @return [XlsxBorder] border of object
|
|
126
129
|
def borders
|
|
127
130
|
root_object.style_sheet.borders.borders_array[@border_id] if @apply_border
|
|
128
131
|
end
|
|
129
132
|
|
|
133
|
+
# @return [Fill] fill color of object
|
|
130
134
|
def fill_color
|
|
131
135
|
root_object.style_sheet.fills[@fill_id] if @apply_fill
|
|
132
136
|
end
|
|
133
137
|
|
|
138
|
+
# @return [String] numerical format of object
|
|
134
139
|
def numerical_format
|
|
135
140
|
return @numerical_format unless @apply_number_format
|
|
136
141
|
|
|
@@ -42,6 +42,8 @@ module OoxmlParser
|
|
|
42
42
|
@parent = parent
|
|
43
43
|
end
|
|
44
44
|
|
|
45
|
+
# Perform parsing of relationships
|
|
46
|
+
# @return [nil]
|
|
45
47
|
def parse_relationships
|
|
46
48
|
OOXMLDocumentObject.add_to_xmls_stack("#{OOXMLDocumentObject.root_subfolder}/worksheets/_rels/#{@xml_name}.rels")
|
|
47
49
|
@relationships = Relationships.new(parent: self).parse_file(OOXMLDocumentObject.current_xml) if File.exist?(OOXMLDocumentObject.current_xml)
|
|
@@ -67,6 +69,9 @@ module OoxmlParser
|
|
|
67
69
|
end
|
|
68
70
|
end
|
|
69
71
|
|
|
72
|
+
# Parse data of Worksheet
|
|
73
|
+
# @param path_to_xml_file [String] path to file to parse
|
|
74
|
+
# @return [Worksheet] parsed worksheet
|
|
70
75
|
def parse(path_to_xml_file)
|
|
71
76
|
@xml_name = File.basename path_to_xml_file
|
|
72
77
|
parse_relationships
|
|
@@ -16,6 +16,7 @@ module OoxmlParser
|
|
|
16
16
|
@parent = parent
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
+
# @return [Array<ExcelComment>] list of comments
|
|
19
20
|
def comments
|
|
20
21
|
comment_list.comments
|
|
21
22
|
end
|
|
@@ -23,6 +24,9 @@ module OoxmlParser
|
|
|
23
24
|
extend Gem::Deprecate
|
|
24
25
|
deprecate :comments, 'comment_list.comments', 2020, 1
|
|
25
26
|
|
|
27
|
+
# Parse file with ExcelComments
|
|
28
|
+
# @param file [String] file to parse
|
|
29
|
+
# @return [ExcelComments] object with data
|
|
26
30
|
def parse(file)
|
|
27
31
|
doc = parse_xml(file)
|
|
28
32
|
node = doc.xpath('*').first
|
data/lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/worksheet/xlsx_column_properties.rb
CHANGED
|
@@ -38,6 +38,10 @@ module OoxmlParser
|
|
|
38
38
|
self
|
|
39
39
|
end
|
|
40
40
|
|
|
41
|
+
# Parse list of XlsxColumnProperties
|
|
42
|
+
# @param columns_width_node [Nokogiri::XML:Element] node to parse
|
|
43
|
+
# @param parent [OOXMLDocumentObject] parent of result objects
|
|
44
|
+
# @return [Array<XlsxColumnProperties>] list of XlsxColumnProperties
|
|
41
45
|
def self.parse_list(columns_width_node, parent: nil)
|
|
42
46
|
columns = []
|
|
43
47
|
columns_width_node.xpath('xmlns:col').each do |col_node|
|
|
@@ -5,6 +5,9 @@ require_relative 'xlsx_data/view_model/workbook'
|
|
|
5
5
|
module OoxmlParser
|
|
6
6
|
# Basic class for parsing xlsx
|
|
7
7
|
class XlsxParser
|
|
8
|
+
# Parse xlsx file
|
|
9
|
+
# @param path_to_file [String] file path
|
|
10
|
+
# @return [XLSXWorkbook] result of parse
|
|
8
11
|
def self.parse_xlsx(path_to_file)
|
|
9
12
|
Parser.parse_format(path_to_file) do
|
|
10
13
|
XLSXWorkbook.new.parse
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ooxml_parser
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.8.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- ONLYOFFICE
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date: 2020-
|
|
13
|
+
date: 2020-07-31 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: nokogiri
|
|
@@ -74,6 +74,62 @@ dependencies:
|
|
|
74
74
|
- - "~>"
|
|
75
75
|
- !ruby/object:Gem::Version
|
|
76
76
|
version: '13.0'
|
|
77
|
+
- !ruby/object:Gem::Dependency
|
|
78
|
+
name: rubocop
|
|
79
|
+
requirement: !ruby/object:Gem::Requirement
|
|
80
|
+
requirements:
|
|
81
|
+
- - '='
|
|
82
|
+
- !ruby/object:Gem::Version
|
|
83
|
+
version: 0.88.0
|
|
84
|
+
type: :development
|
|
85
|
+
prerelease: false
|
|
86
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
87
|
+
requirements:
|
|
88
|
+
- - '='
|
|
89
|
+
- !ruby/object:Gem::Version
|
|
90
|
+
version: 0.88.0
|
|
91
|
+
- !ruby/object:Gem::Dependency
|
|
92
|
+
name: rubocop-performance
|
|
93
|
+
requirement: !ruby/object:Gem::Requirement
|
|
94
|
+
requirements:
|
|
95
|
+
- - '='
|
|
96
|
+
- !ruby/object:Gem::Version
|
|
97
|
+
version: 1.7.1
|
|
98
|
+
type: :development
|
|
99
|
+
prerelease: false
|
|
100
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
101
|
+
requirements:
|
|
102
|
+
- - '='
|
|
103
|
+
- !ruby/object:Gem::Version
|
|
104
|
+
version: 1.7.1
|
|
105
|
+
- !ruby/object:Gem::Dependency
|
|
106
|
+
name: rubocop-rake
|
|
107
|
+
requirement: !ruby/object:Gem::Requirement
|
|
108
|
+
requirements:
|
|
109
|
+
- - '='
|
|
110
|
+
- !ruby/object:Gem::Version
|
|
111
|
+
version: 0.5.1
|
|
112
|
+
type: :development
|
|
113
|
+
prerelease: false
|
|
114
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
115
|
+
requirements:
|
|
116
|
+
- - '='
|
|
117
|
+
- !ruby/object:Gem::Version
|
|
118
|
+
version: 0.5.1
|
|
119
|
+
- !ruby/object:Gem::Dependency
|
|
120
|
+
name: rubocop-rspec
|
|
121
|
+
requirement: !ruby/object:Gem::Requirement
|
|
122
|
+
requirements:
|
|
123
|
+
- - '='
|
|
124
|
+
- !ruby/object:Gem::Version
|
|
125
|
+
version: 1.42.0
|
|
126
|
+
type: :development
|
|
127
|
+
prerelease: false
|
|
128
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
129
|
+
requirements:
|
|
130
|
+
- - '='
|
|
131
|
+
- !ruby/object:Gem::Version
|
|
132
|
+
version: 1.42.0
|
|
77
133
|
description: Parse OOXML files (docx, xlsx, pptx)
|
|
78
134
|
email:
|
|
79
135
|
- shockwavenn@gmail.com
|
|
@@ -129,6 +185,11 @@ files:
|
|
|
129
185
|
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/non_visual_shape_properties/non_visual_properties.rb
|
|
130
186
|
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/non_visual_shape_properties/non_visual_properties/shape_placeholder.rb
|
|
131
187
|
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/ooxml_text_box.rb
|
|
188
|
+
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style.rb
|
|
189
|
+
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style/effect_reference.rb
|
|
190
|
+
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style/fill_reference.rb
|
|
191
|
+
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style/font_reference.rb
|
|
192
|
+
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/shape_style/line_reference.rb
|
|
132
193
|
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/docx_shape/text_body.rb
|
|
133
194
|
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/shape_body_properties/ooxml_shape_body_properties.rb
|
|
134
195
|
- lib/ooxml_parser/common_parser/common_data/alternate_content/drawing/graphic/shape/shape_body_properties/ooxml_shape_body_properties/preset_text_warp.rb
|
|
@@ -159,6 +220,7 @@ files:
|
|
|
159
220
|
- lib/ooxml_parser/common_parser/common_data/borders_properties.rb
|
|
160
221
|
- lib/ooxml_parser/common_parser/common_data/color.rb
|
|
161
222
|
- lib/ooxml_parser/common_parser/common_data/color/color_helper.rb
|
|
223
|
+
- lib/ooxml_parser/common_parser/common_data/color/color_indexes.list
|
|
162
224
|
- lib/ooxml_parser/common_parser/common_data/color/ooxml_color.rb
|
|
163
225
|
- lib/ooxml_parser/common_parser/common_data/colors/color_alpha_channel.rb
|
|
164
226
|
- lib/ooxml_parser/common_parser/common_data/colors/color_properties.rb
|
|
@@ -360,6 +422,10 @@ files:
|
|
|
360
422
|
- lib/ooxml_parser/version.rb
|
|
361
423
|
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook.rb
|
|
362
424
|
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/chartsheet.rb
|
|
425
|
+
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/pivot_cache.rb
|
|
426
|
+
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/pivot_cache/pivot_cache_definition.rb
|
|
427
|
+
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/pivot_cache/pivot_cache_definition/cache_source.rb
|
|
428
|
+
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/pivot_cache/pivot_cache_definition/cache_source/worksheet_source.rb
|
|
363
429
|
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/shared_string_table.rb
|
|
364
430
|
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/shared_string_table/string_index.rb
|
|
365
431
|
- lib/ooxml_parser/xlsx_parser/xlsx_data/view_model/workbook/style_sheet.rb
|
|
@@ -424,14 +490,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
424
490
|
requirements:
|
|
425
491
|
- - ">="
|
|
426
492
|
- !ruby/object:Gem::Version
|
|
427
|
-
version: '2.
|
|
493
|
+
version: '2.4'
|
|
428
494
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
429
495
|
requirements:
|
|
430
496
|
- - ">="
|
|
431
497
|
- !ruby/object:Gem::Version
|
|
432
498
|
version: '0'
|
|
433
499
|
requirements: []
|
|
434
|
-
rubygems_version: 3.
|
|
500
|
+
rubygems_version: 3.1.4
|
|
435
501
|
signing_key:
|
|
436
502
|
specification_version: 4
|
|
437
503
|
summary: OoxmlParser Gem
|