spreadsheet-excel 0.3.4

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.
Files changed (51) hide show
  1. data/CHANGES +124 -0
  2. data/CVS/Entries +10 -0
  3. data/CVS/Repository +1 -0
  4. data/CVS/Root +1 -0
  5. data/README +69 -0
  6. data/doc/CVS/Entries +3 -0
  7. data/doc/CVS/Repository +1 -0
  8. data/doc/CVS/Root +1 -0
  9. data/doc/format.txt +330 -0
  10. data/doc/spreadsheet.txt +178 -0
  11. data/examples/CVS/Entries +3 -0
  12. data/examples/CVS/Repository +1 -0
  13. data/examples/CVS/Root +1 -0
  14. data/examples/example_basic.rb +27 -0
  15. data/examples/example_format.rb +69 -0
  16. data/lib/CVS/Entries +1 -0
  17. data/lib/CVS/Repository +1 -0
  18. data/lib/CVS/Root +1 -0
  19. data/lib/spreadsheet/CVS/Entries +7 -0
  20. data/lib/spreadsheet/CVS/Repository +1 -0
  21. data/lib/spreadsheet/CVS/Root +1 -0
  22. data/lib/spreadsheet/biffwriter.rb +46 -0
  23. data/lib/spreadsheet/excel.rb +13 -0
  24. data/lib/spreadsheet/format.rb +359 -0
  25. data/lib/spreadsheet/olewriter.rb +178 -0
  26. data/lib/spreadsheet/workbook.rb +279 -0
  27. data/lib/spreadsheet/worksheet.rb +449 -0
  28. data/test/CVS/Entries +9 -0
  29. data/test/CVS/Repository +1 -0
  30. data/test/CVS/Root +1 -0
  31. data/test/perl_output/CVS/Entries +10 -0
  32. data/test/perl_output/CVS/Repository +1 -0
  33. data/test/perl_output/CVS/Root +1 -0
  34. data/test/perl_output/README +31 -0
  35. data/test/perl_output/f_font_biff +0 -0
  36. data/test/perl_output/f_font_key +1 -0
  37. data/test/perl_output/f_xf_biff +0 -0
  38. data/test/perl_output/ole_write_header +0 -0
  39. data/test/perl_output/ws_colinfo +1 -0
  40. data/test/perl_output/ws_store_dimensions +1 -0
  41. data/test/perl_output/ws_store_selection +1 -0
  42. data/test/perl_output/ws_store_window2 +1 -0
  43. data/test/tc_all.rb +6 -0
  44. data/test/tc_biff.rb +62 -0
  45. data/test/tc_excel.rb +26 -0
  46. data/test/tc_format.rb +133 -0
  47. data/test/tc_ole.rb +125 -0
  48. data/test/tc_workbook.rb +71 -0
  49. data/test/tc_worksheet.rb +142 -0
  50. data/test/ts_all.rb +9 -0
  51. metadata +103 -0
