matlab 用visio编辑_[转载]Matlab, VISIO, Word间图形文件格式转换

Matlab, VISIO, Word间图形文件格式转换

Written by Miracle.G,

Hebust University of S&T, Dep.

of EE

2008-1-1

存在问题:

在论文中需要接入波形,解决方法是用matlab画出波形,导入visio中,再在visio中加入坐标,注释等,最后再导入至Word中。

过程是可以的,当visio对象又粘入word文档,看上去是显示的图形是好的,但打印时图形有时候不全。在word中用对象convert几次后,就发现visio对象会丢东西,就和打印出的波形一样。尤其是文件存盘后再打开,再用convert,visio对象肯定会显示不全,显示不全则打印就不全。

测试

经测试发现,由matlab至visio的copy格式是EMF(enhanced

metafile),而由visio至word则为用visio object格式。

还发现,如果将插入visio的matlab图片ungroup后再group则上述问题不再出现,但有一个问题是ungroup后,图片上的方字会错位。所以还要调文字位置,很麻烦。

还发现,如果直接由matlab至word,相当于给word插入EMF文件,也没问题。但这时就成了图片。

还发现,如果直接由visio向word选择性粘贴,有两种选择一种是WMF格式,另一种是EMF格式,在word中都为图片,对于WMF格式会图形显示就出错,而对于EMF格式波形显示不出错,但在打印时会出现visio固有的文字打印为黑条的问题1。

还测试了加入corelDRAW的情况,测试方法是:matlab的copyàcorelDRAW的paste

specialàCorelDRAW的copyà visio的paste specialà visio的copyà word的paste

special,测试前述的图片丢失内容的情况,不再出现。而且在visio中ungroup后也不出现文字位置变化的问题。

原因分析

感觉好象visio在对EMF文件的处理上有问题。

Matlab copy

figure后实际上在剪切板上是EMF文件格式(是一种矢量格式),经visio后直接导入至word有问题,而ungroup再group后拷入word就没有问题,可见是visio对剪切板上的EMF文件解释有BUG。可以从两方面说明:

1. ungroup再group没问题,是因为ungroup后所有元素都成为visio的shape,实际上就成了visio内部对象,再group后还是visio的对象,所以到了word后不会再出问题。

2. 在中间环节上加入CorelDRAW后,由CorelDRAW先处理一下,再传给visio,这样就没问量,整个处理过程都使用的是剪切板。其实就是利用CorelDRAW将EMF文件再重新整理一下,可能是matlab存成的EMF文件visio处理起来有点问题。

解决方法

由上述分析,自然有两个方法:

1. ungroup再group。

2. 在中间环节上加入CorelDRAW。

你可能感兴趣的:(matlab,用visio编辑)