浏览代码

feat: 自定义曲谱缩放比例

TIANYONG 1 年之前
父节点
当前提交
6a6ec3a76e
共有 2 个文件被更改,包括 9 次插入7 次删除
  1. 9 2
      src/helpers/utils.ts
  2. 0 5
      src/music-sheet/uses.ts

+ 9 - 2
src/helpers/utils.ts

@@ -144,13 +144,20 @@ export function JavaScriptAnimate({ timing, draw, duration }: IJavaScriptAnimate
 
 /** 格式化当前曲谱缩放比例 */
 export const formatZoom = (num = 1) => {
+  const search = qs.parse(location.search);
   const size = {
     small: 0.5,
     middle: 0.7,
     large: 1,
   }
-  const zoom = size[SettingState.sett.scoreSize]
-  return num * zoom
+  let customZoom = size[SettingState.sett.scoreSize]
+  // 自定义曲谱缩放比例
+  if (search?.zoom) {
+    let userZoom = Number(search?.zoom)
+    userZoom = userZoom < 50 ? 50 : userZoom > 160 ? 160 : userZoom
+    customZoom = userZoom / 100
+  }
+  return num * customZoom
 }
 
 /**

+ 0 - 5
src/music-sheet/uses.ts

@@ -68,11 +68,6 @@ export const useOsmdLoader = async (osmd: OpenSheetMusicDisplay, score: string)
       await osmd.load(score)
       // 自定义缩放比例
       let customZoom = formatZoom()
-      if (search?.zoom) {
-        let userZoom = Number(search?.zoom)
-        userZoom = userZoom < 50 ? 50 : userZoom > 160 ? 160 : userZoom
-        customZoom = userZoom / 100
-      }
       osmd.zoom = customZoom
 
       await osmd.render()