Skip to content

Commit 994f791

Browse files
committed
feat: add noForiegnObject param
1 parent b8b33c5 commit 994f791

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/plugin/exportImage.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ const padding = 100
113113

114114
const head = `<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">`
115115

116-
const generateSvg = (mei: MindElixirInstance) => {
116+
const generateSvg = (mei: MindElixirInstance, noForiegnObject = false) => {
117117
const mapDiv = mei.nodes
118118
const height = mapDiv.offsetHeight + padding * 2
119119
const width = mapDiv.offsetWidth + padding * 2
@@ -144,7 +144,7 @@ const generateSvg = (mei: MindElixirInstance) => {
144144
summaries && g.appendChild(summaries)
145145

146146
mapDiv.querySelectorAll('me-tpc').forEach(tpc => {
147-
g.appendChild(convertDivToSvg(mei, tpc as Topic, true))
147+
g.appendChild(convertDivToSvg(mei, tpc as Topic, noForiegnObject ? false : true))
148148
})
149149
mapDiv.querySelectorAll('.tags > span').forEach(tag => {
150150
g.appendChild(convertDivToSvg(mei, tag as HTMLElement))
@@ -177,14 +177,14 @@ function blobToUrl(blob: Blob): Promise<string> {
177177
})
178178
}
179179

180-
export const exportSvg = function (this: MindElixirInstance) {
181-
const svgString = generateSvg(this)
180+
export const exportSvg = function (this: MindElixirInstance, noForiegnObject = false) {
181+
const svgString = generateSvg(this, noForiegnObject)
182182
const blob = new Blob([svgString], { type: 'image/svg+xml' })
183183
return blob
184184
}
185185

186-
export const exportPng = async function (this: MindElixirInstance): Promise<Blob | null> {
187-
const svgString = generateSvg(this)
186+
export const exportPng = async function (this: MindElixirInstance, noForiegnObject = false): Promise<Blob | null> {
187+
const svgString = generateSvg(this, noForiegnObject)
188188
const blob = new Blob([svgString], { type: 'image/svg+xml' })
189189
// use base64 to bypass canvas taint
190190
const url = await blobToUrl(blob)

0 commit comments

Comments
 (0)