瀏覽代碼

fix:下载图片

liushengqiang 2 年之前
父節點
當前提交
a571d38f48
共有 1 個文件被更改,包括 11 次插入2 次删除
  1. 11 2
      src/page-instrument/header-top/settting/index.tsx

+ 11 - 2
src/page-instrument/header-top/settting/index.tsx

@@ -38,10 +38,19 @@ export default defineComponent({
 		const downPng = () => {
 			showLoadingToast({ message: "下载中", duration: 0 });
 			setTimeout(async () => {
-				const svg: any = document.getElementById("osmdSvgPage1");
+				const svg: any = document.getElementById("osmdSvgPage1")?.cloneNode(true);
+				if (!svg) return showToast({ message: "保存失败", type: "fail" });
+				const cw = svg.width.animVal.value
+				const ch = svg.height.animVal.value
+				const rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
+				rect.setAttribute("x", "0");
+				rect.setAttribute("y", "0");
+				rect.setAttribute("width", `${cw * 2}`);
+				rect.setAttribute("height", `${ch * 2}`);
+				rect.setAttribute("fill", "#fff");
+				svg.prepend(rect);
 				if (svg) {
 					const _canvas = svg2canvas(svg.outerHTML);
-
 					if (state.platform === IPlatform.PC) {
 						let el: any = document.createElement("a");
 						// 设置 href 为图片经过 base64 编码后的字符串,默认为 png 格式