语法作用
返回水印背景。参数说明:
- textContent:水印文本(如"微信公众号:简说PowerBI")
- textSize:文本大小(建议20-28)
- textColor:文本颜色(如"Gray"或"#808080")
- opacity:透明度0-1(建议0.1-0.3)
- rotateDegree:旋转角度(建议-30~-45)
- canvasWidth:画布宽度(建议1280或1920)
- canvasHeight:画布高度(建议720或1080)
- xGap:X方向间距(建议220-260)
- yGap:Y方向间距(建议180-220)
XF.SvgChart.WatermarkBackground(textContent:string,textSize:int64,textColor:string,opacity:double,rotateDegree:int64,canvasWidth:int64,canvasHeight:int64,xGap:int64,yGap:int64)
函数代码
该函数的实现代码如下:
/// 返回水印背景。textContent:水印文本(如"微信公众号:简说PowerBI");textSize:文本大小(建议20-28);textColor:文本颜色(如"Gray"或"#808080");opacity:透明度0-1(建议0.1-0.3);rotateDegree:旋转角度(建议-30~-45);canvasWidth:画布宽度(建议1280或1920);canvasHeight:画布高度(建议720或1080);xGap:X方向间距(建议220-260);yGap:Y方向间距(建议180-220)
Function XF.SvgChart.WatermarkBackground = (textContent:string,textSize:int64,textColor:string,opacity:double,rotateDegree:int64,canvasWidth:int64,canvasHeight:int64,xGap:int64,yGap:int64) =>
VAR __WatermarkText = textContent
VAR __FontSize = textSize
VAR __FontColor = textColor
VAR __Opacity = opacity
VAR __RotateDegree = rotateDegree
VAR __CanvasWidth = canvasWidth
VAR __CanvasHeight = canvasHeight
VAR __XGap = xGap
VAR __YGap = yGap
VAR __FontFamily = "Segoe UI"
VAR __RepeatXCount = ROUNDUP( DIVIDE( __CanvasWidth, __XGap ), 0 ) + 1
VAR __RepeatYCount = ROUNDUP( DIVIDE( __CanvasHeight, __YGap ), 0 ) + 1
VAR __GridTotalWidth = ( __RepeatXCount - 1 ) * __XGap
VAR __GridTotalHeight = ( __RepeatYCount - 1 ) * __YGap
VAR __StartOffsetX = DIVIDE( __CanvasWidth - __GridTotalWidth, 2 )
VAR __StartOffsetY = DIVIDE( __CanvasHeight - __GridTotalHeight, 2 )
VAR __TextBlocks =
CONCATENATEX (
GENERATESERIES ( 0, __RepeatYCount - 1 ),
VAR RowIndex = [Value]
RETURN
CONCATENATEX (
GENERATESERIES ( 0, __RepeatXCount - 1 ),
VAR ColIndex = [Value]
VAR XPos = __StartOffsetX + ColIndex * __XGap
VAR YPos = __StartOffsetY + RowIndex * __YGap
RETURN
"<text x=""" & XPos & """ y=""" & YPos & """ " &
"fill=""" & __FontColor & """ " &
"fill-opacity=""" & FORMAT ( __Opacity, "0.00" ) & """ " &
"font-family=""" & __FontFamily & """ " &
"font-size=""" & __FontSize & """ " &
"text-anchor=""middle"" " &
"dominant-baseline=""middle"" " &
"transform=""rotate(" & __RotateDegree & " " & XPos & " " & YPos & ")"">" &
__WatermarkText &
"</text>",
"",
""
),
"",
""
)
RETURN
"data:image/svg+xml;utf8," &
"<svg class='xifeng' xmlns=""http://www.w3.org/2000/svg"" " &
"width=""" & __CanvasWidth & """ height=""" & __CanvasHeight & """>" &
"<rect width=""100%"" height=""100%"" fill=""white"" fill-opacity=""0"" />" &
__TextBlocks &
"</svg>"
应用示例
给报表添加水印背景,如下图所示:






