边学习LaTeX,边把自己的毕业论文从原先的Word文档改成LaTeX的。进度比较慢,所以现在菜开始向文档中加入图片。因为以前作图用的是Visio 2003,所以考虑怎样将图片格式转换成eps的。
因为Visio 2003不能将图片直接另存为eps格式的,所以开始只选择了另存为png的。但是又如何将png格式的图片转换位eps的呢?这个我想了半天。后来尝试使用Adobe的Acrobat 7.0对其进行转换,首先保存为pdf格式的,后来有另存为eps的。高兴ed,可是插入tex文档的时候发现出了问题。发现一个页面里面只有一张图片。所以翻开LaTeX graphics又看了看,才发可能是eps文件格式的问题。
但是用UltraEdit打开看了看又Acrobat生成的这个文件,虽然多了很多其他的东西,但是BoundingBox的值是对的。不知道为什么会发生这种情况。后来下载安装了ImageMagick,它有一个图片浏览器,可以看eps文件。用这个浏览器打开发现,Acrobat生成的eps文件居然被放在了屏幕的中间(应该是放在左下角的)。因为对eps文件的语法规范不是很熟,所以没有搞懂是怎么回事。
后来在ImageMagick里面找到了convert这个工具,试着用了一下,结果可以生成我想要的eps文件了。但是又面临的一个问题是我又很多png文件需要转换,不想一个一个调用命令。也是尝试使用命令:
convert *.png *.eps
但是生成的文件名都乱了,都被改成数字编号了。怎么办呢?所以就想着自习写一个程序来完成,但是转念一想,为什么不用DOS的批处理文件试一试呢,说不定也可以搞定。
可是面临的问题是不知道怎么得到一个文件的文件名(没有.和后缀)。在网上看了几篇关于批处理命令的文章,发现写得都差不多。而且也没有找到我想要的(其实当时看露了,是有的)。正当我在郁闷的时候,同学告诉我Windows XP自带的帮助里面就有DOS下批处理的命令的语法介绍。于是我就如获至宝的开始看来起来。果然被我找到了,而且比网上的要好理解一些。下面就是我写得一个简单的程序:
echo off
for %%f in (*.png) do convert %%f %%~nf.eps
pause 嘿嘿,搞定了!
不过后来有在网上发现了
xConvert这个软件,是用C写的。它对GhostView和ImageMagick进行了封装,通过命令行可以方便的实现上述功能。当然还有其他更强大的功能等着你去发现啊!
今天有安装了TechSmith公司的SnagIt,发现这个软件除了可以抓屏外,也可以方便地将png格式转换成eps格式。
posted on 2005-03-26 02:20
思考 阅读(3436)
评论(2) 编辑 收藏 所属分类:
LaTeX 、
其他技术文章