论文矢量图导出踩坑记 (含Word/latex + Visio, Adobe Acrobat Pro, Matlab等)

论文中插入矢量图并不一定总是能够成功。本文分别记录使用Latex和Word进行写作时插入矢量图时的典型成功案例 以及 不成功的案例及解决方案,以备不时之需。

word

1. Matlab 2020 复制到Visio后图片带有黑框

之前用Matlab+visio+word写作时,都是Matlab figure窗口-->编辑-->复制图窗-->在visio中粘贴-->visio中继续进行下一步处理,得到更大的矢量图-->保存为增强型图元文件(emf)-->插入word。之前使用的效果很好,从未出现过问题。

如果想去掉MATLAB图像边框,使用代码

set(gca,'xtick',[],'xticklabel',[],'xcolor','w')
set(gca,'ytick',[],'yticklabel',[],'ycolor','w')
set(gca,'ztick',[],'zticklabel',[],'zcolor','w')

即可。

今天将matlab更新到2020(a)后, 再使用上面的代码,matlab复制的图窗将有黑框:

解决方法1:将背景色设为白色,代码如下:

set(gca,'xtick',[],'xticklabel',[],'xcolor','w')
set(gca,'ytick',[],'yticklabel',[],'ycolor','w')
set(gca,'ztick',[],'zticklabel',[],'zcolor','w')
set(gcf,'color','white')

visio中不再有黑框。

解决方法2:

查阅MATLAB axes属性文档

应将代码改为:

set(gca,'xtick',[],'xticklabel',[],'xcolor','none')
set(gca,'ytick',[],'yticklabel',[],'ycolor','none')
set(gca,'ztick',[],'zticklabel',[],'zcolor','none')

visio中也不再有黑框。

 

2. Visio中图片保存到Pdf后图片消失

现在,将matlab中复制的图窗粘贴到了visio中,右边的蓝色图片是matlab复制图窗后的图片,如下图:

再将visio的图片另存为增强型图元文件(emf)后,粘贴到word里,此时一切正常,word中的图片和visio里的图片一样:

然而,将word导出pdf后,pdf中的蓝色图片竟然消失了!

现将尝试的解决方法以及解决结果总结为下表:

尝试方法结果
在matlab中将图片保存为svg格式,然后再粘贴到viiso中,之后再保存成emf格式到word中失败。matlab中导出的图像不再是矢量图
将visio保存为pdf格式,再用adobe acrobat pro转换为eps格式,再插入word中失败。visio转换的pdf中图片就已经消失了
打印为pdf失败。图片能够保存,但不再是矢量图
切换matlab版本成功。最终通过使用别的电脑的matlab2018运行相同的代码才得以解决。

 

该问题与matlab 2020有很大关系

因此,怀疑是Matlab2020中复制的三维矢量图图窗与visio 2016并不兼容(或者就是matlab 2020本身的问题),导致visio导出的pdf中来自matlab 2020的三维图窗消失。

 

Latex

 

持续更新中

 

======================================================================================================

原载于 我的博客

如有错误,可联系 rxnlos@126.com

======================================================================================================

### 提升LaTeX生成图片的分辨率和清晰度的方法 为了确保LaTeX文档中的图片具有较高的分辨率和清晰度,建议采用矢量图形而非位图格式。矢量图形在缩放过程中不会损失质量,因此非常适合用于学术出版物。 #### 使用高质量矢量图 当使用Visio或其他绘图软件创建图表时,推荐先将其导出PDF格式[^2]。随后可以通过Adobe Acrobat或Ghostscript等工具进一步处理这些PDF文件,提取并转换为EPS格式以便于LaTeX编译环境更好地支持: ```bash pdftops -eps input.pdf output.eps ``` 此命令能够有效地将PDF页面转化为单页EPS文件,适用于大多数情况下的图像嵌入需求。 #### MATLAB生成高分辨率图像 针对由MATLAB产生的数据可视化结果,应当调整其默认输出参数来获取更高品质的静态图像。具体操作是在Figure窗口通过菜单选项设定渲染分辨率为600 DPI以上,并选择适合长期存储及印刷用途的无损压缩格式如PNG或TIFF[^3]。此外,在脚本内部也可以编程方式指定上述配置项: ```matlab set(gcf, 'PaperPositionMode', 'auto'); print('output-figure', '-dpng', '-r600'); % 设置DPI为600并保存为PNG ``` 这段代码片段展示了如何利用`print()`函数控制最终输出的质量标准。 #### 正确引入外部资源至LaTeX项目 对于已经准备好的高清EPS文件,务必确认安装有必要的驱动程序包(例如`graphicx`),并通过适当语法加载它们到文档主体内[^4]: ```tex \usepackage{graphicx} ... \begin{document} % 插入EPS格式的图片 \includegraphics[scale=0.8]{path/to/your-image-file.eps} \end{document} ``` 这里的关键在于合理运用`\includegraphics[]{} `指令及其属性列表来自定义显示比例等因素,从而达到最佳视觉呈现效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不再更新,请勿购买!!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值