码迷,mamicode.com
首页 > 其他好文 > 详细

[脚本] 一个用于BMP到EPS转换的BAT脚本实现(需要安装bmeps)

时间:2014-12-11 17:11:26      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   color   使用   sp   for   on   文件   

最近用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.txt
13 
14 dir /a/b *.jpg > log\list.txt
15 
16 set /a count = 0
17 for /f "delims=." %%i in (log\list.txt) do (
18     if exist %%i.jpg (
19         bmeps -c %%i.jpg eps\%%i.eps
20         set /a count += 1
21     )
22 )
23 
24 echo 转换完毕, 共处理%count%个文件
25 echo; 
26 rd /s/q log
27 pause

核心部分是17到22行.

第14行输出所有jpg文件的文件名到文本文件

17行 /f参数表示循环用的集合来自于文件

delims代表分隔符, 这里用‘.‘来分割 以获取所有不带后缀的文件名

(我不会告诉你我没有找到能用的字符串替代的方法的)

网上说的那些 

set a = aaabbb
set b=!a:aaa=bbb!

纯属扯淡, 反正我试了完全没用, 还有%%党, 感叹号的位置我也换了无数种搭配, 统统都是扯淡.

%%i 是for循环的局部变量的名字

后面比较简单, 调用bmeps工具就可以了.

[脚本] 一个用于BMP到EPS转换的BAT脚本实现(需要安装bmeps)

标签:style   blog   io   color   使用   sp   for   on   文件   

原文地址:http://www.cnblogs.com/lancelod/p/4157893.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!