Jelajahi Sumber

导入曲谱名称和速度

liushengqiang 1 tahun lalu
induk
melakukan
c7a9891d5f
2 mengubah file dengan 6 tambahan dan 3 penghapusan
  1. 2 1
      src/pc/home/index.tsx
  2. 4 2
      src/pc/home/runtime.ts

+ 2 - 1
src/pc/home/index.tsx

@@ -1291,7 +1291,7 @@ export default defineComponent({
 				}
 				if (abc) {
 					console.log("🚀 ~ abc:", abc);
-
+					data.musicName = abc.title ?? data.musicName;
 					abcData.abc.celf = abc.celf || "K:treble";
 					abcData.abc.key = abc.key.value || abc.key || "K:C";
 					abcData.abc.meter = abc.meter.value || abc.meter || "M:4/4";
@@ -1579,6 +1579,7 @@ export default defineComponent({
 					const parseData = ABCJS.renderAbc("importRef", abc[0], { responsive: "resize" });
 					console.log("🚀 ~ parseData:", parseData);
 					abcData.abc = formateAbc(parseData[0], { subjectCode: abcData.abc.subjectCode });
+					data.musicName = abcData.abc.title || data.musicName;
 					handleResetRender();
 				};
 				reader.readAsText(file);

+ 4 - 2
src/pc/home/runtime.ts

@@ -297,7 +297,7 @@ export const moveNoteKey = (note: string, moveData: { step: number; move: number
 const formateGetData = {
 	getNoteType: (duration: number) => {
 		const type = 0.25 / duration;
-		console.log(type, duration);
+		// console.log(type, duration);
 		const noteType = [
 			{ name: 0.25, value: "4" },
 			{ name: 0.5, value: "2" },
@@ -319,14 +319,16 @@ const formateGetData = {
 };
 
 export const formateAbc = (visualObj: TuneObject, option: any) => {
+	let speed = visualObj?.metaText?.tempo?.bpm ? visualObj.metaText.tempo.bpm : visualObj.getBpm();
 	const abc = {
 		celf: "K:treble",
 		minUnit: "L:1/4",
 		meter: "M:4/4",
-		speed: `Q:1/4=${visualObj.getBpm()}`,
+		speed: `Q:1/4=${speed}`,
 		key: "K:C",
 		visualTranspose: 0,
 		subjectCode: option.subjectCode ?? "acoustic_grand_piano",
+		title: visualObj?.metaText?.title ?? "",
 	};
 	const list = [];
 	let notes = [];