caxlsx 3.0.2 → 3.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +31 -8
  3. data/README.md +4 -0
  4. data/examples/{image1.jpeg → assets/image1.jpeg} +0 -0
  5. data/examples/generate.rb +15 -0
  6. data/lib/axlsx/drawing/bar_3D_chart.rb +5 -8
  7. data/lib/axlsx/drawing/bar_chart.rb +13 -18
  8. data/lib/axlsx/drawing/bar_series.rb +18 -1
  9. data/lib/axlsx/drawing/pie_series.rb +1 -1
  10. data/lib/axlsx/package.rb +44 -6
  11. data/lib/axlsx/util/constants.rb +2 -1
  12. data/lib/axlsx/util/mime_type_utils.rb +1 -1
  13. data/lib/axlsx/util/validators.rb +1 -1
  14. data/lib/axlsx/util/zip_command.rb +73 -0
  15. data/lib/axlsx/version.rb +1 -1
  16. data/lib/axlsx/workbook/worksheet/cell.rb +9 -3
  17. data/lib/axlsx/workbook/worksheet/data_validation.rb +4 -4
  18. data/lib/axlsx/workbook/worksheet/pivot_table.rb +7 -2
  19. data/lib/axlsx/workbook/worksheet/pivot_table_cache_definition.rb +1 -1
  20. data/lib/axlsx/workbook/worksheet/row.rb +6 -4
  21. data/lib/axlsx/workbook/worksheet/table.rb +1 -1
  22. data/lib/axlsx/workbook/worksheet/worksheet.rb +7 -1
  23. data/lib/axlsx.rb +7 -5
  24. data/test/drawing/tc_bar_3D_chart.rb +26 -11
  25. data/test/drawing/tc_bar_chart.rb +26 -11
  26. data/test/drawing/tc_bar_series.rb +10 -1
  27. data/test/drawing/tc_drawing.rb +2 -2
  28. data/test/drawing/tc_hyperlink.rb +1 -1
  29. data/test/drawing/tc_one_cell_anchor.rb +1 -1
  30. data/test/drawing/tc_pic.rb +4 -4
  31. data/test/drawing/tc_pie_series.rb +2 -1
  32. data/test/fixtures/image1.gif +0 -0
  33. data/test/fixtures/image1.jpeg +0 -0
  34. data/test/fixtures/image1.jpg +0 -0
  35. data/test/fixtures/image1.png +0 -0
  36. data/test/fixtures/image1_fake.jpg +0 -0
  37. data/test/tc_helper.rb +0 -2
  38. data/test/tc_package.rb +80 -13
  39. data/test/util/tc_mime_type_utils.rb +1 -1
  40. data/test/util/tc_validators.rb +1 -1
  41. data/test/workbook/worksheet/tc_cell.rb +38 -0
  42. data/test/workbook/worksheet/tc_pivot_table.rb +8 -0
  43. data/test/workbook/worksheet/tc_pivot_table_cache_definition.rb +8 -0
  44. data/test/workbook/worksheet/tc_row.rb +21 -0
  45. data/test/workbook/worksheet/tc_table.rb +10 -0
  46. data/test/workbook/worksheet/tc_worksheet.rb +16 -18
  47. metadata +116 -137
  48. data/examples/2010_comments.rb +0 -17
  49. data/examples/anchor_swapping.rb +0 -28
  50. data/examples/auto_filter.rb +0 -25
  51. data/examples/basic_charts.rb +0 -58
  52. data/examples/chart_colors.rb +0 -88
  53. data/examples/colored_links.rb +0 -45
  54. data/examples/conditional_formatting/example_conditional_formatting.rb +0 -89
  55. data/examples/conditional_formatting/getting_barred.rb +0 -37
  56. data/examples/conditional_formatting/hitting_the_high_notes.rb +0 -37
  57. data/examples/conditional_formatting/scaled_colors.rb +0 -39
  58. data/examples/conditional_formatting/stop_and_go.rb +0 -37
  59. data/examples/data_validation.rb +0 -67
  60. data/examples/example.rb +0 -900
  61. data/examples/extractive.rb +0 -45
  62. data/examples/ios_preview.rb +0 -14
  63. data/examples/merge_cells.rb +0 -17
  64. data/examples/no_grid_with_borders.rb +0 -18
  65. data/examples/page_setup.rb +0 -11
  66. data/examples/pivot_table.rb +0 -39
  67. data/examples/pivot_test.rb +0 -63
  68. data/examples/sheet_protection.rb +0 -10
  69. data/examples/skydrive/real_example.rb +0 -63
  70. data/examples/split.rb +0 -16
  71. data/examples/styles.rb +0 -66
  72. data/examples/underline.rb +0 -13
  73. data/examples/wrap_text.rb +0 -21
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: caxlsx
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.2
4
+ version: 3.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Randy Morgan
8
8
  - Jurriaan Pruis
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-07-16 00:00:00.000000000 Z
12
+ date: 2021-09-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nokogiri
@@ -72,19 +72,19 @@ dependencies:
72
72
  - !ruby/object:Gem::Version