data/CHANGES ADDED
@@ -0,0 +1,124 @@
1
+ == 0.3.4 - 17-Feb-2006
2
+ * Added a workaround for a bug in Ruby 1.8.3 and Ruby 1.8.4 where subclasses
3
+ of IO are not guaranteed to call IO#close in block form.
4
+ * Added support for hidden and outlined cells in the Worksheet#format_row
5
+ method. Thanks go to Jade Meskill for the patch.
6
+
7
+ == 0.3.3 - 5-Dec-2005
8
+ * Made an change in the Workbook class, by splitting out the OLEWriter
9
+ handling into its own method. This is an internal change only that was
10
+ made as an attempt to eliminate an Errno::EBADF bug reported by
11
+ Stephen Bannasch. It's also cleaner code in general.
12
+
13
+ == 0.3.2 - 12-Oct-2005
14
+ * Fixed bug/quirk for MS Windows where the file mode wasn't being passed
15
+ properly.
16
+ * Fix for the install.rb code.
17
+ * Renamed "example_formula.rb" to "example_format.rb" (oops).
18
+ * Minor update for the example programs.
19
+ * Corrected the release dates for 0.3.0 and 0.3.1.
20
+
21
+ == 0.3.1 - 11-Oct-2005
22
+ * Directory layout change for the sake of gems.
23
+ * Fixes, and rename, for the gemspec.
24
+
25
+ == 0.3.0 - 10-Oct-2005
26
+ * The OLEWriter class is now a subclass of IO instead of File, and takes a
27
+ string, fileno or IO object for an argument. This means you are not bound
28
+ to write the contents to a file (RFE #1183036).
29
+ * Bug fixed in the Format class that was causing black cells (Bug #1044052).
30
+ * Removed the INSTALL file. Installation instructions can now be found in
31
+ the README file.
32
+ * Removed the InvalidTypeError class. Now just uses TypeError where
33
+ appropriate.
34
+ * Added the Worksheet#format_rectangle method (RFE #1043418).
35
+ * Removed the .rd and .html documents. The .txt files, and most other
36
+ files, are now rdoc friendly.
37
+ * Moved sample scripts to the 'examples' directory.
38
+ * Test suite additions and changes.
39
+
40
+ == 0.2.9 - 11-Jun-2004
41
+ * Added 'brown','cyan' and 'magenta' to the list of valid color strings
42
+ for Format objects.
43
+ * Fixed bugs and slightly modified handling with regards to color,
44
+ bg_color and fg_color attributes for Format objects. Thanks go to
45
+ David Brady for the spot.
46
+ * Minor optimization for the append and prepend methods in the BiffWriter
47
+ class
48
+ * Minor $LOAD_PATH correction for test.rb
49
+ * Added some more unit tests for Format ojbects.
50
+ * Added warranty information
51
+
52
+ == 0.2.8 - 2-Dec-2003
53
+ * Eliminated warnings for 1.8.x
54
+ * Added a README file (which you should, of course, read)
55
+ * Tidied up test suite a bit, and made it MS Windows-friendly.
56
+ * Separated rd docs from source. They are now in the 'doc' directory. In
57
+ the future, I plan to use RDoc for this package.
58
+ * Eliminated warnings caused by worksheet.rb when $DEBUG mode was used
59
+ (method redefinitions).
60
+ * Renamed test cases to "tc_" for (foolish?) consistency with my other
61
+ packages.
62
+ * Removed the VERSION() class method - use the constant instead.
63
+
64
+ == 0.2.7 - 18-May-2003
65
+ * Modified worksheet.rb to truncate strings over 255 characters instead of
66
+ raising a MaxSizeError. This is what it should have been doing. Thanks
67
+ go to an anonymous sourceforge user.
68
+ * Minor modifications to test.rb and the MANIFEST
69
+
70
+ == 0.2.6 - 7-Apr-2003
71
+ * Fixed minor bug in the write_blank() method which was accidentally
72
+ reintroduced.
73
+ * The write_row() and write_column() methods now handle nil properly
74
+ * Fixed a bug in the write_url() method.
75
+ * Yet more unit tests added.
76
+ * Minor doc tweaks/corrections.
77
+ * Removed annoying MS Windows line formatting.
78
+
79
+ == 0.2.5 - 8-Mar-2003
80
+ * Added the format_row() and format_column() methods to worksheet.rb.
81
+ These are analogous to the set_row() and set_column() methods.
82
+ * Updated the test suite for testunit 0.1.8
83
+ * Fixed some bugs in the test suite
84
+ * Updated and fixed some documentation
85
+
86
+ == 0.2.4 - 30-Jan-2003
87
+ * Fixed a bug in the write_blank method. Thanks to moumar for the spot
88
+ and the patch.
89
+
90
+ == 0.2.3 - 15-Jan-2003
91
+ * Added the write_row and write_column methods
92
+ * Some optimization
93
+
94
+ == 0.2.2 - 20-Dec-2002
95
+ * Fixed variable name typo's in worksheet.rb and format.rb. Thanks
96
+ go to Mark Slagell for the spot.
97
+ * Modified the tarball directory layout a bit - nothing special
98
+ * Added a copyright notice
99
+ * Added a VERSION method to the Excel class (class method)
100
+ * Some documentation corrections
101
+
102
+ == 0.2.1 - 11-Dec-2002
103
+ * Fixed a bug with num_format property in Format class
104
+ * Added lots of documentation for Format class, mostly lifted
105
+ from John McNamara's documentation
106
+ * Added block-style constructors for Format class
107
+ * Added ability to pass Format instances to the add_format Workbook
108
+ method
109
+
110
+ == 0.2.0 - 3-Dec-2002
111
+ * Added formats!
112
+ * Minor fix in worksheet.rb
113
+ * Added verbose output for install.rb
114
+ * A few more tests
115
+
116
+ == 0.1.1 - 29-Nov-2002
117
+ * Tarball fix
118
+ * install.rb fix
119
+
120
+ == 0.1.0 - 27-Nov-2002
121
+ * Initial Release
122
+ * Based on version .21 of Spreadsheet::WriteExcel (by John McNamara)
123
+ * Well, technically, I did release version .11 of Spreadsheet::WriteExcel
124
+ on the web, but this is the first *official* release
data/CVS/Entries ADDED
@@ -0,0 +1,10 @@
1
+ /.project/1.2/Tue Oct 11 14:08:38 2005//
2
+ /CHANGES/1.14/Fri Feb 17 17:12:54 2006/-kb/
3
+ /MANIFEST/1.10/Mon Dec 5 02:05:39 2005/-kb/
4
+ /README/1.5/Tue Oct 11 17:06:12 2005/-kb/
5
+ /install.rb/1.8/Mon Dec 5 02:13:14 2005/-ko/
6
+ /spreadsheet-excel.gemspec/1.7/Fri Feb 17 03:44:27 2006/-kb/
7
+ D/doc////
8
+ D/examples////
9
+ D/lib////
10
+ D/test////
data/CVS/Repository ADDED
@@ -0,0 +1 @@
1
+ RubySpreadsheet
data/CVS/Root ADDED
@@ -0,0 +1 @@
1
+ :ext:hwyss@rubyspreadsheet.cvs.sourceforge.net:/cvsroot/rubyspreadsheet
data/README ADDED
@@ -0,0 +1,69 @@
1
+ == Description
2
+ This is a port of John McNamara's Perl module "Spreadsheet::WriteExcel". It
3
+ allows you to generate Microsoft Excel compatible spreadsheets (in
4
+ Excel 95 format) on *any* platform. These spreadsheets are viewable
5
+ with most other popular spreadsheet programs, including Gnumeric.
6
+
7
+ == Installation
8
+ === Standard Installation
9
+ ruby test/ts_all.rb (optional)
10
+ ruby install.rb
11
+
12
+ === Gem Installation
13
+ ruby test/ts_all.rb (optional)
14
+ ruby spreadsheet-excel.gemspec
15
+ gem install spreadsheet-excel-x.y.z.gem # where 'x.y.z' is the version
16
+
17
+ == Synopsis
18
+ require "spreadsheet/excel"
19
+ include Spreadsheet
20
+
21
+ workbook = Excel.new("test.xls")
22
+
23
+ format = Format.new
24
+ format.color = "green"
25
+ format.bold = true
26
+
27
+ worksheet = workbook.add_worksheet
28
+ worksheet.write(0, 0, "Hello", format)
29
+ worksheet.write(1, 1, ["Matz","Larry","Guido"])
30
+
31
+ workbook.close
32
+
33
+ == What it doesn't do
34
+ There is no support for formulas (yet).
35
+ There is no support for worksheets greater than 7 MB.
36
+ You cannot read/parse an existing spreadsheet with this package.
37
+
38
+ == Regarding formula support
39
+ Simple formulas are easy enough, but to handle complex formulas in a
40
+ reasonable fashion requires a parser. John used "Parse::RecDescent" in his
41
+ own code to parse formulas and I will need something similar to do so as
42
+ well. Since I'm not too good at parsing, and I don't personally have the
43
+ need for formula support, I'm more or less waiting for a patch.
44
+
45
+ == Regarding the 7MB limit
46
+ Getting past the 7 MB limit requires an interface to the MS structured
47
+ storage format. This doesn't exist (yet) in Ruby. For more on structured
48
+ storage documents, download this: http://www.i3a.org/pdf/wg1n1017.pdf
49
+ (there's a structured storage section). That, and there is information
50
+ about structured storage on the MSDN website at http://microsoft.msdn.com
51
+
52
+ == More information
53
+ See the documentation in the 'doc' directory for more details.
54
+
55
+ == Known Bugs
56
+ None that I'm aware of. If you find any, please log them on the project
57
+ page at http://rubyspreadsheet.sf.net.
58
+
59
+ == License
60
+ Ruby's
61
+
62
+ == Copyright
63
+ (C) 2005, Daniel J. Berger
64
+ All Rights Reserved
65
+
66
+ == Author
67
+ Daniel J. Berger
68
+ djberg96 at gmail dot com
69
+ IRC nickname: imperator/mok/rubyhacker1 (freenode)
data/doc/CVS/Entries ADDED
@@ -0,0 +1,3 @@
1
+ /format.txt/1.4/Mon Oct 10 22:39:01 2005//
2
+ /spreadsheet.txt/1.10/Fri Feb 17 03:43:30 2006/-ko/
3
+ D
@@ -0,0 +1 @@
1
+ RubySpreadsheet/doc
data/doc/CVS/Root ADDED
@@ -0,0 +1 @@
1
+ :ext:hwyss@rubyspreadsheet.cvs.sourceforge.net:/cvsroot/rubyspreadsheet
data/doc/format.txt ADDED
@@ -0,0 +1,330 @@
1
+ == Description
2
+ Format objects contain format information which is applied to a cell, or
3
+ group of of cells, in an Excel object.
4
+
5
+ == Instance Methods
6
+ Format#align
7
+ Returns the align property.
8
+
9
+ Format#align=(value = "off")
10
+ Sets the horizontal and vertical alignment within a cell. Vertical and
11
+ horizontal alignments can be combined. Valid arguments are:
12
+
13
+ Horizontal: left, right, fill, justify, merge
14
+ Vertical: top, vcenter, bottom, vjustify
15
+
16
+ Text can be aligned across two or more adjacent cells using the merge
17
+ property.
18
+
19
+ The vjustify (vertical justify) option can be used to provide automatic
20
+ text wrapping in a cell. The height of the cell will be adjusted to
21
+ accommodate the wrapped text. To specify where the text wraps use the
22
+ Format#text_wrap= method.
23
+
24
+ Formate#bg_color
25
+ Returns the value of the background color.
26
+
27
+ Format#bg_color=(value)
28
+ Sets the background color of a pattern. Patterns are defined via the
29
+ Format#pattern= method. If a pattern hasn't been defined
30
+ then a solid fill pattern is used as the default.
31
+
32
+ Format#bold
33
+ Returns the bold value of the format.
34
+
35
+ Format#bold=(weight)
36
+ Sets the bold property of the font. Values in the range 100..1000 are
37
+ also valid. 400 is normal, 700 is bold and 1000 is very bold. Some might
38
+ even say, daring.
39
+
40
+ You can also specify true or false, which sets the value to 1 and 0,
41
+ respectively.
42
+
43
+ Format#border
44
+ Returns the border format. The default is 0 (no border).
45
+
46
+ Format#border=(int)
47
+ Sets the border for a given cell. A cell border is comprised of a border
48
+ on the bottom, top, left and right.
49
+
50
+ Valid arguments are as follows:
51
+ 0 - No border
52
+ 1 - Thin single border
53
+ 2 - Medium single border
54
+ 3 - Dashed border
55
+ 4 - Dotted border
56
+ 5 - Thick single border
57
+ 6 - Double line border
58
+ 7 - Hair border
59
+
60
+ Also see the Format#top=, Format#bottom=, Format#left=, and Format#right=
61
+ methods.
62
+
63
+ Format#border_color
64
+ Returns the format border color. The default is black.
65
+
66
+ Format#border_color=(value)
67
+ Sets the color of the cell borders. Valid values are the same as for the
68
+ Format#color= method.
69
+
70
+ Also see the Format#bottom_color=, Format#top_color=, Format#left_color=,
71
+ and Format#right_color= methods.
72
+
73
+ Format#bottom
74
+ Returns the bottom border value. The default is 0 (no border).
75
+
76
+ Format#bottom=(integer)
77
+ Sets the bottom border of the cell. Valid arguments are the same as for the
78
+ Format#border= method.
79
+
80
+ Format#bottom_color
81
+ Returns the bottom border cell color value. The default is black.
82
+
83
+ Format#bottom_color=(value)
84
+ Sets the bottom cell border color. Valid values are the same as for the
85
+ Format#color= method.
86
+
87
+ Format#color
88
+ Returns the font color. The default is black.
89
+
90
+ Format#color=(value)
91
+ Sets the font color of text within a cell (not the cell itself). Any
92
+ integer from 8..63 is valid. The following strings are also recognized:
93
+
94
+ black, blue, brown, cyan, gray/grey, green, lime, magenta, navy, orange,
95
+ purple, red, silver, white, yellow
96
+
97
+ Format#fg_color=(value = "off")
98
+ Sets the foreground color of a pattern or uses a solid fill pattern if
99
+ a pattern has not been defined.
100
+
101
+ Format#font
102
+ Returns the font name used for text. The default is "Arial".
103
+
104
+ Format#font=(font_name)
105
+ Sets the font used. Excel can only display fonts that are installed on
106
+ the system that it is running on. Therefore it is best to use the fonts
107
+ that come as standard such as 'Arial', 'Times New Roman' or 'Courier New'.
108
+
109
+ Format#font_shadow
110
+ Returns the font shadow value.
111
+
112
+ Mac only.
113
+
114
+ Format#font_shadow=(value)
115
+ Sets the font shadow property. 0/1 or false/true may be used.
116
+
117
+ Mac only.
118
+
119
+ Format#italic
120
+ Returns the italic property for the font. The default is 0 (false).
121
+
122
+ Format#italic=(value)
123
+ Sets the italic property of the font.
124
+
125
+ You can also specify true or false, which sets the value to 1 and 0,
126
+ respectively.
127
+
128
+ Format#left
129
+ Returns the left border value for the format.
130
+
131
+ Format#left=(integer)
132
+ Sets the left border of the cell. Valid arguments are the same as for the
133
+ Format#border= method.
134
+
135
+ Format#left_color
136
+ Returns the left cell border color. The default is black.
137
+
138
+ Format#left_color=(value)
139
+ Sets the left cell border color. Valid values are the same as for the
140
+ Format#color= method.
141
+
142
+ Format#num_format
143
+ Returns the numerical format for numbers. The default is 1.
144
+
145
+ Format#num_format=(value)
146
+ This method is used to define the numerical format of a number in Excel.
147
+ It controls whether a number is displayed as an integer, a floating point
148
+ number, a date, a currency value or some other user defined format.
149
+
150
+ The numerical format of a cell can be specified by using a format string
151
+ or an index to one of Excel's built-in formats, e.g.
152
+
153
+ format1 = Format.new(:num_format => "d mmm yyyy")
154
+ format2 = Format.new(:num_format => 0x0f)
155
+ workbook.addformat(format1)
156
+ workbook.addformat(format2)
157
+
158
+ worksheet.write(0,0,36892.521,format1) -> 1 Jan 2001
159
+ worksheet.write(0,0,36892.521,format2) -> 1-Jan-01
160
+
161
+ Using format strings you can define very sophisticated formatting of numbers.
162
+ Assume each of these is separate and has been added to a workbook:
163
+
164
+ format.num_format = '0.000'
165
+ worksheet.write(0,0,3.1415926,format) -> 3.142
166
+
167
+ format.num_format = '#,##0'
168
+ worksheet.write(1,0,1234.56,format) -> 1,235
169
+
170
+ format.num_format = '#,##0.00'
171
+ worksheet.write(2,0,1234.56,format) -> 1,234.56
172
+
173
+ format.num_format = '0.00'
174
+ worksheet.write(3,0,49.99,format) -> 49.99
175
+
176
+ format.num_format = '�0.00'
177
+ worksheet.write(4,0,49.99,format) -> �49.99
178
+
179
+ format.num_format = '�0.00'
180
+ worksheet.write(5,0,49.99,format) -> �49.99
181
+
182
+ format.num_format = 'mm/dd/yy'
183
+ worksheet.write(6,0,36892.521,format) -> 01/01/01
184
+
185
+ format.num_format = 'mmm d yyyy'
186
+ worksheet.write(7,0,36892.521,format) -> Jan 1 2001
187
+
188
+ format.num_format = 'd mmmm yyyy'
189
+ worksheet.write(8,0,36892.521,format) -> 1 January 2001
190
+
191
+ format.num_format = 'dd/mm/yyyy hh:mm AM/PM'
192
+ worksheet.write(9,0,36892.521,format) -> 01/01/2001 12:30 AM
193
+
194
+ format.num_format = '0 "dollar and" .00 "cents"'
195
+ worksheet.write(10,0,1.87,format) -> 1 dollar and .87 cents
196
+
197
+ # Conditional formatting
198
+ format.num_format = '[Green]General;[Red]-General;General'
199
+ worksheet.write(11,0,123,format) -> > 0 Green
200
+ worksheet.write(12,0,-45,format) -> < 0 Red
201
+ worksheet.write(13,0, 0, format) -> = 0 Default colour
202
+
203
+ # Zip code
204
+ format.num_format = '00000'
205
+ worksheet.write(14,0,'01209',format)
206
+
207
+ Format#outline
208
+ Returns the outline property. The default is 0.
209
+
210
+ Mac only.
211
+
212
+ Format#outline=(value)
213
+ Sets outline property. Accepts 1/0 or true/false, respectively.
214
+
215
+ Mac only.
216
+
217
+ Format#pattern
218
+ Returns the background pattern value. The default is 0 (solid pattern).
219
+
220
+ Format#pattern=(int)
221
+ Sets the background pattern. Valid arguments are 0..18.
222
+
223
+ Format#right
224
+ Returns the right border value. The default is 0.
225
+
226
+ Format#right=(int)
227
+ Sets the right border of the cell. Valid arguments are the same as for the
228
+ Format#border= method.
229
+
230
+ Format#right_color
231
+ Returns the right cell border color. The default is black.
232
+
233
+ Format#right_color=(value)
234
+ Sets the right cell border color. Valid values are the same as for the
235
+ Format#color= method.
236
+
237
+ Format#rotation
238
+ Returns the rotation value. The default is 0 (no rotation).
239
+
240
+ Format#rotation=(int)
241
+ Sets the rotation of the text in the cell.
242
+
243
+ Valid arguments:
244
+ 0 - No rotation
245
+ 1 - Top to bottom
246
+ 2 - 90 degrees counter-clockwise
247
+ 3 - 90 degrees clockwise
248
+
249
+ Note that fractional rotation is not possible in the Excel 95 format.
250
+
251
+ Format#script
252
+ Returns the subscript/superscript property. The default is 0 (normal).
253
+
254
+ Format#script=(integer = 0)
255
+ Sets the subscript/superscript property of the font.
256
+
257
+ Valid arguments:
258
+ 0 = Normal
259
+ 1 = Superscript
260
+ 2 = Subscript
261
+
262
+ Format#shadow
263
+ Returns the shadow property value. The default is 0 (none).
264
+
265
+ Mac only.
266
+
267
+ Format#shadow=(value)
268
+ Sets the shadow property of the font. Accepts 1/0 or true/false, respectively.
269
+
270
+ Mac only.
271
+
272
+ Format#size
273
+ Returns the font size. The default font size is 10.
274
+
275
+ Format#size=(size)
276
+ Set the font size. Note that MS Excel adjusts the height of a row to
277
+ accommodate the largest font size in the row.
278
+
279
+ Format#text_justlast
280
+ Returns the justlast value. The default is 0.
281
+
282
+ Only applicable to Far Eastern versions of MS Excel.
283
+
284
+ Format#text_justlast=(value)
285
+ Sets the justlast value. 0/1 or false/true may be used here.
286
+
287
+ Only applicable to Far Eastern versions of MS Excel.
288
+
289
+ Format#text_wrap
290
+ Returns the text wrap value. The default is 0 (off).
291
+
292
+ Format#text_wrap=(value)
293
+ Turn text wrap on. Excel will adjust the height of the row to accommodate
294
+ the wrapped text. A similar effect can be obtained without newlines using
295
+ the Format#align= method.
296
+
297
+ Accepts 1/0 or true/false as valid values.
298
+
299
+ Format#top
300
+ Returns the top border value. The default is 0.
301
+
302
+ Format#top=(integer)
303
+ Sets the top border of the cell. Valid arguments are the same as for the
304
+ Format#border= method.
305
+
306
+ Format#top_color
307
+ Returns the top cell border color. The default value is black.
308
+
309
+ Format#top_color=(value)
310
+ Sets the top cell border color. Valid values are the same as for the
311
+ Format#color= method.
312
+
313
+ Format#underline
314
+ Returns the value of the underline property. The default value is 0 (none).
315
+
316
+ Format#underline=(value = 0)
317
+ Sets the underline property of the font.
318
+
319
+ Valid arguments:
320
+ 0/false - No underline
321
+ 1/true - Single underline
322
+ 2 - Double underline
323
+ 33 - Single accounting underline
324
+ 34 - Double accounting underline
325
+
326
+ Format#strikeout
327
+ Returns the strikeout value. The default is 0 (none).
328
+
329
+ Format#strikeout=(value)
330
+ Sets the strikeout property.