openxml-docx 0.11.0.rc → 0.11.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5237f91a84828cf674cdc2ba93b7f3ccca7500db
4
- data.tar.gz: 0507dab47e9edbb7648fb994909d68bb24e3599a
3
+ metadata.gz: b95d04d57b30da896e2e7fe75c4d43b7c63474c7
4
+ data.tar.gz: 32679fe03b462ee7924e5384784e7a11f8292aa7
5
5
  SHA512:
6
- metadata.gz: 3a1a8423874b848f4173c4ca1f02208b403c2e25cc53d3570d3b3313dc55cf8daea7890549c7f9228528356d8b63059b73ca57efb1f48d1724e97573a9df84de
7
- data.tar.gz: 22f6bc385345e85ef2229b3166f14e282128fe972e0503f32fb0a0c29dc2dca6252b5a26d694c1724987cc6015b94014ccd0c3ce3b859647631f8c25bbcd07b4
6
+ metadata.gz: c2528209b8f6d13ff94daab3d871a6e8a3add1ca216bb9cce583b22d72e0c517a4a2efc4ef493d870135750a0a5a859d594996a08a0d22b9899a4407e884bf4b
7
+ data.tar.gz: f8d7f0ea63c4feccf5ec230e19bc6b5c61be31bccb1239dc8c04a802c4af72257c3ce0408f78bb6271f50781d7aa92ae5a3c2f1a4b9f4edf391ab0116136f6ec
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- openxml-docx (0.11.0.rc)
4
+ openxml-docx (0.11.0)
5
5
  nokogiri
6
6
  openxml-drawingml
7
7
  openxml-package (>= 0.2.2)
