blob: 75d86e2dbce1d59317cd1f2fd5d0a12eaca57eaf (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
module Axlsx
# CellAlignment stores information about the cell alignment of a style Xf Object.
# @note Using Styles#add_style is the recommended way to manage cell alignment.
# @see Styles#add_style
class CellAlignment
# The horizontal alignment of the cell.
# @note
# The horizontal cell alignement style must be one of
# :general
# :left
# :center
# :right
# :fill
# :justify
# :centerContinuous
# :distributed
# @return [Symbol]
attr_reader :horizontal
# The vertical alignment of the cell.
# @note
# The vertical cell allingment style must be one of the following:
# :top
# :center
# :bottom
# :justify
# :distributed
# @return [Symbol]
attr_reader :vertical
# The textRotation of the cell.
# @return [Integer]
attr_reader :textRotation
# Indicate if the text of the cell should wrap
# @return [Boolean]
attr_reader :wrapText
# The amount of indent
# @return [Integer]
attr_reader :indent
# The amount of relativeIndent
# @return [Integer]
attr_reader :relativeIndent
# Indicate if the last line should be justified.
# @return [Boolean]
attr_reader :justifyLastLine
# Indicate if the text should be shrunk to the fit in the cell.
# @return [Boolean]
attr_reader :shrinkToFit
# The reading order of the text
# 0 Context Dependent
# 1 Left-to-Right
# 2 Right-to-Left
# @return [Integer]
attr_reader :readingOrder
# Create a new cell_alignment object
# @option options [Symbol] horizontal
# @option options [Symbol] vertical
# @option options [Integer] textRotation
# @option options [Boolean] wrapText
# @option options [Integer] indent
# @option options [Integer] relativeIndent
# @option options [Boolean] justifyLastLine
# @option options [Boolean] shrinkToFit
# @option options [Integer] readingOrder
def initialize(options={})
options.each do |o|
self.send("#{o[0]}=", o[1]) if self.respond_to? "#{o[0]}="
end
end
# @see horizontal
def horizontal=(v) Axlsx::validate_horizontal_alignment v; @horizontal = v end
# @see vertical
def vertical=(v) Axlsx::validate_vertical_alignment v; @vertical = v end
# @see textRotation
def textRotation=(v) Axlsx::validate_unsigned_int v; @textRotation = v end
# @see wrapText
def wrapText=(v) Axlsx::validate_boolean v; @wrapText = v end
# @see indent
def indent=(v) Axlsx::validate_unsigned_int v; @indent = v end
# @see relativeIndent
def relativeIndent=(v) Axlsx::validate_int v; @relativeIndent = v end
# @see justifyLastLine
def justifyLastLine=(v) Axlsx::validate_boolean v; @justifyLastLine = v end
# @see shrinkToFit
def shrinkToFit=(v) Axlsx::validate_boolean v; @shrinkToFit = v end
# @see readingOrder
def readingOrder=(v) Axlsx::validate_unsigned_int v; @readingOrder = v end
# Serializes the cell alignment
# @param [Nokogiri::XML::Builder] xml The document builder instance this objects xml will be added to.
# @return [String]
def to_xml(xml)
xml.alignment(self.instance_values)
end
end
end
|