73
73
  version: 4.3.4
74
74
  - !ruby/object:Gem::Dependency
75
- name: mimemagic
75
+ name: marcel
76
76
  requirement: !ruby/object:Gem::Requirement
77
77
  requirements:
78
78
  - - "~>"
79
79
  - !ruby/object:Gem::Version
80
- version: '0.3'
80
+ version: '1.0'
81
81
  type: :runtime
82
82
  prerelease: false
83
83
  version_requirements: !ruby/object:Gem::Requirement
84
84
  requirements:
85
85
  - - "~>"
86
86
  - !ruby/object:Gem::Version
87
- version: '0.3'
87
+ version: '1.0'
88
88
  - !ruby/object:Gem::Dependency
89
89
  name: yard
90
90
  requirement: !ruby/object:Gem::Requirement
@@ -105,20 +105,14 @@ dependencies:
105
105
  requirements:
106
106
  - - "~>"
107
107
  - !ruby/object:Gem::Version
108
- version: '1.16'
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- version: 1.16.2
108
+ version: '2.3'
112
109
  type: :development
113
110
  prerelease: false
114
111
  version_requirements: !ruby/object:Gem::Requirement
115
112
  requirements:
116
113
  - - "~>"
117
114
  - !ruby/object:Gem::Version
118
- version: '1.16'
119
- - - ">="
120
- - !ruby/object:Gem::Version
121
- version: 1.16.2
115
+ version: '2.3'
122
116
  - !ruby/object:Gem::Dependency
123
117
  name: timecop
124
118
  requirement: !ruby/object:Gem::Requirement
@@ -151,33 +145,8 @@ files:
151
145
  - LICENSE
152
146
  - README.md
153
147
  - Rakefile
154
- - examples/2010_comments.rb
155
- - examples/anchor_swapping.rb
156
- - examples/auto_filter.rb
157
- - examples/basic_charts.rb
158
- - examples/chart_colors.rb
159
- - examples/colored_links.rb
160
- - examples/conditional_formatting/example_conditional_formatting.rb
161
- - examples/conditional_formatting/getting_barred.rb
162
- - examples/conditional_formatting/hitting_the_high_notes.rb
163
- - examples/conditional_formatting/scaled_colors.rb
164
- - examples/conditional_formatting/stop_and_go.rb
165
- - examples/data_validation.rb
166
- - examples/example.rb
167
- - examples/extractive.rb
168
- - examples/image1.jpeg
169
- - examples/ios_preview.rb
170
- - examples/merge_cells.rb
171
- - examples/no_grid_with_borders.rb
172
- - examples/page_setup.rb
173
- - examples/pivot_table.rb
174
- - examples/pivot_test.rb
175
- - examples/sheet_protection.rb
176
- - examples/skydrive/real_example.rb
177
- - examples/split.rb
178
- - examples/styles.rb
179
- - examples/underline.rb
180
- - examples/wrap_text.rb
148
+ - examples/assets/image1.jpeg
149
+ - examples/generate.rb
181
150
  - lib/axlsx.rb
182
151
  - lib/axlsx/content_type/abstract_content_type.rb
183
152
  - lib/axlsx/content_type/content_type.rb
@@ -256,6 +225,7 @@ files:
256
225
  - lib/axlsx/util/simple_typed_list.rb
257
226
  - lib/axlsx/util/storage.rb
258
227
  - lib/axlsx/util/validators.rb
228
+ - lib/axlsx/util/zip_command.rb
259
229
  - lib/axlsx/version.rb
260
230
  - lib/axlsx/workbook/defined_name.rb
261
231
  - lib/axlsx/workbook/defined_names.rb
@@ -403,6 +373,11 @@ files:
403
373
  - test/drawing/tc_view_3D.rb
404
374
  - test/drawing/tc_vml_drawing.rb
405
375
  - test/drawing/tc_vml_shape.rb
376
+ - test/fixtures/image1.gif
377
+ - test/fixtures/image1.jpeg
378
+ - test/fixtures/image1.jpg
379
+ - test/fixtures/image1.png
380
+ - test/fixtures/image1_fake.jpg
406
381
  - test/profile.rb
