From 33a928b7d0aae31e43bd27fe1f85e0f194d16126 Mon Sep 17 00:00:00 2001 From: Tony Cook Date: Mon, 21 Apr 2008 06:21:36 +0000 Subject: [PATCH] - add horizontal legend boxes make the legend outside padding an integer update test images to match --- Changes | 2 + Graph.pm | 154 ++++++++++++++++++++++++++++++++++++-- t/t10pie.t | 20 ++++- testimg/t10_hlegend.png | Bin 0 -> 16923 bytes testimg/t10_pie2.png | Bin 6039 -> 5682 bytes testimg/t10_rad_fount.png | Bin 19047 -> 15898 bytes 6 files changed, 167 insertions(+), 9 deletions(-) create mode 100644 testimg/t10_hlegend.png diff --git a/Changes b/Changes index d87e7f0..a2240d4 100644 --- a/Changes +++ b/Changes @@ -8,6 +8,8 @@ Imager-Graph 0.06 - unreleased - round the dimensions used within the legend to integers to prevent later truncation from causing uneven output. + - add horizontal legend boxes + Imager-Graph 0.05 - 17 December 2007 ================= diff --git a/Graph.pm b/Graph.pm index bea06d9..127e304 100644 --- a/Graph.pm +++ b/Graph.pm @@ -380,8 +380,28 @@ the background fill for the legend. Default: none the border color of the legend. Default: none (no border is drawn around the legend.) +=item orientation + +The orientation of the legend. If this is C the the patches +and labels are stacked on top of each other. If this is C +the patchs and labels are word wrapped across the image. Default: +vertical. + =back +For example to create a horizontal legend with borderless patches, +darker than the background, you might do: + + my $im = $chart->draw + (..., + legend => + { + patchborder => undef, + orientation => 'horizontal', + fill => { solid => Imager::Color->new(0, 0, 0, 32), } + }, + ...); + =item callout defines attributes for graph callouts, if any are present. eg. if the @@ -528,8 +548,7 @@ Fills can be used for the graph background color, the background color for the legend block and for the fills used for each data element. You can specify a fill as a L or as a -general fill, see L for details. To use a general fill -you need a version of Imager after 0.38. +general fill, see L for details. You don't need (or usually want) to call Imager::Fill::new yourself, since the various fill functions will call it for you, and @@ -553,6 +572,9 @@ define the fountain fills xa, ya, xb and yb parameters. As with colors, you can use lookup(name) or lookup(name1.name2) to have one element to inherit the fill of another. +Imager::Graph defaults the fill combine value to C<'normal'>. This +doesn't apply to simple color fills. + =head2 Specifying numbers You can specify various numbers, usually representing the size of @@ -722,7 +744,6 @@ my %styles = [ { fountain=>'linear', xa_ratio=>0.13, ya_ratio=>0.13, xb_ratio=>0.87, yb_ratio=>0.87, - repeat=>'sawtooth', segments => Imager::Fountain->simple(positions=>[0, 1], colors=>[ NC('FFC0C0'), NC('FF0000') ]), }, @@ -926,7 +947,7 @@ Recursively looks up I in the style. =item scale(value1,value2) -Each value can be a number or a name. Names are recursively looks up +Each value can be a number or a name. Names are recursively looked up in the style and the product is returned. =back @@ -1056,8 +1077,9 @@ sub _translate_fill { } else { # a general fill + # default to normal combine mode + my %work = ( combine => 'normal', %$what ); if ($what->{hatch}) { - my %work = %$what; if (!$work{fg}) { $work{fg} = $self->_get_color('fg') or return; @@ -1069,7 +1091,6 @@ sub _translate_fill { return ( fill=>\%work ); } elsif ($what->{fountain}) { - my %work = %$what; for my $key (qw(xa ya xb yb)) { if (exists $work{"${key}_ratio"}) { if ($key =~ /^x/) { @@ -1085,7 +1106,7 @@ sub _translate_fill { return ( fill=>\%work ); } else { - return ( fill=> $what ); + return ( fill=> \%work ); } } } @@ -1287,6 +1308,123 @@ sub _remove_box { sub _draw_legend { my ($self, $img, $labels, $chart_box) = @_; + my $orient = $self->_get_thing('legend.orientation'); + defined $orient or $orient = 'vertical'; + + if ($orient eq 'vertical') { + return $self->_draw_legend_vertical($img, $labels, $chart_box); + } + elsif ($orient eq 'horizontal') { + return $self->_draw_legend_horizontal($img, $labels, $chart_box); + } + else { + return $self->_error("Unknown legend.orientation $orient"); + } +} + +sub _draw_legend_horizontal { + my ($self, $img, $labels, $chart_box) = @_; + + defined(my $padding = $self->_get_integer('legend.padding')) + or return; + my $patchsize = $self->_get_integer('legend.patchsize') + or return; + defined(my $gap = $self->_get_integer('legend.patchgap')) + or return; + + my $minrowsize = $patchsize + $gap; + my ($width, $height) = (0,0); + my $row_height = $minrowsize; + my $pos = 0; + my @sizes; + my @offsets; + for my $label (@$labels) { + my @text_box = $self->_text_bbox($label, 'legend'); + push(@sizes, \@text_box); + my $entry_width = $patchsize + $gap + $text_box[2]; + if ($pos == 0) { + # never re-wrap the first entry + push @offsets, [ 0, $height ]; + } + else { + if ($pos + $gap + $entry_width > $chart_box->[2]) { + $pos = 0; + $height += $row_height; + } + push @offsets, [ $pos, $height ]; + } + my $entry_right = $pos + $entry_width; + $pos += $gap + $entry_width; + $entry_right > $width and $width = $entry_right; + if ($text_box[3] > $row_height) { + $row_height = $text_box[3]; + } + } + $height += $row_height; + my @box = ( 0, 0, $width + $padding * 2, $height + $padding * 2 ); + my $outsidepadding = 0; + if ($self->{_style}{legend}{border}) { + defined($outsidepadding = $self->_get_integer('legend.outsidepadding')) + or return; + $box[2] += 2 * $outsidepadding; + $box[3] += 2 * $outsidepadding; + } + $self->_align_box(\@box, $chart_box, 'legend') + or return; + if ($self->{_style}{legend}{fill}) { + $img->box(xmin=>$box[0]+$outsidepadding, + ymin=>$box[1]+$outsidepadding, + xmax=>$box[2]-$outsidepadding, + ymax=>$box[3]-$outsidepadding, + $self->_get_fill('legend.fill', \@box)); + } + $box[0] += $outsidepadding; + $box[1] += $outsidepadding; + $box[2] -= $outsidepadding; + $box[3] -= $outsidepadding; + my %text_info = $self->_text_style('legend') + or return; + my $patchborder; + if ($self->{_style}{legend}{patchborder}) { + $patchborder = $self->_get_color('legend.patchborder') + or return; + } + + my $dataindex = 0; + for my $label (@$labels) { + my ($left, $top) = @{$offsets[$dataindex]}; + $left += $box[0] + $padding; + $top += $box[1] + $padding; + my $textpos = $left + $patchsize + $gap; + my @patchbox = ( $left, $top, + $left + $patchsize, $top + $patchsize ); + my @fill = $self->_data_fill($dataindex, \@patchbox) + or return; + $img->box(xmin=>$left, ymin=>$top, xmax=>$left + $patchsize, + ymax=>$top + $patchsize, @fill); + if ($self->{_style}{legend}{patchborder}) { + $img->box(xmin=>$left, ymin=>$top, xmax=>$left + $patchsize, + ymax=>$top + $patchsize, + color=>$patchborder); + } + $img->string(%text_info, x=>$textpos, 'y'=>$top + $patchsize, + text=>$label); + + ++$dataindex; + } + if ($self->{_style}{legend}{border}) { + my $border_color = $self->_get_color('legend.border') + or return; + $img->box(xmin=>$box[0], ymin=>$box[1], xmax=>$box[2], ymax=>$box[3], + color=>$border_color); + } + $self->_remove_box($chart_box, \@box); + 1; +} + +sub _draw_legend_vertical { + my ($self, $img, $labels, $chart_box) = @_; + defined(my $padding = $self->_get_integer('legend.padding')) or return; my $patchsize = $self->_get_integer('legend.patchsize') @@ -1312,7 +1450,7 @@ sub _draw_legend { $height + $padding * 2 - $gap); my $outsidepadding = 0; if ($self->{_style}{legend}{border}) { - defined($outsidepadding = $self->_get_number('legend.outsidepadding')) + defined($outsidepadding = $self->_get_integer('legend.outsidepadding')) or return; $box[2] += 2 * $outsidepadding; $box[3] += 2 * $outsidepadding; diff --git a/t/t10pie.t b/t/t10pie.t index 9520423..9e4ac2f 100644 --- a/t/t10pie.t +++ b/t/t10pie.t @@ -23,7 +23,7 @@ my $font = Imager::Font::Test->new(); my @data = ( 100, 180, 80, 20, 2, 1, 0.5 ); my @labels = qw(alpha beta gamma delta epsilon phi gi); -plan tests => 11; +plan tests => 13; my $pie = Imager::Graph::Pie->new; ok($pie, "creating pie chart object"); @@ -97,6 +97,24 @@ my ($im_version) = $Imager::VERSION =~ /(\d\.[\d_]+)/; $img5->write(file=>'testout/t10_mono.ppm') or die "Cannot save pie3: ",$img5->errstr,"\n"; cmpimg($img5, "testimg/t10_mono.png", 550_000); + + my $img6 = $pie->draw(data=>\@data, labels=>\@labels, + font=>$font, style=>'fount_lin', + features=>[ 'allcallouts', 'labelspc', 'legend' ], + legend=> + { + valign=>'top', + halign=>'center', + orientation => 'horizontal', + fill => { solid => Imager::Color->new(0, 0, 0, 32) }, + patchborder => undef, + #size => 30, + }); + ok($img6, "sixth chart") + or print "# ",$pie->error,"\n"; + $img6->write(file=>'testout/t10_hlegend.ppm') + or die "Cannot save pie6: ",$img5->errstr,"\n"; + cmpimg($img6, "testimg/t10_hlegend.png", 550_000); } sub cmpimg { diff --git a/testimg/t10_hlegend.png b/testimg/t10_hlegend.png new file mode 100644 index 0000000000000000000000000000000000000000..f23633689ca07ba8a1c2e93d3b4f4a4b7a82c2c9 GIT binary patch literal 16923 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≪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 literal 0 HcmV?d00001 diff --git a/testimg/t10_pie2.png b/testimg/t10_pie2.png index 0cb8d278f9e639b8b88da04aec2cbca19e76309b..4186cd0f50f36ad8c2a9cc2475482db9e1c7b45e 100644 GIT binary patch literal 5682 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 U#^Dc3e7zTdl2MT^l`;|s5CWHi~s_w; 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 diff --git a/testimg/t10_rad_fount.png b/testimg/t10_rad_fount.png index 5d4bfa6787b6603830782f210c7c926947228f51..bbfbc4fe55996aa135b695f2f31d4bf00f1b4f1a 100644 GIT binary patch literal 15898 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 z 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 literal 19047 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 $bpVh=ug1Sx6XTe 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 ZPpOtc*JHKnFfIfxds{~o)7tOie*tR!mcal3 -- 2.39.2