Export插件提供导出的功能。
import MindMap from 'simple-mind-map'
import Export from 'simple-mind-map/src/plugins/Export.js'
// import Export from 'simple-mind-map/src/Export.js' v0.6.0以下版本使用该路径
MindMap.usePlugin(Export)
注册完且实例化MindMap后可通过mindMap.doExport获取到该实例。
所有导出的方法都是异步方法,返回一个Promise实例,你可以使用then方法获取数据,或者使用async await函数获取:
mindMap.doExport.png().then((data) => {
// ...
})
const export = async () => {
let data = await mindMap.doExport.png()
// ...
}
返回的数据为data:url格式的,你可以创建一个a标签来触发下载:
let a = document.createElement('a')
a.href = 'xxx.png'// .png、.svg、.pdf、.md、.json、.smm
a.download = 'xxx'
a.click()
name:名称,可不传
transparent:v0.5.7+,指定导出图片的背景是否是透明的
rotateWhenWidthLongerThenHeight: v0.6.15+,Boolean, false, 是否在图片宽比高长时自动旋转90度
导出为png。
name:svg标题
plusCssText:v0.4.0+,(v0.6.16+已去除该参数,改为在实例化时通过resetCss配置传入),当开启了节点富文本编辑,且domToImage传了false时,可以添加附加的css样式,如果svg中存在dom节点,想要设置一些针对节点的样式可以通过这个参数传入,比如:
svg(
'',
false,
`* {
margin: 0;
padding: 0;
box-sizing: border-box;
}`
)
导出为svg。
v0.2.1+
name:文件名称
useMultiPageExport: v0.6.15+,Boolean, false, 是否多页导出,默认为单页
导出为pdf,和其他导出方法不一样,这个方法不会返回数据,会直接触发下载。
v0.6.0版本以后,需要额外注册一个ExportPDF插件
import ExportPDF from 'simple-mind-map/src/plugins/ExportPDF.js'
MindMap.usePlugin(ExportPDF)
name:暂时没有用处,传空字符串即可
withConfig``:Boolean, 默认为true,数据中是否包含配置,否则为纯思维导图节点数据
返回json数据。
simple-mind-map自定义的文件格式,其实就是json,和json方法返回的数据一模一样。
v0.4.7+
导出markdown文件。
获取svg数据,异步方法,返回一个对象:
{
node// svg节点
str// svg字符串
}
v0.6.6+,需要额外注册一个ExportXMind插件
import ExportXMind from 'simple-mind-map/src/plugins/ExportXMind.js'
MindMap.usePlugin(ExportXMind)
导出为xmind文件类型,异步方法,返回一个Promise实例,返回的数据为一个zip压缩包的data:url数据,可以直接下载。