AntV X6/Xflow 导出 svg/png/jpeg 问题解决

AntV X6/Xflow 导出 svg/png/jpeg 问题解决

导出 svg/png/jpeg 时,处于画布边缘的节点的连接桩或 label 标签显示不完整

问题截图:

界面

导出的图片

解决办法:

  1. 导出 png/jpeg 格式可以通过设置Export.ToImageOptionspadding 解决
  2. 导出 svg 格式,Export.ToSVGOptions暂无直接可用的 padding 配置,所以我的方式是使用getContentBBox获取画布内容的矩形区域,并进行一定的数值增减,将其作为导出时的 viewbox
tsx 复制代码
import React, { useEffect, useRef } from 'react'
import { Graph, Rectangle, useExport, useGraphInstance } from '@antv/xflow'

const handleExportPng = () => {
  exportPNG('png-chart', { padding: 20 })
}

const handleExportJpeg = () => {
  exportJPEG('jpeg-chart', { padding: 20 })
}

const handleExportSvg = () => {
  const box = graph.current?.getContentBBox()
  const { x, y, width, height } = box as Rectangle
  const viewBox = {
    x: x - 20,
    y: y - 20,
    width: width + 40,
    height: height + 40
  }
  exportSVG('svg-chart', { viewBox })
}

如有更好的解决办法,欢迎在评论区交流讨论

效果展示:

更多问题可查阅以下链接

相关推荐
一晌小贪欢20 小时前
第22节:相关性分析——协方差、相关系数与热力图解读
开发语言·python·数据分析·pandas·数据可视化
akalizg2 天前
从静态布局到地图联动:基于助睿Max的浏览器用户画像大屏完整实战
数据可视化·数据大屏·用户画像·助睿数智·商业数据分析·蓝图编辑器
千桐科技5 天前
数字孪生泵站安全监测实战:从“事后抢修”到“预知大脑”
大数据·数字孪生·数据可视化·智慧水利
Cthy_hy5 天前
浏览器市场分析——数据大屏动态数据接入
信息可视化·etl·数据可视化
一晌小贪欢5 天前
第19节:地理空间分析——使用 Geopandas 绘制热力地图
开发语言·python·数据分析·pandas·数据可视化
weixin_505154466 天前
打通工业安全治理“最后一公分”:Bowell 发布 Runtime 治理平台
大数据·人工智能·安全·3d·数字孪生·数据可视化
无心使然6 天前
OpenLayers 10.9.0 渲染架构分析
前端·gis·数据可视化
易知微EasyV数据可视化7 天前
从卫星影像到法线贴图:为任意区域一键生成真实地形材质
经验分享·ai·数字孪生·材质·数据可视化·贴图
牛猫Data8 天前
POWER BI技巧:报告名称的Emoji符号妙用
microsoft·数据分析·数据可视化·powerbi
SZLSDH8 天前
可视分析与自主决策之间:数字孪生与AI智能体融合的架构演进路径
ai·数字孪生·数据可视化·智能体