本系列文章由 @YhL_Leo 出品,转载请注明出处。

文章链接: http://blog.csdn.net/yhl_leo/article/details/50327113


在LaTeX的编辑模式中,常用的生成PDF文件的方式有两种途径(至于PDFLaTeX,XeLaTeX,LuaLaTeX等其他编译方式不在此讨论):

  • DVI->PS->PDF
  • DVI->PDF

在文档中插入图片时,两种编译方式产生的结果是有一定差异的,除此以外,插入图片一般都先转为内嵌式PostScript格式文件(.eps),常用的Adobe Acrobat Pro和Photoshop两款软件也是有差异的,下面给出一组图的测试结果。

1 数据准备

上面四张图为原始图,格式均为png,从左向右依次是灰度图,RGB彩色图,灰度图,RGB彩色图。

测试前,我们分别将原图利用Adobe Acrobat Pro和Photoshop转成eps文件。

这里文件末尾为a表示是由Adobe Acrobat Pro生成,p表示由Photoshop生成。

2 测试代码

\documentclass[a3paper,9p]{article}

\usepackage{subfigure}
\usepackage{epsfig}
\usepackage{graphicx} \begin{document} \renewcommand{\arraystretch}{1.5}
\begin{figure}[ht!]
\begin{tabular}{cccc}
\includegraphics[width=0.24\linewidth]{1-1-a.eps} &
\includegraphics[width=0.24\linewidth]{1-2-a.eps} &
\includegraphics[width=0.24\linewidth]{2-1-a.eps} &
\includegraphics[width=0.24\linewidth]{2-2-a.eps} \\
\includegraphics[width=0.24\linewidth]{1-1-p.eps} &
\includegraphics[width=0.24\linewidth]{1-2-p.eps} &
\includegraphics[width=0.24\linewidth]{2-1-p.eps} &
\includegraphics[width=0.24\linewidth]{2-2-p.eps} \\
(a) & (b) & (c) & (d) \\
\end{tabular}
\label{Fig:1}
\vspace{-0.5em}
\end{figure} \end{document}

3 测试结果

首先看第一种生成方式DVI->PS->PDF

如果你看了上面的测试代码,应该很容易就明白这组测试结果图中每张图片的含义,这里还是啰嗦一下。一共分为4列:(a),(b),(c),(d),每一列的上面一张图是在Adobe Acrobat Pro中生成eps插入的结果,下面一张是在Photoshop中生成eps插入的结果。

不难看出,如果是灰度图,两者差异基本很小,但是如果是彩色图,那在Adobe Acrobat Pro中生成eps的插入结果简直不忍直视,色偏极其严重!除此以外,请看d组的上面那张图,还自带“光环”啊~

再看第二种生成方式DVI->PDF

乍一看好像是一模一样,上面所述的色偏问题完全不存在~

当然再对比一下两组测试结果,还可以发现:

上图从左向右依次是:Adobe-DVI->PS->PDF,Photoshop-DVI->PS->PDF,Adobe-DVI->PDF,Photoshop-DVI->PDF,仔细看白色像素旁边的马赛克(请注意,原本是二值图像),前面三个都不能幸免,唯有第四种方式是完全没有,插入后依旧是二值图!


总结:

  • 使用LaTeX插图时,建议选择DVI->PDF方式,在使用同样的图片情况下,该方式生成的更高清
  • 生成eps文件时,建议使用Photoshop的方式(见下图),好处不多说,谁用谁知道~


