放大缩小

This commit is contained in:
史悦
2025-10-27 15:05:35 +08:00
parent 4dde0e31b1
commit f7fd53c9a2
7 changed files with 2330 additions and 1655 deletions

View File

@@ -284,10 +284,10 @@ iconify-icon {
} }
.svg-content-wrapper { .svg-content-wrapper {
flex: 1; /* flex: 1; */
margin: 1rem; /* margin: 1rem; */
display: inline-block; display: inline-block;
text-align: center; /* text-align: center; */
transform-origin: center top; transform-origin: center top;
} }

View File

@@ -228,8 +228,8 @@
<script src="js/modules/swot.js"></script> <script src="js/modules/swot.js"></script>
<script src="js/modules/echarts.js"></script> <script src="js/modules/echarts.js"></script>
<script src="js/modules/mermaid.js"></script> <script src="js/modules/mermaid.js"></script>
<script src="js/vendor/mermaid.min.js"></script> <script src="libs/js/mermaid.min.js"></script>
<script src="js/vendor/svg-pan-zoom.min.js"></script> <script src="libs/js/svg-pan-zoom.min.js"></script>
<script src="libs/js/echarts.min.js"></script> <script src="libs/js/echarts.min.js"></script>
<script src="js/core/module-runtime.js"></script> <script src="js/core/module-runtime.js"></script>
<script src="js/core/app-shell.js"></script> <script src="js/core/app-shell.js"></script>

View File

@@ -1049,7 +1049,8 @@
return svgContent; return svgContent;
} }
initializeMermaidPanZoom(svgElement, manifest) { initializeMermaidPanZoom(svgElementid, manifest) {
let svgElement = document.getElementById(svgElementid);
if (!svgElement) return; if (!svgElement) return;
if (!window.svgPanZoom) { if (!window.svgPanZoom) {
console.warn('svgPanZoom 脚本未加载,无法提供平移缩放'); console.warn('svgPanZoom 脚本未加载,无法提供平移缩放');
@@ -1095,7 +1096,7 @@
} }
}; };
this.mermaidPanZoom = window.svgPanZoom(svgElement, { this.mermaidPanZoom = window.svgPanZoom(`#${svgElementid}`, {
zoomEnabled: true, zoomEnabled: true,
controlIconsEnabled: true, controlIconsEnabled: true,
fit: true, fit: true,
@@ -1194,8 +1195,8 @@
}); });
const svgElement = this.el.viewer.querySelector('svg'); const svgElement = this.el.viewer.querySelector('svg');
if (svgElement) { if (svgElement) {
svgElement.setAttribute('id', 'mermaidSvg'); const svgid = svgElement.getAttribute('id', 'mermaidSvg');
this.initializeMermaidPanZoom(svgElement, manifest); this.initializeMermaidPanZoom(svgid, manifest);
} }
} catch (error) { } catch (error) {
this.destroyMermaidPanZoom(); this.destroyMermaidPanZoom();

1646
js/vendor/mermaid.min.js vendored

File diff suppressed because one or more lines are too long

2314
libs/js/mermaid.min.js vendored Normal file

File diff suppressed because one or more lines are too long

6
libs/js/panzoom.min.js vendored Normal file

File diff suppressed because one or more lines are too long