407
382
  - test/rels/tc_relationship.rb
408
383
  - test/rels/tc_relationships.rb
@@ -477,13 +452,13 @@ homepage: https://github.com/caxlsx/caxlsx
477
452
  licenses:
478
453
  - MIT
479
454
  metadata: {}
480
- post_install_message:
455
+ post_install_message:
481
456
  rdoc_options: []
482
457
  require_paths:
483
458
  - lib
484
459
  required_ruby_version: !ruby/object:Gem::Requirement
485
460
  requirements:
486
- - - "~>"
461
+ - - ">="
487
462
  - !ruby/object:Gem::Version
488
463
  version: '2.3'
489
464
  required_rubygems_version: !ruby/object:Gem::Requirement
@@ -492,128 +467,132 @@ required_rubygems_version: !ruby/object:Gem::Requirement
492
467
  - !ruby/object:Gem::Version
493
468
  version: '0'
494
469
  requirements: []
495
- rubyforge_project:
496
- rubygems_version: 2.6.12
497
- signing_key:
470
+ rubygems_version: 3.0.9
471
+ signing_key:
498
472
  specification_version: 4
499
473
  summary: Excel OOXML (xlsx) with charts, styles, images and autowidth columns.
500
474
  test_files:
501
- - test/benchmark.rb
502
- - test/content_type/tc_content_type.rb
503
- - test/content_type/tc_default.rb
504
- - test/content_type/tc_override.rb
505
- - test/doc_props/tc_app.rb
506
- - test/doc_props/tc_core.rb
507
- - test/drawing/tc_area_chart.rb
508
- - test/drawing/tc_area_series.rb
509
- - test/drawing/tc_axes.rb
510
- - test/drawing/tc_axis.rb
511
- - test/drawing/tc_bar_3D_chart.rb
512
- - test/drawing/tc_bar_chart.rb
513
- - test/drawing/tc_bar_series.rb
514
- - test/drawing/tc_bubble_chart.rb
515
- - test/drawing/tc_bubble_series.rb
475
+ - test/drawing/tc_num_data.rb
476
+ - test/drawing/tc_two_cell_anchor.rb
477
+ - test/drawing/tc_view_3D.rb
478
+ - test/drawing/tc_series_title.rb
516
479
  - test/drawing/tc_cat_axis.rb
517
- - test/drawing/tc_cat_axis_data.rb
518
480
  - test/drawing/tc_chart.rb
481
+ - test/drawing/tc_num_val.rb
482
+ - test/drawing/tc_axis.rb
483
+ - test/drawing/tc_line_chart.rb
484
+ - test/drawing/tc_marker.rb
485
+ - test/drawing/tc_bubble_series.rb
519
486
  - test/drawing/tc_d_lbls.rb
520
- - test/drawing/tc_data_source.rb
521
- - test/drawing/tc_drawing.rb
522
- - test/drawing/tc_graphic_frame.rb
523
- - test/drawing/tc_hyperlink.rb
487
+ - test/drawing/tc_str_val.rb
488
+ - test/drawing/tc_bar_chart.rb
524
489
  - test/drawing/tc_line_3d_chart.rb
525
- - test/drawing/tc_line_chart.rb
490
+ - test/drawing/tc_cat_axis_data.rb
491
+ - test/drawing/tc_area_chart.rb
526
492
  - test/drawing/tc_line_series.rb
527
- - test/drawing/tc_marker.rb
528
- - test/drawing/tc_named_axis_data.rb
529
- - test/drawing/tc_num_data.rb
530
- - test/drawing/tc_num_val.rb
531
- - test/drawing/tc_one_cell_anchor.rb
493
+ - test/drawing/tc_scatter_series.rb
494
+ - test/drawing/tc_bar_series.rb
495
+ - test/drawing/tc_hyperlink.rb
532
496
  - test/drawing/tc_pic.rb
533
- - test/drawing/tc_picture_locking.rb
534
- - test/drawing/tc_pie_3D_chart.rb
535
- - test/drawing/tc_pie_series.rb
536
- - test/drawing/tc_scaling.rb
497
+ - test/drawing/tc_named_axis_data.rb
498
+ - test/drawing/tc_bubble_chart.rb
499
+ - test/drawing/tc_str_data.rb
500
+ - test/drawing/tc_drawing.rb
537
501
  - test/drawing/tc_scatter_chart.rb
538
- - test/drawing/tc_scatter_series.rb
539
- - test/drawing/tc_ser_axis.rb
540
502
  - test/drawing/tc_series.rb
541
- - test/drawing/tc_series_title.rb
542
- - test/drawing/tc_str_data.rb
543
- - test/drawing/tc_str_val.rb
544
503
  - test/drawing/tc_title.rb