@@ -0,0 +1,125 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # This example shows how to use the "numbering" system to describe how a list
4
+ # should be numbered within a document.
5
+
6
+ # require "rails" # workaround: openxml-package uses `extract_options!`
7
+ $:.push Dir.pwd + "/lib"
8
+ require "openxml/docx"
9
+
10
+ package = OpenXml::Docx::Package.new
11
+
12
+ include OpenXml::Docx::Elements
13
+
14
+ # Each list item is a paragraph. A helper function to create paragraphs in the
15
+ # final document:
16
+ def create_paragraph(content)
17
+ text = Text.new(content)
18
+ run = Run.new
19
+ run << text
20
+ paragraph = Paragraph.new
21
+ paragraph << run
22
+ paragraph
23
+ end
24
+
25
+ # First up, create a style for the list paragraph
26
+ list_style = OpenXml::Docx::Style.new :paragraph
27
+ list_style.id = 'ListParagraph'
28
+ list_style.style_name = 'List Paragraph'
29
+ list_style.paragraph.indentation.left = 720
30
+ list_style.paragraph.contextual_spacing = true
31
+
32
+ package.styles << list_style
33
+
34
+ # Each list needs a numbering within the numbering part of the document.
35
+
36
+ # Create an abstract numbering that describes a bulleted list:
37
+ abstract_numbering = AbstractNumbering.new(0)
38
+
39
+ # Each numbering can have multiple levels. Define the first level as a bulleted list:
40
+ level_0 = Level.new
41
+ level_0.level = 0
42
+ level_0.start = 1
43
+ level_0.number_format = :bullet
44
+ # This is the default bullet Word uses
45
+ level_0.level_text = "\u00B7".encode("UTF-8")
46
+ level_0.alignment = :left
47
+ level_0.character_style.font.ascii = "Symbol"
48
+ level_0.character_style.font.high_ansi = "Symbol"
49
+ level_0.character_style.font.hint = :default
50
+ level_0.paragraph_style.indentation.left = 720
51
+ level_0.paragraph_style.indentation.hanging = 360
52
+ abstract_numbering << level_0
53
+
54
+ package.numbering << abstract_numbering
55
+
56
+ package.document << create_paragraph("Example of adding a list to a document")
57
+
58
+ list_item = create_paragraph("First list item")
59
+ list_item.paragraph_style = 'ListParagraph'
60
+ # Say that this list item belongs to our first abstract numbering:
61
+ list_item.numbering.level = 0
62
+ list_item.numbering.id = 1
63
+ # This ID is NOT the numbering ID we created above. Instead, it is a concrete
64
+ # numbering that defines an instance of a list in the document. To link it to
65
+ # our existing abstract numbering, we need to create a concrete numbering
66
+ # instance:
67
+
68
+ numbering = Numbering.new(1)
69
+ # Setting the abstract numbering ID here links it to a given abstract numbering
70
+ numbering.abstract_numbering_id = 0
71
+
72
+ # And add this number to the numbering
73
+ package.numbering << numbering
74
+
75
+ # All that allows us to finally add the item to the document.
76
+
77
+ package.document << list_item
78
+
79
+ list_item = create_paragraph("Second list item")
80
+ list_item.paragraph_style = 'ListParagraph'
81
+
82
+ # The second list item is simpler: we can reuse the numbering we used above.
83
+ list_item.numbering.level = 0
84
+ list_item.numbering.id = 1
85
+
86
+ package.document << list_item
87
+
88
+ package.document << create_paragraph("Outline Example")
89
+
90
+ # Lists with numbers are a bit more complicated. The following creates an
91
+ # "outline" list:
92
+
93
+ abstract_numbering = AbstractNumbering.new(1)
94
+
95
+ [:upperRoman, :upperLetter, :decimal, :lowerLetter, :lowerRoman, :decimal, :lowerLetter].each.with_index do |number_format, index|
96
+ level = Level.new
97
+ level.level = index
98
+ level.start = 1
99
+ level.number_format = number_format
100
+ # Level text replacement tokens are always 1-based, while the levels
101
+ # themselves are 0-based
102
+ level.level_text = index < 4 ? "%#{index+1}." : "(%#{index+1})"
103
+ level.alignment = :left
104
+ level.paragraph_style.indentation.left = (360 * (index+1))
105
+ level.paragraph_style.indentation.hanging = 360
106
+ abstract_numbering << level
107
+ end
108
+
109
+ package.numbering << abstract_numbering
110
+
111
+ numbering = Numbering.new(2)
112
+ numbering.abstract_numbering_id = 1
113
+
114
+ package.numbering << numbering
115
+
116
+ (0..6).each do |level|
117
+ list_item = create_paragraph("Level #{level+1}")
118
+ list_item.paragraph_style = 'ListParagraph'
119
+ list_item.numbering.level = level
120
+ list_item.numbering.id = 2
121
+ package.document << list_item
122
+ end
123
+
124
+ filename = "numbering_example.docx"
125
+ package.save File.expand_path("#{filename}")
@@ -7,6 +7,7 @@ module OpenXml
7
7
  REL_FOOTER = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer".freeze
8
8
  REL_FONT_TABLE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable".freeze
9
9
  REL_FONT = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/font".freeze
10
+ REL_NUMBERING = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering".freeze
10
11
  REL_IMAGE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image".freeze
11
12
 
12
13
  TYPE_STYLES = "application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml".freeze
@@ -14,6 +15,7 @@ module OpenXml
14
15
  TYPE_HEADER = "application/vnd.openxmlformats-officedocument.wordprocessingml.header+xml".freeze
15
16
  TYPE_FOOTER = "application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml".freeze
16
17
  TYPE_FONT_TABLE = "application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml".freeze
18
+ TYPE_NUMBERING = "application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml".freeze
17
19
  TYPE_XML = "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml".freeze
18
20
  TYPE_OBSCURED_FONT = "application/vnd.openxmlformats-officedocument.obfuscatedFont".freeze
