From 0d1f2d116a471779767eb788f1b5573ea9899dc2 Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Thu, 10 May 2018 15:29:39 +0000 Subject: [PATCH] 98_SVG.pm: mask the lines to the surrounding rectangle (Forum #87536) git-svn-id: https://svn.fhem.de/fhem/trunk@16722 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/98_SVG.pm | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/fhem/FHEM/98_SVG.pm b/fhem/FHEM/98_SVG.pm index 165e99e7b..4d2c8f2b0 100644 --- a/fhem/FHEM/98_SVG.pm +++ b/fhem/FHEM/98_SVG.pm @@ -1318,8 +1318,7 @@ SVG_digestConf($$) $lAxis[$i] = "x1y2" if(!$lAxis[$i]); $lStyle[$i] = "class=\"SVGplot ". (defined($lStyle[$i]) ? $lStyle[$i] : "l$i")."\""; - $lWidth[$i] = (defined($lWidth[$i]) ? - "style=\"stroke-width:$lWidth[$i]\"" :""); + $lWidth[$i] = (defined($lWidth[$i]) ? "stroke-width:$lWidth[$i]" :""); } $conf{lAxis} = \@lAxis; @@ -1457,17 +1456,27 @@ SVG_render($$$$$$$$$$) Log3 $name, 0, "Can't open $parent_dir/svg_defs.svg" } + ###################### + # Mask: + SVG_pO "". + "". + sprintf("". + "". + ""; + ###################### # Rectangle - SVG_pO ""; + SVG_pO ""; my ($off1,$off2) = ($x+$w/2, 3*$y/4); my $title = ($conf{title} ? $conf{title} : " "); $title =~ s//>/g; - SVG_pO "$title"; + SVG_pO "$title"; ###################### # Left label = ylabel and right label = y2label @@ -1936,12 +1945,13 @@ SVG_render($$$$$$$$$$) my $dec = length(sprintf("%d",$hmul*3))-1; $dec = 0 if($dec < 0); my $attributes = "id=\"line_$idx\" decimals=\"$dec\" ". + "style='mask:url(#mask_$name); $conf{lWidth}[$idx]' ". "x_min=\"$x\" ". ($conf{xrange}?"x_off=\"$xmin\" ":"x_off=\"$fromsec\" "). ($conf{xrange}?"x_mul=\"$xmul\" ":"t_mul=\"$tmul\" "). "y_h=\"$yh\" y_min=\"$min\" y_mul=\"$hmul\" title=\"$tl\" ". ($log eq 'log'?"log_scale=\"$f_log\" ":""). - "onclick=\"parent.svg_click(evt)\" $conf{lWidth}[$idx]"; + "onclick=\"parent.svg_click(evt)\""; my $lStyle = $conf{lStyle}[$idx]; my $isFill = ($conf{lStyle}[$idx] =~ m/fill/); my $doClose = $isFill;