|
@@ -1552,20 +1552,26 @@ const customizationXml = (xmlParse: any) => {
|
|
* 妙极客xml,多遍歌词循环的曲目,如果没有repeat标签,需要加上repeat标签
|
|
* 妙极客xml,多遍歌词循环的曲目,如果没有repeat标签,需要加上repeat标签
|
|
* */
|
|
* */
|
|
if (maxLyricNum > 1) {
|
|
if (maxLyricNum > 1) {
|
|
- const hasRepeat = xmlParse.querySelectorAll('repeat').length > 0
|
|
|
|
|
|
+ const hasRepeat = xmlParse.querySelectorAll('repeat').length > 0;
|
|
if (!hasRepeat) {
|
|
if (!hasRepeat) {
|
|
- const lastMeasure = measures.last();
|
|
|
|
- if (lastMeasure.getElementsByTagName('barline').length) {
|
|
|
|
- const barlineDom = lastMeasure.getElementsByTagName('barline')[0]
|
|
|
|
- barlineDom.innerHTML = barlineDom.innerHTML + `<repeat direction="backward" />`;
|
|
|
|
- } else {
|
|
|
|
- lastMeasure.innerHTML = lastMeasure.innerHTML + `
|
|
|
|
- <barline location="right">
|
|
|
|
- <bar-style>light-heavy</bar-style>
|
|
|
|
- <repeat direction="backward" />
|
|
|
|
- </barline>`
|
|
|
|
|
|
+ const parts = xmlParse.querySelectorAll('score-partwise>part')
|
|
|
|
+ if (parts.length > 1) {
|
|
|
|
+ for (const part of parts) {
|
|
|
|
+ const currentMeasures = part.querySelectorAll('measure').length ? Array.from(part.querySelectorAll('measure')) : [];
|
|
|
|
+ const lastMeasure: any = currentMeasures.last();
|
|
|
|
+ if (lastMeasure?.getElementsByTagName('barline').length) {
|
|
|
|
+ const barlineDom = lastMeasure?.getElementsByTagName('barline')[0]
|
|
|
|
+ barlineDom.innerHTML = barlineDom.innerHTML + `<repeat direction="backward" />`;
|
|
|
|
+ } else {
|
|
|
|
+ lastMeasure.innerHTML = lastMeasure.innerHTML + `
|
|
|
|
+ <barline location="right">
|
|
|
|
+ <bar-style>light-heavy</bar-style>
|
|
|
|
+ <repeat direction="backward" />
|
|
|
|
+ </barline>`
|
|
|
|
+ }
|
|
|
|
+ // console.log(lastMeasure)
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- // console.log(lastMeasure)
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|