1. 在浏览器中切换至 Mermaid 模块生成示例图,确认 SVG 容器占满可用空间且居中显示。

2. 若存在缓存,建议强制刷新(Ctrl+F5)以确保最新样式生效。
This commit is contained in:
史悦
2025-10-27 15:10:06 +08:00
parent f7fd53c9a2
commit ae46cedd37
2 changed files with 34 additions and 2 deletions

View File

@@ -1191,7 +1191,8 @@
);
this.destroyMermaidPanZoom();
this.renderSvgMarkup(svgContent, this.activeModuleId, {
applyTransform: false
applyTransform: false,
wrapperClasses: ['svg-content-wrapper--mermaid']
});
const svgElement = this.el.viewer.querySelector('svg');
if (svgElement) {
@@ -1356,10 +1357,21 @@
renderSvgMarkup(svgMarkup, moduleId = this.activeModuleId, options = {}) {
if (!this.el.viewer || !svgMarkup) return;
const { opacity = 1, applyTransform = true } = options;
const {
opacity = 1,
applyTransform = true,
wrapperClasses = []
} = options;
this.el.viewer.innerHTML = '';
const wrapper = document.createElement('div');
wrapper.className = 'svg-content-wrapper';
if (Array.isArray(wrapperClasses)) {
wrapperClasses.filter(Boolean).forEach((className) =>
wrapper.classList.add(className)
);
} else if (typeof wrapperClasses === 'string' && wrapperClasses.trim()) {
wrapper.classList.add(wrapperClasses.trim());
}
wrapper.innerHTML = svgMarkup;
wrapper.style.opacity = opacity;
this.el.viewer.appendChild(wrapper);