25 lines
802 B
TypeScript
Raw Normal View History

2021-12-29 17:10:28 -08:00
import { Mindmap } from "../..";
import Exporter from "./Exporter";
class SVGExporter implements Exporter {
svgElement: Element;
constructor(mindmap: Mindmap, svgElement: Element) {
this.svgElement = svgElement;
}
export(): string {
// Replace all images for in-line images ...
const imagesElements: HTMLCollection = this.svgElement.getElementsByTagName('image');
2021-12-30 15:03:59 -08:00
let result:string = new XMLSerializer().serializeToString(this.svgElement);
2021-12-29 17:10:28 -08:00
2021-12-30 15:03:59 -08:00
// Are namespace declared ?. Otherwise, force the declaration ...
if(result.indexOf('xmlns=')!=-1){
result.replace('<svg ', '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" ')
}
return result;
2021-12-29 17:10:28 -08:00
}
}
export default SVGExporter;