545
- - test/drawing/tc_two_cell_anchor.rb
546
- - test/drawing/tc_val_axis.rb
547
- - test/drawing/tc_view_3D.rb
548
- - test/drawing/tc_vml_drawing.rb
504
+ - test/drawing/tc_ser_axis.rb
505
+ - test/drawing/tc_picture_locking.rb
506
+ - test/drawing/tc_pie_series.rb
549
507
  - test/drawing/tc_vml_shape.rb
550
- - test/profile.rb
551
- - test/rels/tc_relationship.rb
552
- - test/rels/tc_relationships.rb
508
+ - test/drawing/tc_axes.rb
509
+ - test/drawing/tc_vml_drawing.rb
510
+ - test/drawing/tc_pie_3D_chart.rb
511
+ - test/drawing/tc_area_series.rb
512
+ - test/drawing/tc_graphic_frame.rb
513
+ - test/drawing/tc_one_cell_anchor.rb
514
+ - test/drawing/tc_data_source.rb
515
+ - test/drawing/tc_val_axis.rb
516
+ - test/drawing/tc_scaling.rb
517
+ - test/drawing/tc_bar_3D_chart.rb
518
+ - test/util/tc_simple_typed_list.rb
519
+ - test/util/tc_mime_type_utils.rb
520
+ - test/util/tc_validators.rb
521
+ - test/util/tc_serialized_attributes.rb
522
+ - test/tc_axlsx.rb
523
+ - test/stylesheet/tc_fill.rb
553
524
  - test/stylesheet/tc_border.rb
525
+ - test/stylesheet/tc_gradient_stop.rb
526
+ - test/stylesheet/tc_gradient_fill.rb
527
+ - test/stylesheet/tc_table_style.rb
528
+ - test/stylesheet/tc_font.rb
529
+ - test/stylesheet/tc_pattern_fill.rb
530
+ - test/stylesheet/tc_color.rb
531
+ - test/stylesheet/tc_num_fmt.rb
532
+ - test/stylesheet/tc_styles.rb
554
533
  - test/stylesheet/tc_border_pr.rb
555
- - test/stylesheet/tc_cell_alignment.rb
556
534
  - test/stylesheet/tc_cell_protection.rb
535
+ - test/stylesheet/tc_xf.rb
557
536
  - test/stylesheet/tc_cell_style.rb
558
- - test/stylesheet/tc_color.rb
537
+ - test/stylesheet/tc_table_styles.rb
559
538
  - test/stylesheet/tc_dxf.rb
560
- - test/stylesheet/tc_fill.rb
561
- - test/stylesheet/tc_font.rb
562
- - test/stylesheet/tc_gradient_fill.rb
563
- - test/stylesheet/tc_gradient_stop.rb
564
- - test/stylesheet/tc_num_fmt.rb
565
- - test/stylesheet/tc_pattern_fill.rb
566
- - test/stylesheet/tc_styles.rb
567
- - test/stylesheet/tc_table_style.rb
568
539
  - test/stylesheet/tc_table_style_element.rb
569
- - test/stylesheet/tc_table_styles.rb
570
- - test/stylesheet/tc_xf.rb
571
- - test/tc_axlsx.rb
540
+ - test/stylesheet/tc_cell_alignment.rb
572
541
  - test/tc_helper.rb
542
+ - test/doc_props/tc_core.rb
543
+ - test/doc_props/tc_app.rb
544
+ - test/content_type/tc_override.rb
545
+ - test/content_type/tc_content_type.rb
546
+ - test/content_type/tc_default.rb
547
+ - test/rels/tc_relationship.rb
548
+ - test/rels/tc_relationships.rb
549
+ - test/profile.rb
550
+ - test/fixtures/image1_fake.jpg
551
+ - test/fixtures/image1.jpeg
552
+ - test/fixtures/image1.gif
553
+ - test/fixtures/image1.png
554
+ - test/fixtures/image1.jpg
555
+ - test/benchmark.rb
573
556
  - test/tc_package.rb
574
- - test/util/tc_mime_type_utils.rb
575
- - test/util/tc_serialized_attributes.rb
576
- - test/util/tc_simple_typed_list.rb
577
- - test/util/tc_validators.rb
578
- - test/workbook/tc_defined_name.rb
579
- - test/workbook/tc_shared_strings_table.rb
580
- - test/workbook/tc_workbook.rb
581
557
  - test/workbook/tc_workbook_view.rb
