支持使用文本和图片作为水印,实现原理是在 Graph 容器的 div 上加上 background-image
属性,然后就可以通过 css 来控制水印的位置和样式。对于文本,会使用隐藏 canvas 转成图片的方式来实现
createGraph({data: { nodes: [{ id: 'node-1' }] },node: { style: { fill: '#7e3feb' } },edge: { style: { stroke: '#8b9baf' } },layout: { type: 'force' },behaviors: ['drag-canvas'],plugins: [{ type: 'watermark', key: 'watermark', text: 'G6: Graph Visualization' }],},{ width: 600, height: 300 },(gui, graph) => {const options = {type: 'watermark',width: 200,height: 100,opacity: 0.2,rotate: Math.PI / 12,text: 'G6: Graph Visualization',};const optionFolder = gui.addFolder('Watermark Options');optionFolder.add(options, 'type').disable(true);optionFolder.add(options, 'width', 1, 1280, 1);optionFolder.add(options, 'height', 1, 800, 1);optionFolder.add(options, 'opacity', 0, 1, 0.1);optionFolder.add(options, 'rotate', 0, 2 * Math.PI, Math.PI / 12);optionFolder.add(options, 'text');optionFolder.onChange(({ property, value }) => {graph.updatePlugin({key: 'watermark',[property]: value,});graph.render();});},);
参考示例:
watermark
| string
此插件已内置,你可以通过 type: 'watermark'
来使用它。
string
水印的背景定位行为
string
水印的背景混合
string
水印的背景裁剪
string
水印的背景颜色
string
水印的背景图片
string
水印的背景原点
string
水印的背景位置
string
水印的背景位置-x
string
水印的背景位置-y
string Default:
'repeat'
水印的背景重复
string
水印的背景大小
number Default:
100
水印的高度(单个)
string
图片地址,如果有值,则使用,否则使用文本
number Default:
0.2
水印的透明度
number Default:
Math.PI / 12
水印的旋转角度
string
水印文本
'center' | 'end' | 'left' | 'right' | 'start' Default:
'center'
文本水印的文本对齐方式
'alphabetic' | 'bottom' | 'hanging' | 'ideographic' | 'middle' | 'top' Default:
'middle'
文本水印的文本对齐基线
string Default:
'#000'
文本水印的文字颜色
string
文本水印的文本字体
number Default:
16
文本水印的文本大小
string
文本水印的文本字体变体
string
文本水印的文本字体粗细
number Default:
200
水印的宽度(单个)