首页 > 代码库 > [脚本] 一个用于BMP到EPS转换的BAT脚本实现(需要安装bmeps)
[脚本] 一个用于BMP到EPS转换的BAT脚本实现(需要安装bmeps)
最近用LaTeX写文章, 图片需要使用eps格式. 如果你安装了bmeps这个工具(一般你装了CTeX就自带这个工具的), 可以在需要转换的目录打开CMD窗口, 然后输入:
bmeps -c a.jpg a.eps
-c参数的意思是保留色彩信息, 如果不加这个参数有时候会有奇怪的事情发生...
a.jpg也可以是bmp, 不过最好是jpg啦, 不然也会有奇怪的事情发生...
随后就写了一个用于批量转换的批处理代码, 很短, 如下:
1 @echo off 2 setlocal enabledelayedexpansion 3 echo 请将需要处理的jpg文件放在本脚本目录下 4 echo 所有输出均位于 ./eps/ 5 echo; 6 pause 7 echo 开始转换... 8 echo; 9 10 if not exist log\ md log11 if not exist eps\ md eps12 if exist log\list.txt del log\list.txt13 14 dir /a/b *.jpg > log\list.txt15 16 set /a count = 017 for /f "delims=." %%i in (log\list.txt) do (18 if exist %%i.jpg (19 bmeps -c %%i.jpg eps\%%i.eps20 set /a count += 121 )22 )23 24 echo 转换完毕, 共处理%count%个文件25 echo; 26 rd /s/q log27 pause
核心部分是17到22行.
第14行输出所有jpg文件的文件名到文本文件
17行 /f参数表示循环用的集合来自于文件
delims代表分隔符, 这里用‘.‘来分割 以获取所有不带后缀的文件名
(我不会告诉你我没有找到能用的字符串替代的方法的)
网上说的那些
set a = aaabbbset b=!a:aaa=bbb!
纯属扯淡, 反正我试了完全没用, 还有%%党, 感叹号的位置我也换了无数种搭配, 统统都是扯淡.
%%i 是for循环的局部变量的名字
后面比较简单, 调用bmeps工具就可以了.
[脚本] 一个用于BMP到EPS转换的BAT脚本实现(需要安装bmeps)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。