19
21
  TYPE_IMAGE = {
@@ -0,0 +1,34 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Elements
4
+ class AbstractNumbering < OpenXml::Docx::Element
5
+ include HasChildren, HasProperties
6
+ tag :abstractNum
7
+
8
+ def initialize(id)
9
+ super()
10
+ self.id = id
11
+ end
12
+ # TODO: child levels is limited to a max of 9
13
+
14
+ with_namespace :w do
15
+ attribute :id, expects: :integer, displays_as: :abstractNumId#, required: true
16
+ end
17
+
18
+ # value_property :nsid - this is a UI property and likely not worth implementing
19
+ value_property :multi_level_type
20
+ # value_property :tmpl - this is a UI property and likely not worth implementing
21
+ # value_property :name
22
+ # value_property :style_link
23
+ # value_property :num_style_link
24
+
25
+ def property_xml(xml)
26
+ props = properties.keys.map(&method(:send)).compact
27
+ return if props.none?(&:render?)
28
+
29
+ props.each { |prop| prop.to_xml(xml) }
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,53 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Elements
4
+ class Level < OpenXml::Docx::Element
5
+ include HasChildren, HasProperties
6
+ tag :lvl
7
+
8
+ with_namespace :w do
9
+ attribute :level, expects: :integer, displays_as: :ilvl # required
10
+ # tplc is an entirely opaque "Word template code" and is
11
+ # "application-specific" according to the spec
12
+ attribute :template_code, expects: :long_hex_number, displays_as: :tplc
13
+ attribute :tentative, expects: :boolean
14
+ end
15
+
16
+ value_property :start
17
+ value_property :number_format
18
+ value_property :level_restart
19
+ value_property :associated_paragraph_style, as: :paragraph_style
20
+ value_property :legal_numbering
21
+ value_property :suffix
22
+ value_property :level_text
23
+ # TODO: Add pic_bullet support (this refers to an element that isn't
24
+ # implemented in the Numbering part)
25
+ # value_property :lvl_pic_bullet_id
26
+ value_property :alignment, as: :level_alignment
27
+
28
+ def paragraph_style
29
+ @paragraph_style ||= Paragraph.new
30
+ end
31
+
32
+ def character_style
33
+ @character_style ||= Run.new
34
+ end
35
+
36
+ def property_xml(xml)
37
+ props = properties.keys.map(&method(:send)).compact
38
+ return if props.none?(&:render?)
39
+
40
+ props.each { |prop| prop.to_xml(xml) }
41
+ end
42
+
43
+ def to_xml(xml)
44
+ xml["w"].public_send(tag, xml_attributes) {
45
+ property_xml(xml)
46
+ @paragraph_style.property_xml(xml) unless @paragraph_style.nil?
47
+ @character_style.property_xml(xml) unless @character_style.nil?
48
+ }
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,27 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Elements
4
+ class LevelOverride < OpenXml::Docx::Element
5
+ include HasChildren, HasProperties
6
+ tag :lvlOverride
7
+
8
+ with_namespace :w do
9
+ attribute :level, expects: :integer, displays_as: :ilvl # required
10
+ end
11
+
12
+ value_property :start_override
13
+
14
+ def override
15
+ @override ||= Level.new
16
+ end
17
+
18
+ def to_xml(xml)
19
+ xml["w"].public_send(tag, xml_attributes) {
20
+ start_override.to_xml(xml)
21
+ @override.to_xml(xml) unless @override.nil?
22
+ }
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,29 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Elements
4
+ class Numbering < OpenXml::Docx::Element
5
+ include HasChildren, HasProperties
6
+ tag :num
7
+
8
+ def initialize(id)
9
+ super()
10
+ self.id = id
11
+ end
12
+ # TODO: child lvlOverride is limited to 9
13
+
14
+ with_namespace :w do
15
+ attribute :id, expects: :integer, displays_as: :numId#, required: true
16
+ end
17
+
18
+ value_property :abstract_numbering_id
19
+
20
+ def property_xml(xml)
21
+ props = properties.keys.map(&method(:send)).compact
22
+ return if props.none?(&:render?)
23
+
24
+ props.each { |prop| prop.to_xml(xml) }
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -10,6 +10,7 @@ module OpenXml
10
10
  :footers,
11
11
  :styles,
12
12
  :fonts,
13
+ :numbering,
13
14
  :image_names
14
15
 
15
16
  content_types do
@@ -23,6 +24,7 @@ module OpenXml
23
24
  override "/word/styles.xml", TYPE_STYLES
24
25
  override "/word/settings.xml", TYPE_SETTINGS
25
26
  override "/word/fontTable.xml", TYPE_FONT_TABLE
27
+ override "/word/numbering.xml", TYPE_NUMBERING
26
28
  end
27
29
 
28
30
  def initialize
@@ -32,6 +34,7 @@ module OpenXml
32
34
  @settings = OpenXml::Docx::Parts::Settings.new
33
35
  @styles = OpenXml::Docx::Parts::Styles.new
34
36
  @fonts = OpenXml::Docx::Parts::Fonts.new
37
+ @numbering = OpenXml::Docx::Parts::Numbering.new
35
38
  @document = OpenXml::Docx::Parts::Document.new
36
39
  @headers = []
37
40
  @footers = []
@@ -40,6 +43,7 @@ module OpenXml
40
43
  document.relationships.add_relationship REL_STYLES, "styles.xml"
41
44
  document.relationships.add_relationship REL_SETTINGS, "settings.xml"
42
45
  document.relationships.add_relationship REL_FONT_TABLE, "fontTable.xml"
46
+ document.relationships.add_relationship REL_NUMBERING, "numbering.xml"
43
47
 
44
48
  add_part "word/_rels/document.xml.rels", document.relationships
45
49
  add_part "word/_rels/fontTable.xml.rels", fonts.relationships
@@ -47,6 +51,7 @@ module OpenXml
47
51
  add_part "word/settings.xml", settings
48
52
  add_part "word/styles.xml", styles
49
53
  add_part "word/fontTable.xml", fonts
54
+ add_part "word/numbering.xml", numbering
50
55
  end
51
56
 
52
57
  def embed_truetype_font(path: nil, name: nil)
@@ -0,0 +1,42 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Parts
4
+ class Numbering < OpenXml::Part
5
+ include RootNamespaces
6
+
7
+ attr_reader :abstractNumbers, :numbers
8
+
9
+ use_namespaces :w
10
+
11
+ def initialize
12
+ @abstractNumbers = []
13
+ @numbers = []
14
+ @relationships = OpenXml::Parts::Rels.new
15
+ end
16
+
17
+ def <<(child)
18
+ if child.is_a?(OpenXml::Docx::Elements::AbstractNumbering)
19
+ abstractNumbers << child
20
+ elsif child.is_a?(OpenXml::Docx::Elements::Numbering)
21
+ numbers << child
22
+ end
23
+ end
24
+
25
+ def count
26
+ abstractNums.count
27
+ end
28
+
29
+ def to_xml
30
+ build_standalone_xml do |xml|
31
+ xml.numbering(root_namespaces) {
32
+ xml.parent.namespace = :w
33
+ abstractNumbers.each { |num| num.to_xml(xml) }
34
+ numbers.each { |number| number.to_xml(xml) }
35
+ }
36
+ end
37
+ end
38
+
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,10 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class AbstractNumberingId < IntegerProperty
5
+ tag :abstractNumId
6
+
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class LegalNumbering < OnOffProperty
5
+ tag :isLgl
6
+
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,14 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class LevelAlignment < ValueProperty
5
+ tag :lvlJc
6
+
7
+ def ok_values
8
+ %i(both center distribute end highKashida lowKashida mediumKashida numTab start thaiDistribute left right)
9
+ end
10
+
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,10 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class LevelRestart < IntegerProperty
5
+ tag :lvlRestart
6
+
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,14 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class LevelText < StringProperty
5
+ include HasAttributes
6
+ tag :lvlText
7
+
8
+ with_namespace :w do
9
+ attribute :null, expects: :boolean
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class MultiLevelType < ValueProperty
5
+ tag :multiLevelType
6
+
7
+ def ok_values
8
+ %i(singleLevel multilevel hybridMultilevel)
9
+ end
10
+
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,46 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class NumberFormat < ValueProperty
5
+ tag :numFmt
6
+
7
+ # TODO: Also allow "format" when "custom" is the number format
8
+
9
+ def ok_values
10
+ %i(decimal upperRoman lowerRoman upperLetter lowerLetter ordinal
11
+ cardinalText ordinalText hex chicago ideographDigital japaneseCounting
12
+ aiueo iroha decimalFullWidth decimalHalfWidth japaneseLegal
13
+ japaneseDigitalTenThousand decimalEnclosedCircle decimalFullWidth2
14
+ aiueoFullWidth irohaFullWidth decimalZero bullet ganada chosung
15
+ decimalEnclosedFullstop
16
+ decimalEnclosedParen
17
+ decimalEnclosedCircleChinese
18
+ ideographEnclosedCircle
19
+ ideographTraditional
20
+ ideographZodiac
21
+ ideographZodiacTraditional
22
+ taiwaneseCounting
23
+ ideographLegalTraditional
24
+ taiwaneseCountingThousand
25
+ taiwaneseDigital
26
+ chineseCounting
27
+ chineseLegalSimplified
28
+ chineseCountingThousand
29
+ koreanDigital
30
+ koreanCounting
31
+ koreanLegal
32
+ koreanDigital2
33
+ vietnameseCounting
34
+ russianLower russianUpper
35
+ none numberInDash
36
+ hebrew1 hebrew2
37
+ arabicAlpha arabicAbjad
38
+ hindiVowels hindiConsonants hindiNumbers hindiCounting
39
+ thaiLetters thaiNumbers thaiCounting
40
+ bahtText
41
+ dollarText custom)
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,10 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class Start < IntegerProperty
5
+ tag :start
6
+
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class StartOverride < IntegerProperty
5
+ tag :startOverride
6
+
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,13 @@
1
+ module OpenXml
2
+ module Docx
3
+ module Properties
4
+ class Suffix < ValueProperty
5
+ tag :suff
6
+
7
+ def ok_values
8
+ %i(tab space nothing)
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -1,5 +1,5 @@
1
1
  module OpenXml
2
2
  module Docx
3
- VERSION = "0.11.0.rc"
3
+ VERSION = "0.11.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openxml-docx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0.rc
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gene Doyel
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2017-06-13 00:00:00.000000000 Z
12
+ date: 2018-01-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nokogiri
@@ -178,6 +178,7 @@ files:
178
178
  - examples/booklet-printing
179
179
  - examples/drawing-ml
180
180
  - examples/image-embedding
181
+ - examples/numbering
181
182
  - examples/ochanomizu.jpg
182
183
  - examples/table
183
184
  - lib/openxml-docx.rb
@@ -185,6 +186,7 @@ files:
185
186
  - lib/openxml/docx/element.rb
186
187
  - lib/openxml/docx/elements.rb
187
188
  - lib/openxml/docx/elements/absolute_position_tab.rb
189
+ - lib/openxml/docx/elements/abstract_numbering.rb
188
190
  - lib/openxml/docx/elements/background.rb
189
191
  - lib/openxml/docx/elements/bidi_embed.rb
190
192
  - lib/openxml/docx/elements/bidi_override.rb
@@ -217,6 +219,8 @@ files:
217
219
  - lib/openxml/docx/elements/grid_column.rb
218
220
  - lib/openxml/docx/elements/group_shape.rb
219
221
  - lib/openxml/docx/elements/last_rendered_page_break.rb
222
+ - lib/openxml/docx/elements/level.rb
223
+ - lib/openxml/docx/elements/level_override.rb
220
224
  - lib/openxml/docx/elements/long_day.rb
221
225
  - lib/openxml/docx/elements/long_month.rb
222
226
  - lib/openxml/docx/elements/long_year.rb
@@ -224,6 +228,7 @@ files:
224
228
  - lib/openxml/docx/elements/markup_compatibility_choice.rb
225
229
  - lib/openxml/docx/elements/markup_compatibility_fallback.rb
226
230
  - lib/openxml/docx/elements/nonbreaking_hyphen.rb
231
+ - lib/openxml/docx/elements/numbering.rb
227
232
  - lib/openxml/docx/elements/optional_hyphen.rb
228
233
  - lib/openxml/docx/elements/page_number.rb
229
234
  - lib/openxml/docx/elements/paper_source.rb
@@ -277,9 +282,11 @@ files:
277
282
  - lib/openxml/docx/parts/fonts.rb
278
283
  - lib/openxml/docx/parts/footer.rb
279
284
  - lib/openxml/docx/parts/header.rb
285
+ - lib/openxml/docx/parts/numbering.rb
280
286
  - lib/openxml/docx/parts/settings.rb
281
287
  - lib/openxml/docx/parts/styles.rb
282
288
  - lib/openxml/docx/properties.rb
289
+ - lib/openxml/docx/properties/abstract_number_id.rb
283
290
  - lib/openxml/docx/properties/alignment.rb
284
291
  - lib/openxml/docx/properties/auto_adjust_right_indent.rb
285
292
  - lib/openxml/docx/properties/auto_space_de.rb
@@ -342,14 +349,20 @@ files:
342
349
  - lib/openxml/docx/properties/language.rb
343
350
  - lib/openxml/docx/properties/latent_styles.rb
344
351
  - lib/openxml/docx/properties/latent_styles_exception.rb
352
+ - lib/openxml/docx/properties/legal_numbering.rb
353
+ - lib/openxml/docx/properties/level_alignment.rb
354
+ - lib/openxml/docx/properties/level_restart.rb
355
+ - lib/openxml/docx/properties/level_text.rb
345
356
  - lib/openxml/docx/properties/line_numbering.rb
346
357
  - lib/openxml/docx/properties/linked_style.rb
347
358
  - lib/openxml/docx/properties/manual_width.rb
348
359
  - lib/openxml/docx/properties/math.rb
349
360
  - lib/openxml/docx/properties/mirror_indent.rb
361
+ - lib/openxml/docx/properties/multi_level_type.rb
350
362
  - lib/openxml/docx/properties/next_style.rb
351
363
  - lib/openxml/docx/properties/no_proof.rb
352
364
  - lib/openxml/docx/properties/no_wrap.rb
365
+ - lib/openxml/docx/properties/number_format.rb
353
366
  - lib/openxml/docx/properties/numbering.rb
354
367
  - lib/openxml/docx/properties/on_off_property.rb
355
368
  - lib/openxml/docx/properties/outline.rb
@@ -386,6 +399,8 @@ files:
386
399
  - lib/openxml/docx/properties/snap_to_grid.rb
387
400
  - lib/openxml/docx/properties/spacing.rb
388
401
  - lib/openxml/docx/properties/spec_vanish.rb
402
+ - lib/openxml/docx/properties/start.rb
403
+ - lib/openxml/docx/properties/start_override.rb
389
404
  - lib/openxml/docx/properties/strikethrough.rb
390
405
  - lib/openxml/docx/properties/string_property.rb
391
406
  - lib/openxml/docx/properties/style.rb
@@ -393,6 +408,7 @@ files:
393
408
  - lib/openxml/docx/properties/style_auto_redefinition.rb
394
409
  - lib/openxml/docx/properties/style_lock.rb
395
410
  - lib/openxml/docx/properties/style_name.rb
411
+ - lib/openxml/docx/properties/suffix.rb
396
412
  - lib/openxml/docx/properties/supress_auto_hyphens.rb
397
413
  - lib/openxml/docx/properties/supress_line_numbers.rb
398
414
  - lib/openxml/docx/properties/supress_overlap.rb
@@ -463,9 +479,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
463
479
  version: '2.0'
464
480
  required_rubygems_version: !ruby/object:Gem::Requirement
465
481
  requirements:
466
- - - ">"
482
+ - - ">="
467
483
  - !ruby/object:Gem::Version
468
- version: 1.3.1
484
+ version: '0'
469
485
  requirements: []
470
486
  rubyforge_project:
471
487
  rubygems_version: 2.6.11