t/022_keep_leading_zeros.t
t/023_relative_values.t
t/024_image.t
-t/025_freezepanes.t
t/998_pod.t
t/999_pod_coverage.t
t/mock.pm
use Excel::Template::Element;
}
+sub render {
+ my $self = shift;
+ my ($context) = @_;
+
+ my $path = $context->get( $self, 'PATH' );
+ my ($row, $col, $offset, $scale) = map {
+ $context->get($self, $_)
+ } qw( ROW COL OFFSET SCALE );
+
+ my @offsets = (0,0);
+ if ( $offset =~ /^\s*([\d.]+)\s*,\s*([\d.]+)/ ) {
+ @offsets = ($1,$2);
+ }
+
+ my @scales = (0,0);
+ if ( $scale =~ /^\s*([\d.]+)\s*,\s*([\d.]+)/ ) {
+ @scales = ($1,$2);
+ }
+
+ $context->active_worksheet->insert_image(
+ $row, $col, $path, @offsets, @scales,
+ );
+
+ return 1;
+}
+
+sub deltas {
+ return {
+ COL => +1,
+ };
+}
+
1;
__END__
=head1 USAGE
- <image path="/Some/Full/Path"/>
+ <image path="/Some/Full/Path" />
+ <image path="/Some/Full/Path" offset="2,5" />
+ <image path="/Some/Full/Path" scale="2,0.4" />
+ <image path="/Some/Full/Path" offset="4,0" scale="0,2" />
+
+Please see L<Spreadsheet::WriteExcel/> for more information about the offset and scaling options as well as any other restrictions that might be in place. This node does B<NOT> perform any sort of validation upon your parameters. You are assumed to know what you are doing.
=head1 AUTHOR
'WORKBOOK' => 'Excel::Template::Container::Workbook',
'WORKSHEET' => 'Excel::Template::Container::Worksheet',
- 'BACKREF' => 'Excel::Template::Element::Backref',
- 'CELL' => 'Excel::Template::Element::Cell',
- 'FORMULA' => 'Excel::Template::Element::Formula',
- 'FREEZEPANES' => 'Excel::Template::Element::FreezePanes',
- 'IMAGE' => 'Excel::Template::Element::Image',
- 'RANGE' => 'Excel::Template::Element::Range',
- 'VAR' => 'Excel::Template::Element::Var',
+ 'BACKREF' => 'Excel::Template::Element::Backref',
+ 'CELL' => 'Excel::Template::Element::Cell',
+ 'FORMULA' => 'Excel::Template::Element::Formula',
+ 'IMAGE' => 'Excel::Template::Element::Image',
+ 'RANGE' => 'Excel::Template::Element::Range',
+ 'VAR' => 'Excel::Template::Element::Var',
'FORMAT' => 'Excel::Template::Container::Format',
WORKBOOK WORKSHEET
FORMAT BOLD HIDDEN ITALIC LOCKED OUTLINE SHADOW STRIKEOUT
IF ROW LOOP SCOPE KEEP_LEADING_ZEROS
- CELL FORMULA FREEZEPANES IMAGE
+ CELL FORMULA IMAGE
VAR BACKREF RANGE
);
Spreadsheet::WriteExcel::add_worksheet( '' )
Spreadsheet::WriteExcel::Worksheet::new( '' )
Spreadsheet::WriteExcel::Worksheet::write( '0', '0', 'before', '1' )
-Spreadsheet::WriteExcel::Worksheet::insert_bitmap( '0', '1', '/full/path', '0', '0', '0', '0' )
+Spreadsheet::WriteExcel::Worksheet::insert_image( '0', '1', '/full/path', '0', '0', '0', '0' )
Spreadsheet::WriteExcel::Worksheet::write( '0', '2', 'after', '1' )
-Spreadsheet::WriteExcel::Worksheet::insert_bitmap( '0', '3', '/full/path', '2', '2', '0', '0' )
-Spreadsheet::WriteExcel::Worksheet::insert_bitmap( '0', '4', '/full/path', '0', '0', '2', '2' )
-Spreadsheet::WriteExcel::Worksheet::insert_bitmap( '0', '5', '/full/path', '0', '1', '1.1', '0' )
+Spreadsheet::WriteExcel::Worksheet::insert_image( '0', '3', '/full/path', '2', '2', '0', '0' )
+Spreadsheet::WriteExcel::Worksheet::insert_image( '0', '4', '/full/path', '0', '0', '2', '2' )
+Spreadsheet::WriteExcel::Worksheet::insert_image( '0', '5', '/full/path', '0', '1', '1.1', '0' )
Spreadsheet::WriteExcel::close( '' )
__END_EXPECTED__
<image path="/full/path" scale="1.1,0" offset="0,1"/>
</worksheet>
</workbook>
+
}
}
-sub insert_bitmap {
+sub insert_image {
my $self = shift;
{
local $" = "', '";
- push @mock::calls, __PACKAGE__ . "::insert_bitmap( '@_' )";
- }
-}
-
-sub freeze_panes {
- my $self = shift;
-
- {
- local $" = "', '";
- push @mock::calls, __PACKAGE__ . "::freeze_panes( '@_' )";
+ push @mock::calls, __PACKAGE__ . "::insert_image( '@_' )";
}
}