LaTeX 图片色偏解决方法的更多相关文章

  1. Latex: "Missing $ inserted" 解决方法

    参考: Latex报"Missing $ inserted"的解决方法 Latex: "Missing $ inserted" 解决方法 原因一:在文中出现&q ...

  2. ArcGIS帮助文档VS帮助文档不能复制图片的解决方法

    ArcGIS帮助文档VS帮助文档不能复制图片的解决方法(非常有用)   问题:ArcGIS的学习文档,开发文档,vs的帮助文档,一般都不能复制图片,有的甚至不能复制文本.   解决方法 在文档空白处右 ...

  3. 用视频编辑软件打不开jpg格式的图片的解决方法

    有时候我们把PSD.JPG等图片导入到素材库中会发现EDIUS视频编辑软件根本就不支持,显示黑屏状态.可是当我们把图片导入EDIUS NX支持下的premierepro里却能够正常显示.这是什么原因呢 ...

  4. 关于ThinkCMF自带插件上传不了图片的解决方法

    第一个原因:第一次安装的时候提示file_upload未打开,所以当上传的时候回上传失败 解决方法:在php.ini里打开file_uploads = On 第二个原因:一开始还可以上传,但是当删除了 ...

  5. css控制div下图片自适应解决方法:图片不超过最大宽度

    我们(特别是像我一样的菜鸟)经常会遇到一个问题——图片自适应.这个问题是很普遍的.在文章区,在论坛,可以这么说:哪儿需要上传图片,哪儿就存在这个问题,而论坛上也不时有人询问.为什么?原因很简单,我们不 ...

  6. dedecms不能保存jpeg格式图片的解决方法

    方法如下: 进入织梦的后台管理目录,默认是dede文件夹,找到/inc/inc_archives_functions.php文件. 在文件里查找gif|jpg|,我找到了4个, 在它们后面加jpeg的 ...

  7. 开发者中心没有勾选 ipad却需要传宣传图片的解决方法

    1.通过模拟器 运行一个ipad 把ipad的比例调到100% 然后保存图片,如果没有适配ipad会出现上下左右黑色边框,这些不必在意,把保存的图片拖到开发者中心即可,勾选右侧 ,都使用12.9英寸图 ...

  8. vue代码上传服务器后背景图片404解决方法

    问题:代码上传服务器后,图片404,使用的font-awesome图标也是404 解决办法: 如果你用了vue-cil,那么在build目录下找到utils.js中的ExtractTextPlugin ...

  9. win7(iis7)无法加载运行CSS和图片的解决方法

    今天刚刚在公司的电脑安装了window7并配置了iis7,打开网站户发现结构混乱,图片不显示,但是内容显示完全没有问题,也没有出错. 一开始以为是和IIS6的MIME一样,没有添加到相应项目的原因,但 ...

随机推荐

  1. PL/SQL控制语句

    本节要点: l  选择结构控制语句 if条件控制语句 Case语句 l  循环结构控制语句 基本loop循环 for循环 while循环 嵌套循环 PL/SQL既然是面向过程的编程语言,那么它就有针对 ...

  2. mongodb--linux下的安装

    linux下ubuntu的安装及启动 sudo apt-get upgrade sudo apt-get udpate sudo apt-get install mongodb 用 命令查看一下mon ...

  3. jdk环境变量设置理解

    1.系统变量→新建 JAVA_HOME 变量 . 变量值填写jdk的安装目录(本人是 E:\Java\jdk1.7.0) 2.系统变量→寻找 Path 变量→编辑 在变量值最后输入 %JAVA_HOM ...

  4. [GraphQL] Mutations and Input Types

    Sometimes, you want to resues object type when doing mutation, you can use 'input' type to help: inp ...

  5. iOS库--.a与.framework

    一.什么是库? 库是共享程序代码的方式,一般分为静态库和动态库. 二.静态库与动态库的差别? 静态库:链接时完整地拷贝至可运行文件里.被多次使用就有多份冗余拷贝. 动态库:链接时不复制.程序执行时由系 ...

  6. 浅析PHP中cookie与session技术

    1.cookie是什么? cookie指某些站点为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密). 通俗来理解就是,你去一个专卖店或者超市买东西,然后店里给你办一张 ...

  7. maven的pom.xml配置标签

    转自:https://blog.csdn.net/wf787283810/article/details/76188595 <project xmlns="http://maven.a ...

  8. nginx令牌限制并发

    http{ limit_req_zone $binary_remote_addr zone=req_one:10m rate=100r/s; server { listen 8080; server_ ...

  9. centos7 usually use

    firewall-cmd --permanent --add-rich-rule 'rule family=ipv4 source address=192.168.22.103 port port=8 ...

  10. Declarative programming-声明式编程-布局约束是一个案例

    声明式编程需要底层或运行时环境支持. 声明式语言的关键词确定了执行的关键控制流. 表述编程语言是说明性的东西:而不是具体的执行方案. 通常他的执行由解释器进行. In computer science ...