pdfLaTeX和XeLaTeX的图片无法识别与编译后标题和摘要没加粗的问题(TeXstudio在 XeLaTeX下eps图片不显示, pdflatex下反而可以)

首先,来介绍一下两者的区别。最近写论文,借用IEEEtran模板时,发现一个问题——编译后标题和摘要没加粗!最后将默认编译器XeLaTeX改为pdfLaTeX。But 有出现新问题了。TeXstudio在 XeLaTeX下eps图片不显示, pdflatex下反而可以

一、latex中pdflatex与xelatex的区别

【感谢:多一点】

  1. PDFTeX程序:Tex语言的一个实现,也就是把Tex语言转换为排版的一个程序。它会把TeX 语言写的代码直接编译成 PDF文件。

  2. PDFLaTeX命令:PDFTeX程序中的命令,用来编译用LaTeX格式写的tex文件。

  3. XeTeX程序:TeX语言的新的实现,即把Tex语言转换为排版的一个新程序。支持Unicode编码和直接访问操作系统字体。

  4. XeLaTeX命令:XeTeX程序中的命令,用来编译用LaTeX格式写的tex文件。

简单来说,PDFLaTeX和XeLaTeX是两种编译TeX文件的命令。以上这些内容,详细的介绍在这里:http://www.linuxidc.com/Linux/2013-09/90330.htm。两者最大的区别是:XeLaTeX对应的XeTeX对字体的支持更好,允许用户使用操作系统字体来代替TeX的标准字体,而且对非拉丁字体的支持更好。详情请查看这里的解释:http://stackoverflow.com/questions/15796519/difference-between-xelatex-and-pdflatex

pdfLaTeX是比较原始的版本,对Unicode的支持不是很好,所以显示汉字需要使用CJK宏包。它不支持操作系统的truetype字体(*.ttf),只能使用type1字体。优点是支持的宏包比较多,有些老一点的宏包必须用pdfLaTeX来编译。
XeLaTeX是新的Unicode版本,内建支持Unicode(UTF-8),自然也包括汉字在内,而且可以调用操作系统的truetype字体。如果你的文档有汉字,那么推荐用XeLaTeX。缺点是不支持某一些宏包。

但是凡事有利就有弊,我在实际使用过程中发现,使用XeLaTeX编译,如果说论文中有很图片或者其他元素没有嵌入字体的话,生成的PDF文件也会有些字体没有嵌入。相反,由于PDFLaTeX使用的是TeX的标准字体,所以生成PDF时,会将所有的非TeX标准字体进行替换。所以,使用PDFLaTeX生成的PDF文件默认嵌入所有字体,这给我们的论文排版带来了极大的方便。建议大家根据自己的需要选择合适的程序。

只要输出介质为pdf,那么使用PSTricks和eps插图都是陋习。如果输出介质为pdf,那么所有eps都需要转换为pdf后插入。之所以需要转换,是因为pdfTeX/LuaTeX不带任何PostScript解释器,所以一定要转换成pdf才能插图。而pTeX/XeTeX,则通常需要使用dvipdfmx输出pdf,在用到PostScript代码的时候,即PSTricks和eps图,都会通过管道使用GhostScript转换,这也是拖慢dvipdfmx的一个主要原因。

综上所述,想要加粗摘要还是要使用pdf Latex,这就涉及到eps图与PDF图片的格式问题了

二、pdflatex插入EPS格式图片的两种方法

主要从两个方面考虑这个问题,一个是已经有PDF文件,那就可以直接调用,二是没有PDF有eps要么自己转为PDF要么让程序帮你转。
【感谢:飞飞的博客】
1. 将eps图片转成pdf或者将pdf图片转成eps,也就是说一张图片有pdf、eps两种格式。
方法一:
\includegraphics{pic} %不要扩展名。这样pdflatex自动调相应的pdf文件,而latex自动调eps文件。

方法二:
先加入epstopdf宏包(epstopdf宏包的详细信息可查看……):
\usepackage{graphicx}
\usepackage{epstopdf}
再用:
\includegraphics{pic.eps} %可以包含eps扩展名,但是必须同时有pic.pdf文件存在。

方法三:
先加入epstopdf和epsfig宏包:
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage{epsfig}
再用:
\begin{figure}
\centering
\epsfxsize=10cm\epsfbox{pic.eps} %可以包含eps扩展名,但是必须同时有pic.pdf文件存在。
\end{figure}

2. pdflatex带"-shell-escape"参数编译,一张图片只需有eps格式,更具体的参考……

在这里插入图片描述

先加入epstopdf宏包:
\usepackage{graphicx}
\usepackage{epstopdf}
再用:
\includegraphics{pic.eps} %可以包含eps扩展名,pic.pdf文件不必存在
然后编译:
pdflatex -shell-escape filename.tex (事实上是自动产生了pic.pdf文件)

三、LaTeX中的PDF与eps的处理

latex中的图片格式主要就2种 pdf 和 eps。如果要用pdflatex编译,那么自然选择pdf,如果用latex编译,自然用eps。
本人论文中的图片来源主要是matlab和visio,所以这里主要讲如何从这两个软件中得到清晰的,无空白边缘的pdf和eps。
1.visio完美另存为pdf
visio2010本来就用另存为pdf的功能,但是直接存的话,很难避免页面的空白边缘。网上的方法大部分都是用Adobe Acrobat裁剪。这个方法我没试过,但是感觉很麻烦。我的方法简单实用:D
先用visio画好图,然后“设计”–“大小”–“适应绘图”。visio就会自动调整画布来去除空白边缘,此时再另存外pdf即可。
2.eps转pdf
matlab里的图可以另存外eps,但是pdflatex不认eps,怎么办,转吧。
我装的是CTEX最新版。里面自带eps转pdf的工具 epstopdf
如果CTEX正常安装的话, 打开cmd,直接cd到eps文件所在目录(假设名为a.eps),执行命令:epstopdf a.eps 就会在当前目录生成a.pdf
3.pdf转eps
这个必须借助Adobe acrobat完成了。
我用的是Adobe acrobat pro 8.1 下载 用它打开pdf,然后另存为ps,再用gsviewer(CTEX带的软件)打开ps,另存为eps即可。。

附赠:
latex PDF文档导出 字体没加粗问题

jpg/png格式图片转eps格式的方法总结

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值