视障者音乐制作交流基地

标题: 批量转换xml曲谱到abc, 使用xml2abc.exe [打印本页]

作者: Beli_Bala    时间: 2018-10-30 17:41
标题: 批量转换xml曲谱到abc, 使用xml2abc.exe

先下载xml2abc.exe, 在easyabc官网就有链接。
https://wim.vree.org/svgParse/xml2abc.html
把这个文件放在同一目录下, mxl是压缩的xml曲谱文件,用MuseScore导出的(*.mxl)文件, 可以批量转换成abc了。将下面的代码保存为bat格式的批处理文件, 在这个文件上回车即可将当前文件夹内所有xml曲谱转成abc, 代码如下:
for /r %%i in (*.mxl) do xml2abc.exe --noped "%%i" > %%~ni.abc

作者: Beli_Bala    时间: 2018-10-30 17:48
xml2abc.exe 的其他命令行选项我暂时还不懂, 只会用--noped

作者: Beli_Bala    时间: 2018-10-30 18:41
接着我前面的内容继续,
这样转出来的abc, 有些奇怪的符号, 感叹号减号左括号感叹号, 于是我又写了一个vbs脚本, 也是放在同一目录, 把这些奇怪的字符替换掉。可惜不知如何发代码, 复制粘贴在这里就会出错!
作者: 琴韵晓波    时间: 2018-10-31 10:00
标题: 回板凳Beli_Bala
感谢lz分享!
关于在本站怎么发代码的,请参考下面这篇帖子:
http://szzyyzz.com/forum.php?mod ... =124&extra=page%3D1
作者: Beli_Bala    时间: 2018-10-31 11:44
  1. for /r %%i in (*.mxl) do xml2abc.exe --noped "%%i" > %%~ni.abc
点击复制代码

作者: Beli_Bala    时间: 2018-10-31 11:56
明白了, 可能vbs代码不能这样发,还是布行,上一条帖子可以, 或者是字数限制, 六百多字符的vbs代码, 就发不了。
作者: 琴韵晓波    时间: 2018-10-31 13:12
标题: 回6楼Beli_Bala
记得阿峰以前发过一篇有上万字的代码,要不然你点此给我q临时绘画把代码用记事本发给我,我来试看看。
作者: Beli_Bala    时间: 2018-10-31 14:02
标题: 回7楼琴韵晓波
点此给你临时会话出现IIS 8.0 详细错误 - 404.0 - Not Found - Internet Explorer
作者: 琴韵晓波    时间: 2018-10-31 14:09
让我去试看看。
作者: Beli_Bala    时间: 2018-10-31 14:09
我有本站的q群, 给你发了临时消息,你试试看。
作者: 琴韵晓波    时间: 2018-10-31 15:20
标题: 回10楼Beli_Bala
估计是代码被拦截了,我刚才电脑都登不上来,哈哈。
下面直接提供文件的下载地址:
点此本地下载vbs脚本
作者: Beli_Bala    时间: 2018-11-1 11:22
标题: 回11楼琴韵晓波
可以用记事本打开, 根据自己的需要修改脚本内容, 搜到这行代码:
  1. 's=Replace(s,"你要替换的字符","你要替换成的字符")
  2. s=Replace(s,"!-(!","")
  3. s=Replace(s,"!-)!","")
点击复制代码

第一行有单引号注释,不会被执行,下面两行才是要替换的字符, 跟着这个格式自行修改。
作者: Beli_Bala    时间: 2018-11-2 12:55
抱歉, 刚刚发现replace.vbs出现个bug, 请你先删除网站上的文件, 以免赵成用户的麻烦, 这个文件会修改当前目录下的xml2abc.exe 使其不可用, 出现不支持的16位应用程序。对系统没有任何影响,请放心, 我正在修复中。
作者: Beli_Bala    时间: 2018-11-2 18:55
标题: 回11楼琴韵晓波
脚本已经发给你了,请注意查收。
作者: 琴韵晓波    时间: 2018-11-2 22:06
标题: 回14楼Beli_Bala
今天不在电脑旁,收到你发的文件了,明天再电脑上去上传
作者: 琴韵晓波    时间: 2018-11-3 08:53
标题: 回14楼Beli_Bala
11楼的下载地址已经替换成你昨天传给我的那个了。
作者: Beli_Bala    时间: 2018-11-3 17:46
标题: 回16楼琴韵晓波
谢谢,辛苦了!我发现MuseScore也有命令行参数,可以写多几行代码, 实现一键批量转换任意MuseScore支持的文件到abc了。
作者: Beli_Bala    时间: 2018-11-3 17:59
可以这样写:
  1. for /r %%i in (*.ove *.gtp *.gp3 *.gp4 *.gp5 *.gpx) do MuseScorePortable.exe -o "%%~ni.mxl" "%%i"
点击复制代码

把这些代码串联起来。
作者: Beli_Bala    时间: 2018-11-3 18:02
我暂时还没有网盘, 不方便传上来。
作者: Beli_Bala    时间: 2018-11-3 19:44
点此打开百度云分享链接
提取码:
xfuy
这是个7z压缩文件,解压后看说明readme.txt。
作者: 琴韵晓波    时间: 2018-11-4 08:56
标题: 回20楼Beli_Bala
    我把你提供的这个工具放到咱们网站的空间里了。

    点此下载all2abc.zip
作者: Beli_Bala    时间: 2018-11-4 09:50
好, 这样方便多了。
作者: 无敌幽灵王    时间: 2018-11-16 14:03
标题: 回楼主Beli_Bala
感谢楼主的工具代码。
作者: rofy530    时间: 2018-12-14 11:21
标题: 回楼主Beli_Bala
樓主真是功德無量,這樣大家要看 abc 曲譜就方便多了 gp 的文件都可以轉乘 abc 來閱讀修改。太感謝您了?
作者: Beli_Bala    时间: 2021-3-28 14:16
标题: 回21楼琴韵晓波
我好几年没来这里了。更新一下文件,都打包在一起了。方便大家下载。
链接: https://pan.baidu.com/s/1U1DetHDdvUzdGenTvP_2ZA 提取码: jh45 复制这段内容后打开百度网盘手机App,操作更方便哦


作者: Beli_Bala    时间: 2021-3-28 14:27
这个版本修复了一些错误。方便自己的同时也方便别人。
默认转换成文本文件。如果,想直接转成abc,可以用文本编辑器打开2abc.bat, 删除
ren ".\abc\%%~ni.abc" "%%~ni.txt"
这一行。




欢迎光临 视障者音乐制作交流基地 (http://szzyyzz.com/) Powered by Discuz! X3.2