582
- - test/workbook/worksheet/auto_filter/tc_auto_filter.rb
583
- - test/workbook/worksheet/auto_filter/tc_filter_column.rb
584
- - test/workbook/worksheet/auto_filter/tc_filters.rb
585
- - test/workbook/worksheet/tc_break.rb
586
- - test/workbook/worksheet/tc_cell.rb
587
- - test/workbook/worksheet/tc_cfvo.rb
588
- - test/workbook/worksheet/tc_col.rb
589
- - test/workbook/worksheet/tc_color_scale.rb
590
- - test/workbook/worksheet/tc_comment.rb
591
- - test/workbook/worksheet/tc_comments.rb
592
- - test/workbook/worksheet/tc_conditional_formatting.rb
558
+ - test/workbook/tc_defined_name.rb
593
559
  - test/workbook/worksheet/tc_data_bar.rb
560
+ - test/workbook/worksheet/tc_worksheet_hyperlink.rb
594
561
  - test/workbook/worksheet/tc_data_validation.rb
595
- - test/workbook/worksheet/tc_date_time_converter.rb
596
- - test/workbook/worksheet/tc_header_footer.rb
597
- - test/workbook/worksheet/tc_icon_set.rb
598
- - test/workbook/worksheet/tc_outline_pr.rb
599
- - test/workbook/worksheet/tc_page_margins.rb
600
- - test/workbook/worksheet/tc_page_set_up_pr.rb
601
- - test/workbook/worksheet/tc_page_setup.rb
602
- - test/workbook/worksheet/tc_pane.rb
603
- - test/workbook/worksheet/tc_pivot_table.rb
604
562
  - test/workbook/worksheet/tc_pivot_table_cache_definition.rb
605
- - test/workbook/worksheet/tc_print_options.rb
606
563
  - test/workbook/worksheet/tc_protected_range.rb
607
- - test/workbook/worksheet/tc_rich_text.rb
608
- - test/workbook/worksheet/tc_rich_text_run.rb
609
- - test/workbook/worksheet/tc_row.rb
610
564
  - test/workbook/worksheet/tc_selection.rb
565
+ - test/workbook/worksheet/tc_rich_text.rb
566
+ - test/workbook/worksheet/tc_date_time_converter.rb
567
+ - test/workbook/worksheet/tc_table_style_info.rb
568
+ - test/workbook/worksheet/tc_conditional_formatting.rb
569
+ - test/workbook/worksheet/tc_page_setup.rb
570
+ - test/workbook/worksheet/tc_comments.rb
571
+ - test/workbook/worksheet/tc_sheet_view.rb
611
572
  - test/workbook/worksheet/tc_sheet_calc_pr.rb
612
- - test/workbook/worksheet/tc_sheet_format_pr.rb
573
+ - test/workbook/worksheet/tc_color_scale.rb
574
+ - test/workbook/worksheet/tc_worksheet.rb
575
+ - test/workbook/worksheet/tc_rich_text_run.rb
613
576
  - test/workbook/worksheet/tc_sheet_pr.rb
577
+ - test/workbook/worksheet/auto_filter/tc_filters.rb
578
+ - test/workbook/worksheet/auto_filter/tc_auto_filter.rb
579
+ - test/workbook/worksheet/auto_filter/tc_filter_column.rb
580
+ - test/workbook/worksheet/tc_cell.rb
614
581
  - test/workbook/worksheet/tc_sheet_protection.rb
615
- - test/workbook/worksheet/tc_sheet_view.rb
582
+ - test/workbook/worksheet/tc_pane.rb
583
+ - test/workbook/worksheet/tc_header_footer.rb
616
584
  - test/workbook/worksheet/tc_table.rb
