~ubuntu-branches/ubuntu/vivid/horae/vivid

« back to all changes in this revision

Viewing changes to 0CPAN/Spreadsheet-WriteExcel-2.15/examples/chess.pl

  • Committer: Bazaar Package Importer
  • Author(s): Carlo Segre
  • Date: 2006-12-26 11:54:29 UTC
  • Revision ID: james.westby@ubuntu.com-20061226115429-kjuhf6h9w6bohlwj
Tags: upstream-063
Import upstream version 063

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/perl -w
 
2
 
 
3
########################################################################
 
4
#
 
5
# Example of formatting using the Spreadsheet::WriteExcel module via
 
6
# property hashes.
 
7
#
 
8
# Setting format properties via hashes of values is useful when you have
 
9
# to deal with a large number of similar formats. Consider for example a
 
10
# chess board pattern with black squares, white unformatted squares and
 
11
# a border. This relatively simple example requires 14 separate Format
 
12
# objects although there are only 5 different properties: black
 
13
# background, top border, bottom border, left border and right border.
 
14
# Using property hashes it is possible to define these 5 sets of
 
15
# properties and then add them together to create the 14 Format
 
16
# configurations.
 
17
#
 
18
#
 
19
# reverse('�'), July 2001, John McNamara, jmcnamara@cpan.org
 
20
#
 
21
 
 
22
use strict;
 
23
use Spreadsheet::WriteExcel;
 
24
 
 
25
my $workbook  = Spreadsheet::WriteExcel->new("chess.xls");
 
26
my $worksheet = $workbook->add_worksheet();
 
27
 
 
28
 
 
29
# Some row and column formatting
 
30
$worksheet->set_column('B:I', 10);
 
31
 
 
32
for my $i (1..8) {
 
33
    $worksheet->set_row($i, 50);
 
34
}
 
35
 
 
36
 
 
37
# Define the property hashes
 
38
#
 
39
my %black = (
 
40
                'fg_color'  => 'black',
 
41
                'pattern'   => 1,
 
42
            );
 
43
 
 
44
my %top     = ( 'top'    => 6 );
 
45
my %bottom  = ( 'bottom' => 6 );
 
46
my %left    = ( 'left'   => 6 );
 
47
my %right   = ( 'right'  => 6 );
 
48
 
 
49
 
 
50
# Define the formats
 
51
#
 
52
my $format01 = $workbook->add_format(%top,    %left          );
 
53
my $format02 = $workbook->add_format(%top,    %black         );
 
54
my $format03 = $workbook->add_format(%top,                   );
 
55
my $format04 = $workbook->add_format(%top,    %right, %black );
 
56
 
 
57
my $format05 = $workbook->add_format(%left                   );
 
58
my $format06 = $workbook->add_format(%black                  );
 
59
my $format07 = $workbook->add_format(                        );
 
60
my $format08 = $workbook->add_format(%right,  %black         );
 
61
my $format09 = $workbook->add_format(%right                  );
 
62
my $format10 = $workbook->add_format(%left,   %black         );
 
63
 
 
64
my $format11 = $workbook->add_format(%bottom, %left,  %black );
 
65
my $format12 = $workbook->add_format(%bottom                 );
 
66
my $format13 = $workbook->add_format(%bottom, %black         );
 
67
my $format14 = $workbook->add_format(%bottom, %right         );
 
68
 
 
69
 
 
70
# Draw the pattern
 
71
$worksheet->write('B2', '', $format01);
 
72
$worksheet->write('C2', '', $format02);
 
73
$worksheet->write('D2', '', $format03);
 
74
$worksheet->write('E2', '', $format02);
 
75
$worksheet->write('F2', '', $format03);
 
76
$worksheet->write('G2', '', $format02);
 
77
$worksheet->write('H2', '', $format03);
 
78
$worksheet->write('I2', '', $format04);
 
79
 
 
80
$worksheet->write('B3', '', $format10);
 
81
$worksheet->write('C3', '', $format07);
 
82
$worksheet->write('D3', '', $format06);
 
83
$worksheet->write('E3', '', $format07);
 
84
$worksheet->write('F3', '', $format06);
 
85
$worksheet->write('G3', '', $format07);
 
86
$worksheet->write('H3', '', $format06);
 
87
$worksheet->write('I3', '', $format09);
 
88
 
 
89
$worksheet->write('B4', '', $format05);
 
90
$worksheet->write('C4', '', $format06);
 
91
$worksheet->write('D4', '', $format07);
 
92
$worksheet->write('E4', '', $format06);
 
93
$worksheet->write('F4', '', $format07);
 
94
$worksheet->write('G4', '', $format06);
 
95
$worksheet->write('H4', '', $format07);
 
96
$worksheet->write('I4', '', $format08);
 
97
 
 
98
$worksheet->write('B5', '', $format10);
 
99
$worksheet->write('C5', '', $format07);
 
100
$worksheet->write('D5', '', $format06);
 
101
$worksheet->write('E5', '', $format07);
 
102
$worksheet->write('F5', '', $format06);
 
103
$worksheet->write('G5', '', $format07);
 
104
$worksheet->write('H5', '', $format06);
 
105
$worksheet->write('I5', '', $format09);
 
106
 
 
107
$worksheet->write('B6', '', $format05);
 
108
$worksheet->write('C6', '', $format06);
 
109
$worksheet->write('D6', '', $format07);
 
110
$worksheet->write('E6', '', $format06);
 
111
$worksheet->write('F6', '', $format07);
 
112
$worksheet->write('G6', '', $format06);
 
113
$worksheet->write('H6', '', $format07);
 
114
$worksheet->write('I6', '', $format08);
 
115
 
 
116
$worksheet->write('B7', '', $format10);
 
117
$worksheet->write('C7', '', $format07);
 
118
$worksheet->write('D7', '', $format06);
 
119
$worksheet->write('E7', '', $format07);
 
120
$worksheet->write('F7', '', $format06);
 
121
$worksheet->write('G7', '', $format07);
 
122
$worksheet->write('H7', '', $format06);
 
123
$worksheet->write('I7', '', $format09);
 
124
 
 
125
$worksheet->write('B8', '', $format05);
 
126
$worksheet->write('C8', '', $format06);
 
127
$worksheet->write('D8', '', $format07);
 
128
$worksheet->write('E8', '', $format06);
 
129
$worksheet->write('F8', '', $format07);
 
130
$worksheet->write('G8', '', $format06);
 
131
$worksheet->write('H8', '', $format07);
 
132
$worksheet->write('I8', '', $format08);
 
133
 
 
134
$worksheet->write('B9', '', $format11);
 
135
$worksheet->write('C9', '', $format12);
 
136
$worksheet->write('D9', '', $format13);
 
137
$worksheet->write('E9', '', $format12);
 
138
$worksheet->write('F9', '', $format13);
 
139
$worksheet->write('G9', '', $format12);
 
140
$worksheet->write('H9', '', $format13);
 
141
$worksheet->write('I9', '', $format14);
 
142
 
 
143
 
 
144