write_xlsx 0.78.0 → 0.79.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/Changes +7 -0
- data/README.md +1 -1
- data/examples/chart_pie.rb +1 -1
- data/lib/write_xlsx/drawing.rb +1 -1
- data/lib/write_xlsx/package/vml.rb +194 -7
- data/lib/write_xlsx/sheets.rb +38 -5
- data/lib/write_xlsx/version.rb +1 -1
- data/lib/write_xlsx/workbook.rb +150 -55
- data/lib/write_xlsx/worksheet/page_setup.rb +5 -2
- data/lib/write_xlsx/worksheet.rb +136 -11
- data/test/helper.rb +1 -1
- data/test/perl_output/demo.xlsx +0 -0
- data/test/regression/images/black_150.jpg +0 -0
- data/test/regression/images/black_150.png +0 -0
- data/test/regression/images/black_150e.png +0 -0
- data/test/regression/images/black_300.jpg +0 -0
- data/test/regression/images/black_300.png +0 -0
- data/test/regression/images/black_300e.png +0 -0
- data/test/regression/images/black_72.jpg +0 -0
- data/test/regression/images/black_72.png +0 -0
- data/test/regression/images/black_72e.png +0 -0
- data/test/regression/images/black_96.jpg +0 -0
- data/test/regression/images/black_96.png +0 -0
- data/test/regression/test_chart_scatter15.rb +44 -0
- data/test/regression/test_header01.rb +28 -0
- data/test/regression/test_header02.rb +28 -0
- data/test/regression/test_header03.rb +31 -0
- data/test/regression/test_header_image01.rb +26 -0
- data/test/regression/test_header_image02.rb +33 -0
- data/test/regression/test_header_image03.rb +34 -0
- data/test/regression/test_header_image04.rb +34 -0
- data/test/regression/test_header_image05.rb +28 -0
- data/test/regression/test_header_image06.rb +32 -0
- data/test/regression/test_header_image07.rb +29 -0
- data/test/regression/test_header_image08.rb +33 -0
- data/test/regression/test_header_image09.rb +36 -0
- data/test/regression/test_header_image10.rb +36 -0
- data/test/regression/test_header_image11.rb +28 -0
- data/test/regression/test_header_image12.rb +28 -0
- data/test/regression/test_header_image13.rb +36 -0
- data/test/regression/test_header_image14.rb +36 -0
- data/test/regression/test_image22.rb +24 -0
- data/test/regression/test_image23.rb +30 -0
- data/test/regression/test_image24.rb +24 -0
- data/test/regression/test_image25.rb +24 -0
- data/test/regression/test_image26.rb +30 -0
- data/test/regression/test_image27.rb +24 -0
- data/test/regression/xlsx_files/chart_scatter15.xlsx +0 -0
- data/test/regression/xlsx_files/header01.xlsx +0 -0
- data/test/regression/xlsx_files/header02.xlsx +0 -0
- data/test/regression/xlsx_files/header03.xlsx +0 -0
- data/test/regression/xlsx_files/header_image01.xlsx +0 -0
- data/test/regression/xlsx_files/header_image02.xlsx +0 -0
- data/test/regression/xlsx_files/header_image03.xlsx +0 -0
- data/test/regression/xlsx_files/header_image04.xlsx +0 -0
- data/test/regression/xlsx_files/header_image05.xlsx +0 -0
- data/test/regression/xlsx_files/header_image06.xlsx +0 -0
- data/test/regression/xlsx_files/header_image07.xlsx +0 -0
- data/test/regression/xlsx_files/header_image08.xlsx +0 -0
- data/test/regression/xlsx_files/header_image09.xlsx +0 -0
- data/test/regression/xlsx_files/header_image10.xlsx +0 -0
- data/test/regression/xlsx_files/header_image11.xlsx +0 -0
- data/test/regression/xlsx_files/header_image12.xlsx +0 -0
- data/test/regression/xlsx_files/header_image13.xlsx +0 -0
- data/test/regression/xlsx_files/header_image14.xlsx +0 -0
- data/test/regression/xlsx_files/image22.xlsx +0 -0
- data/test/regression/xlsx_files/image23.xlsx +0 -0
- data/test/regression/xlsx_files/image24.xlsx +0 -0
- data/test/regression/xlsx_files/image25.xlsx +0 -0
- data/test/regression/xlsx_files/image26.xlsx +0 -0
- data/test/regression/xlsx_files/image27.xlsx +0 -0
- metadata +119 -1
@@ -0,0 +1,33 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionHeaderImage08 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_header_image08
|
14
|
+
@xlsx = 'header_image08.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.write('A1', 'Foo')
|
19
|
+
worksheet.write_comment('B2', 'Some text')
|
20
|
+
|
21
|
+
# Set the author to match the target XLSX file.
|
22
|
+
worksheet.comments_author = 'John'
|
23
|
+
|
24
|
+
worksheet.set_header('&L&G', nil, { :image_left => 'test/regression/images/red.jpg' })
|
25
|
+
|
26
|
+
|
27
|
+
workbook.close
|
28
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx,
|
29
|
+
[],
|
30
|
+
{'xl/worksheets/sheet1.xml' => [ '<pageMargins', '<pageSetup' ]}
|
31
|
+
)
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionHeaderImage09 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_header_image09
|
14
|
+
@xlsx = 'header_image09.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet1 = workbook.add_worksheet
|
17
|
+
worksheet2 = workbook.add_worksheet
|
18
|
+
|
19
|
+
worksheet1.write('A1', 'Foo')
|
20
|
+
worksheet1.write_comment('B2', 'Some text')
|
21
|
+
|
22
|
+
# Set the author to match the target XLSX file.
|
23
|
+
worksheet1.comments_author = 'John'
|
24
|
+
|
25
|
+
worksheet2.set_header('&L&G', nil, { :image_left => 'test/regression/images/red.jpg' })
|
26
|
+
|
27
|
+
workbook.close
|
28
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx,
|
29
|
+
[],
|
30
|
+
{
|
31
|
+
'xl/worksheets/sheet1.xml' => [ '<pageMargins', '<pageSetup' ],
|
32
|
+
'xl/worksheets/sheet2.xml' => [ '<pageMargins', '<pageSetup' ],
|
33
|
+
}
|
34
|
+
)
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionHeaderImage10 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_header_image10
|
14
|
+
@xlsx = 'header_image10.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet1 = workbook.add_worksheet
|
17
|
+
worksheet2 = workbook.add_worksheet
|
18
|
+
|
19
|
+
worksheet1.set_header('&L&G', nil, { :image_left => 'test/regression/images/red.jpg' })
|
20
|
+
|
21
|
+
worksheet2.write('A1', 'Foo')
|
22
|
+
worksheet2.write_comment('B2', 'Some text')
|
23
|
+
|
24
|
+
# Set the author to match the target XLSX file.
|
25
|
+
worksheet2.comments_author = 'John'
|
26
|
+
|
27
|
+
workbook.close
|
28
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx,
|
29
|
+
[],
|
30
|
+
{
|
31
|
+
'xl/worksheets/sheet1.xml' => [ '<pageMargins', '<pageSetup' ],
|
32
|
+
'xl/worksheets/sheet2.xml' => [ '<pageMargins', '<pageSetup' ],
|
33
|
+
}
|
34
|
+
)
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionHeaderImage11 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_header_image11
|
14
|
+
@xlsx = 'header_image11.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.set_header('&L&G', nil, { :image_left => 'test/regression/images/black_300.jpg' })
|
19
|
+
|
20
|
+
workbook.close
|
21
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx,
|
22
|
+
[],
|
23
|
+
{
|
24
|
+
'xl/worksheets/sheet1.xml' => [ '<pageMargins', '<pageSetup' ]
|
25
|
+
}
|
26
|
+
)
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionHeaderImage12 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_header_image12
|
14
|
+
@xlsx = 'header_image12.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.set_header('&L&G', nil, { :image_left => 'test/regression/images/black_300e.png' })
|
19
|
+
|
20
|
+
workbook.close
|
21
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx,
|
22
|
+
[],
|
23
|
+
{
|
24
|
+
'xl/worksheets/sheet1.xml' => [ '<pageMargins', '<pageSetup' ]
|
25
|
+
}
|
26
|
+
)
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionHeaderImage13 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_header_image13
|
14
|
+
@xlsx = 'header_image13.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.set_header(
|
19
|
+
'&L&G&C&G&R&G',
|
20
|
+
nil,
|
21
|
+
{
|
22
|
+
:image_left => 'test/regression/images/black_72.jpg',
|
23
|
+
:image_center => 'test/regression/images/black_150.jpg',
|
24
|
+
:image_right => 'test/regression/images/black_300.jpg'
|
25
|
+
}
|
26
|
+
)
|
27
|
+
|
28
|
+
workbook.close
|
29
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx,
|
30
|
+
[],
|
31
|
+
{
|
32
|
+
'xl/worksheets/sheet1.xml' => [ '<pageMargins', '<pageSetup' ]
|
33
|
+
}
|
34
|
+
)
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionHeaderImage14 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_header_image14
|
14
|
+
@xlsx = 'header_image14.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.set_header(
|
19
|
+
'&L&G&C&G&R&G',
|
20
|
+
nil,
|
21
|
+
{
|
22
|
+
:image_left => 'test/regression/images/black_72e.png',
|
23
|
+
:image_center => 'test/regression/images/black_150e.png',
|
24
|
+
:image_right => 'test/regression/images/black_300e.png'
|
25
|
+
}
|
26
|
+
)
|
27
|
+
|
28
|
+
workbook.close
|
29
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx,
|
30
|
+
[],
|
31
|
+
{
|
32
|
+
'xl/worksheets/sheet1.xml' => [ '<pageMargins', '<pageSetup' ]
|
33
|
+
}
|
34
|
+
)
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionImage22 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_image22
|
14
|
+
@xlsx = 'image22.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.insert_image('B2',
|
19
|
+
File.join(@test_dir, 'regression', 'images/black_300.jpg'))
|
20
|
+
|
21
|
+
workbook.close
|
22
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx)
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionImage23 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_image23
|
14
|
+
@xlsx = 'image23.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.insert_image('B2',
|
19
|
+
File.join(@test_dir, 'regression', 'images/black_72.jpg'))
|
20
|
+
worksheet.insert_image('B8',
|
21
|
+
File.join(@test_dir, 'regression', 'images/black_96.jpg'))
|
22
|
+
worksheet.insert_image('B13',
|
23
|
+
File.join(@test_dir, 'regression', 'images/black_150.jpg'))
|
24
|
+
worksheet.insert_image('B17',
|
25
|
+
File.join(@test_dir, 'regression', 'images/black_300.jpg'))
|
26
|
+
|
27
|
+
workbook.close
|
28
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx)
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionImage24 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_image24
|
14
|
+
@xlsx = 'image24.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.insert_image('B2',
|
19
|
+
File.join(@test_dir, 'regression', 'images/black_300.png'))
|
20
|
+
|
21
|
+
workbook.close
|
22
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx)
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionImage25 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_image25
|
14
|
+
@xlsx = 'image25.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.insert_image('B2',
|
19
|
+
File.join(@test_dir, 'regression', 'images/black_150.png'))
|
20
|
+
|
21
|
+
workbook.close
|
22
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx)
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionImage26 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_image26
|
14
|
+
@xlsx = 'image26.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.insert_image('B2',
|
19
|
+
File.join(@test_dir, 'regression', 'images/black_72.png'))
|
20
|
+
worksheet.insert_image('B8',
|
21
|
+
File.join(@test_dir, 'regression', 'images/black_96.png'))
|
22
|
+
worksheet.insert_image('B13',
|
23
|
+
File.join(@test_dir, 'regression', 'images/black_150.png'))
|
24
|
+
worksheet.insert_image('B17',
|
25
|
+
File.join(@test_dir, 'regression', 'images/black_300.png'))
|
26
|
+
|
27
|
+
workbook.close
|
28
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx)
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require 'helper'
|
3
|
+
|
4
|
+
class TestRegressionImage27 < Test::Unit::TestCase
|
5
|
+
def setup
|
6
|
+
setup_dir_var
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
File.delete(@xlsx) if File.exist?(@xlsx)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_image27
|
14
|
+
@xlsx = 'image27.xlsx'
|
15
|
+
workbook = WriteXLSX.new(@xlsx)
|
16
|
+
worksheet = workbook.add_worksheet
|
17
|
+
|
18
|
+
worksheet.insert_image('B2',
|
19
|
+
File.join(@test_dir, 'regression', 'images/mylogo.png'))
|
20
|
+
|
21
|
+
workbook.close
|
22
|
+
compare_xlsx_for_regression(File.join(@regression_output, @xlsx), @xlsx)
|
23
|
+
end
|
24
|
+
end
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|