617
- - test/workbook/worksheet/tc_table_style_info.rb
618
- - test/workbook/worksheet/tc_worksheet.rb
619
- - test/workbook/worksheet/tc_worksheet_hyperlink.rb
585
+ - test/workbook/worksheet/tc_page_margins.rb
586
+ - test/workbook/worksheet/tc_cfvo.rb
587
+ - test/workbook/worksheet/tc_col.rb
588
+ - test/workbook/worksheet/tc_pivot_table.rb
589
+ - test/workbook/worksheet/tc_break.rb
590
+ - test/workbook/worksheet/tc_sheet_format_pr.rb
591
+ - test/workbook/worksheet/tc_print_options.rb
592
+ - test/workbook/worksheet/tc_comment.rb
593
+ - test/workbook/worksheet/tc_outline_pr.rb
594
+ - test/workbook/worksheet/tc_row.rb
595
+ - test/workbook/worksheet/tc_icon_set.rb
596
+ - test/workbook/worksheet/tc_page_set_up_pr.rb
597
+ - test/workbook/tc_shared_strings_table.rb
598
+ - test/workbook/tc_workbook.rb
@@ -1,17 +0,0 @@
1
- #!/usr/bin/env ruby -w -s
2
- # -*- coding: utf-8 -*-
3
- $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
4
-
5
- #```ruby
6
- require 'axlsx'
7
- p = Axlsx::Package.new
8
- p.workbook.add_worksheet(:name => 'Excel 2010 comments') do |sheet|
9
- sheet.add_row ['Cell with visible comment']
10
- sheet.add_row
11
- sheet.add_row
12
- sheet.add_row ['Cell with hidden comment']
13
-
14
- sheet.add_comment :ref => 'A1', :author => 'XXX', :text => 'Visibile'
15
- sheet.add_comment :ref => 'A4', :author => 'XXX', :text => 'Hidden', :visible => false
16
- end
17
- p.serialize('excel_2010_comment_test.xlsx')
@@ -1,28 +0,0 @@
1
- $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
2
- require 'axlsx'
3
- xls = Axlsx::Package.new
4
- wb = xls.workbook
5
- wb.add_worksheet do |ws|
6
- img = File.expand_path('../image1.jpeg', __FILE__)
7
- ws.add_image(:image_src => img) do |image|
8
- image.start_at 2, 2
9
- image.end_at 5, 5
10
- end
11
- end
12
- wb.add_worksheet do |ws|
13
- img = File.expand_path('../image1.jpeg', __FILE__)
14
- ws.add_image(:image_src => img, :start_at => "B2") do |image|
15
- image.width = 70
16
- image.height = 50
17
- end
18
- end
19
- wb.add_worksheet do |ws|
20
- img = File.expand_path('../image1.jpeg', __FILE__)
21
- ws.add_image(:image_src => img, :start_at => [1,1]) do |image|
22
- image.end_at "E7"
23
- end
24
- end
25
-
26
-
27
-
28
- xls.serialize 'anchor.xlsx'
@@ -1,25 +0,0 @@
1
- #!/usr/bin/env ruby -w -s
2
- # -*- coding: utf-8 -*-
3
-
4
- $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
5
- require 'axlsx'
6
- Axlsx::Package.new do |p|
7
- p.workbook.add_worksheet(:name => "Table") do |sheet|
8
- sheet.add_row ["Build Matrix"]
9
- sheet.add_row ["Build", "Duration", "Finished", "Rvm"]
10
- sheet.add_row ["19.1", "1 min 32 sec", "about 10 hours ago", "1.8.7"]
11
- sheet.add_row ["19.2", "1 min 28 sec", "about 10 hours ago", "1.9.2"]
12
- sheet.add_row ["19.3", "1 min 35 sec", "about 10 hours ago", "1.9.3"]
13
- sheet.auto_filter = 'A2:D5'
14
- sheet.auto_filter.add_column 3, :filters, :filter_items => ['1.9.2']
15
- end
16
- p.workbook.add_worksheet(:name => "Table 2") do |sheet|
17
- sheet.add_row ["Build Matrix"]
18
- sheet.add_row ["Build", "Duration", "Finished", "Rvm"]
19
- sheet.add_row ["19.1", "1 min 32 sec", "about 10 hours ago", "1.8.7"]
20
- sheet.add_row ["19.2", "1 min 28 sec", "about 10 hours ago", "1.9.2"]
21
- sheet.add_row ["19.3", "1 min 35 sec", "about 10 hours ago", "1.9.3"]
22
- sheet.auto_filter = 'A2:D5'
23
- sheet.auto_filter.add_column 3, :filters, :filter_items => ['1.9.2']
24
- end
25
- end.serialize('auto_filter.xlsx')
@@ -1,58 +0,0 @@
1
- $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
2
- require 'axlsx'
3
- p = Axlsx::Package.new
4
- wb = p.workbook
5
-
6
- # Pie Chart
7
- wb.add_worksheet(:name => "Pie Chart") do |sheet|
8
- sheet.add_row ["First", "Second", "Third", "Fourth"]
9
- sheet.add_row [1, 2, 3, 4]
10
- sheet.add_chart(Axlsx::Pie3DChart, :start_at => [0,2], :end_at => [5, 15], :title=> 'dark corner here') do |chart|
11
- chart.add_series :data => sheet["A2:D2"], :labels => sheet["A1:D1"]
12
- chart.d_lbls.show_val = true
13
- chart.d_lbls.show_percent = true
14
- chart.d_lbls.d_lbl_pos = :outEnd
15
- chart.d_lbls.show_leader_lines = true
16
- end
17
- end
18
-
19
- # line chart
20
- wb.add_worksheet(:name => "Line Chart") do |sheet|
21
- sheet.add_row ['1', '2', '3', '4']
22
- sheet.add_row [1, 2, 3, '=sum(A2:C2)']
23
- sheet.add_chart(Axlsx::Line3DChart, :start_at => [0,2], :end_at => [5, 15], :title => "Chart") do |chart|
24
- chart.add_series :data => sheet["A2:D2"], :labels => sheet["A1:D1"], :title => 'bob'
25
- chart.d_lbls.show_val = true
26
- chart.d_lbls.show_cat_name = true
27
- chart.catAxis.tick_lbl_pos = :none
28
-
29
- end
30
- end
31
-
32
- # bar chart
33
- wb.add_worksheet(:name => "Bar Chart") do |sheet|
34
- sheet.add_row ["A Simple Bar Chart"]
35
- sheet.add_row ["First", "Second", "Third"]
36
- sheet.add_row [1, 2, 3]
37
- sheet.add_chart(Axlsx::Bar3DChart, :start_at => "A4", :end_at => "F17") do |chart|
38
- chart.add_series :data => sheet["A3:C3"], :labels => sheet["A2:C2"], :title => sheet["A1"]
39
- chart.valAxis.label_rotation = -45
40
- chart.catAxis.label_rotation = 45
41
- chart.d_lbls.d_lbl_pos = :outEnd
42
- chart.d_lbls.show_val = true
43
-
44
- chart.catAxis.tick_lbl_pos = :none
45
- end
46
- end
47
-
48
- # specifying colors and title
49
- wb.add_worksheet(:name => "Colored Pie Chart") do |sheet|
50
- sheet.add_row ["First", "Second", "Third", "Fourth"]
51
- sheet.add_row [1, 2, 3, "=PRODUCT(A2:C2)"]
52
- sheet.add_chart(Axlsx::Pie3DChart, :start_at => [0,2], :end_at => [5, 15], :title => "example 3: Pie Chart") do |chart|
53
- chart.add_series :data => sheet["A2:D2"], :labels => ["A1:D1"], :colors => ['FF0000', '00FF00', '0000FF']
54
- end
55
- end
56
-
57
- p.serialize('basic_charts.xlsx')
58
-
@@ -1,88 +0,0 @@
1
- #!/usr/bin/env ruby -w -s
2
- # -*- coding: utf-8 -*-
3
- $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
4
- require 'axlsx'
5
-
6
- p = Axlsx::Package.new
7
- wb = p.workbook
8
-
9
- ##Generating A Bar Chart
10
-
11
- wb.add_worksheet(:name => "Bar Chart") do |sheet|
12
- sheet.add_row ["A Simple Bar Chart"]
13
- sheet.add_row ["First", "Second", "Third"]
14
- sheet.add_row [1,2,3.5]
15
- sheet.add_chart(Axlsx::Bar3DChart, :start_at => "A4", :end_at => "F17", :title => sheet["A1"]) do |chart|
16
- chart.add_series :data => sheet["A3:C3"], :labels => sheet["A2:C2"], :colors => ['FF0000', '00FF00', '0000FF'], :color => "000000"
17
- chart.valAxis.label_rotation = -45
18
- chart.catAxis.label_rotation = 45
19
- end
20
- end
21
-
22
- ##Generating A Bar Chart without data in the sheet
23
-
24
- wb.add_worksheet(:name => "Hard Bar Chart") do |sheet|
25
- sheet.add_chart(Axlsx::Bar3DChart, :start_at => "A4", :end_at => "F17", :title => "hard code chart") do |chart|
26
- chart.add_series :data => [1,3,5], :labels => ['a', 'b', 'c'], :colors => ['FF0000', '00FF00', '0000FF']
27
- chart.valAxis.label_rotation = -45
28
- chart.catAxis.label_rotation = 45
29
- end
30
- end
31
-
32
-
33
- ##Generating A Pie Chart
34
-
35
- wb.add_worksheet(:name => "Pie Chart") do |sheet|
36
- sheet.add_row ["First", "Second", "Third", "Fourth"]
37
- sheet.add_row [1, 2, 3, "=PRODUCT(A2:C2)"]
38
- sheet.add_chart(Axlsx::Pie3DChart, :start_at => [0,2], :end_at => [5, 15], :title => "example 3: Pie Chart") do |chart|
39
- chart.add_series :data => sheet["A2:D2"], :labels => sheet["A1:D1"], :colors => ['FF0000', '00FF00', '0000FF', '000000']
40
- end
41
- end
42
-
43
- # Line Chart
44
-
45
- wb.add_worksheet(:name => "Line Chart") do |sheet|
46
- sheet.add_row ["First", 1, 5, 7, 9]
47
- sheet.add_row ["Second", 5, 2, 14, 9]
48
- sheet.add_chart(Axlsx::Line3DChart, :title => "example 6: Line Chart", :rotX => 30, :rotY => 30) do |chart|
49
- chart.start_at 0, 2
50
- chart.end_at 10, 15
51
- chart.add_series :data => sheet["B1:E1"], :title => sheet["A1"], :color => "FF0000"
52
- chart.add_series :data => sheet["B2:E2"], :title => sheet["A2"], :color => "00FF00"
53
- end
54
- end
55
-
56
- wb.add_worksheet(:name => 'Line Chart with Axis colors') do |sheet|
57
- sheet.add_row ["First", 1, 5, 7, 9]
58
- sheet.add_row ["Second", 5, 2, 14, 9]
59
- sheet.add_chart(Axlsx::Line3DChart, :title => "example 7: Flat Line Chart", :rot_x => 0, :perspective => 0) do |chart|
60
- chart.valAxis.color = "FFFF00"
61
- chart.catAxis.color = "00FFFF"
62
- chart.serAxis.delete = true
63
- chart.start_at 0, 2
64
- chart.end_at 10, 15
65
- chart.add_series :data => sheet["B1:E1"], :title => sheet["A1"], :color => "FF0000"
66
- chart.add_series :data => sheet["B2:E2"], :title => sheet["A2"], :color => "00FF00"
67
- end
68
-
69
- end
70
-
71
- ##Generating A Scatter Chart
72
-
73
- wb.add_worksheet(:name => "Scatter Chart") do |sheet|
74
- sheet.add_row ["First", 1, 5, 7, 9]
75
- sheet.add_row ["", 1, 25, 49, 81]
76
- sheet.add_row ["Second", 5, 2, 14, 9]
77
- sheet.add_row ["", 5, 10, 15, 20]
78
- sheet.add_chart(Axlsx::ScatterChart, :title => "example 7: Scatter Chart") do |chart|
79
- chart.start_at 0, 4
80
- chart.end_at 10, 19
81
- chart.add_series :xData => sheet["B1:E1"], :yData => sheet["B2:E2"], :title => sheet["A1"], :color => '00FF00'
82
- chart.add_series :xData => sheet["B3:E3"], :yData => sheet["B4:E4"], :title => sheet["A3"], :color => 'FF0000'
83
- end
84
- end
85
-
86
-
87
- p.validate.each { |e| puts e.message }
88
- p.serialize 'chart_colors.xlsx'
@@ -1,45 +0,0 @@
1
- require 'axlsx'
2
-
3
- p = Axlsx::Package.new
4
- wb = p.workbook
5
-
6
- # Each style only needs to be declared once in the workbook.
7
- s = wb.styles
8
- title_cell = s.add_style sz: 14, alignment: { horizontal: :center }
9
- black_cell = s.add_style sz: 10, alignment: { horizontal: :center }
10
- blue_link = s.add_style fg_color: '0000FF'
11
-
12
- # Create summary sheet
13
- sum_sheet = wb.add_worksheet name: 'Summary'
14
- sum_sheet.add_row ['Test Results'], sz: 16
15
- sum_sheet.add_row
16
- sum_sheet.add_row
17
- sum_sheet.add_row ['Note: Blue cells below are links to the Log sheet'], sz: 10
18
- sum_sheet.add_row
19
- sum_sheet.add_row ['ID', 'Type', 'Match', 'Mismatch', 'Diffs', 'Errors', 'Result'], style: title_cell
20
-
21
- sum_sheet.column_widths 10, 10, 1 0, 11, 10, 10, 10
22
-
23
- # Starting data row in summary spreadsheet (after header info)
24
- current_row = 7
25
-
26
- # Create Log Sheet
27
- log_sheet = wb.add_worksheet name: 'Log'
28
- log_sheet.column_widths 10
29
- log_sheet.add_row ['Log Detail'], sz: 16
30
- log_sheet.add_row
31
-
32
- # Add rows to summary sheet
33
- (1..10).each do |sid|
34
- sum_sheet.add_row [sid, 'test', '1', '2', '3', '4', '5'], style: black_cell
35
-
36
- if sid.odd?
37
- link = "A#{current_row}"
38
- sum_sheet[link].style = blue_link
39
- sum_sheet.add_hyperlink location: "'Log'!A#{current_row}", target: :sheet, ref: link
40
- end
41
-
42
- current_row += 1
43
- end
44
-
45
- p.serialize 'where_is_my_color.xlsx'