MATLAB 圖檔轉換 OFFICE 向量物件
小編常利用MATLAB繪製許多圖
而這些圖常常需要放在OFFICE WORD, POWERPOINT裡面
將結果呈現給讀(ㄌㄠˇ)者(ㄅㄢˇ)看
有時候讀者會看得特別的詳細
不小心ZOOM到500%UP一看 發現線阿~色塊阿~ 都糊成一片
哀呀~ 讀者不開心啦~ 小編日子也就不會好過到哪去
所以阿,輸出的圖檔一定要解析度夠高或者是直接產生向量圖檔
這樣才能滿足讀者或確保日後印刷品質
那麼...如何將MATLAB輸出之圖檔轉換為OFFICE向量圖檔(物件)呢?
首先,先從MATLAB圖檔輸出說起
MATLAB預設輸出的圖片解析度應該會跟電腦螢幕一樣 (通常為 72 or 96 dpi)
這圖片解析度拿來跟現在常用來說嘴的Retina 300dpi一比 都顯得格外不好意思
沒辦法...解析度高就是任性...
好吧~ 單就圖片的輸出解析度來說 是有救的 !!
信MATLAB得永生~ 來~快服下這一帖良藥
print(gcf,'-r300','-dpng','filename.png')
其他相關參數設定請自行help print
想要存JPEG 就用'-djpeg' (副檔名一併更改)
這'-r300' 也可以很霸氣地設定成'-r1200' 或更高 (數字代表解析度)
如果這樣會讓你感到尊爵不凡的話... 但這也相對使圖檔大小變得很大很大
然而,就算是設定成高解析度
也經不起讀者更強力的滾輪ZOOM IN攻勢阿~~
所以!! 為了讓MATLAB發揮最強大的圖形輸出功能
我習慣性會將一張圖存成三種格式
(1) *.fig : 保留原始格式,可再用程式或figure editor修改細節
(2) *.emf: 為了轉出至OFFICE向量圖檔所用 (本篇重點)
(3) *.png: 為了快速用系統圖片瀏覽器瀏覽所有圖片所用 (optional)
其中emf檔為 enhanced metafile的縮寫
EMF圖片檔案格式是WINDOWS於1990年代開發的技術
其檔案包含了點陣圖(bitmap)與向量圖片(vector graphics)元素
某種程度上有點類似SVG檔
總之呢 給他存下去就對了~~~ 接著跟著以下步驟一步一步走下去囉~
1. 將MATLAB產生之figure檔案(*.fig)另存為EMF圖檔(*.emf)
2. 開啟一空白Powerpoint檔案,並插入EMF圖檔
4. 當系統詢問是否轉換至Microsoft 繪圖物件時,請點選是
5.重複全選(快速鍵:Ctrl+A)並取消群組,直到取消群組的選項已被鎖住無法點選後,直接點選群組
6. 進入”大小”選單內,勾選鎖定長寬比,並關閉
上述步驟完成後即可直接從Powerpoint複製貼入至Word檔
而這些圖常常需要放在OFFICE WORD, POWERPOINT裡面
將結果呈現給讀(ㄌㄠˇ)者(ㄅㄢˇ)看
有時候讀者會看得特別的詳細
不小心ZOOM到500%UP一看 發現線阿~色塊阿~ 都糊成一片
哀呀~ 讀者不開心啦~ 小編日子也就不會好過到哪去
所以阿,輸出的圖檔一定要解析度夠高或者是直接產生向量圖檔
這樣才能滿足讀者或確保日後印刷品質
那麼...如何將MATLAB輸出之圖檔轉換為OFFICE向量圖檔(物件)呢?
首先,先從MATLAB圖檔輸出說起
MATLAB預設輸出的圖片解析度應該會跟電腦螢幕一樣 (通常為 72 or 96 dpi)
這圖片解析度拿來跟現在常用來說嘴的Retina 300dpi一比 都顯得格外不好意思
沒辦法...解析度高就是任性...
好吧~ 單就圖片的輸出解析度來說 是有救的 !!
信MATLAB得永生~ 來~快服下這一帖良藥
print(gcf,'-r300','-dpng','filename.png')
其他相關參數設定請自行help print
想要存JPEG 就用'-djpeg' (副檔名一併更改)
這'-r300' 也可以很霸氣地設定成'-r1200' 或更高 (數字代表解析度)
如果這樣會讓你感到尊爵不凡的話... 但這也相對使圖檔大小變得很大很大
然而,就算是設定成高解析度
也經不起讀者更強力的滾輪ZOOM IN攻勢阿~~
所以!! 為了讓MATLAB發揮最強大的圖形輸出功能
我習慣性會將一張圖存成三種格式
(1) *.fig : 保留原始格式,可再用程式或figure editor修改細節
(2) *.emf: 為了轉出至OFFICE向量圖檔所用 (本篇重點)
(3) *.png: 為了快速用系統圖片瀏覽器瀏覽所有圖片所用 (optional)
其中emf檔為 enhanced metafile的縮寫
EMF圖片檔案格式是WINDOWS於1990年代開發的技術
其檔案包含了點陣圖(bitmap)與向量圖片(vector graphics)元素
某種程度上有點類似SVG檔
總之呢 給他存下去就對了~~~ 接著跟著以下步驟一步一步走下去囉~
1. 將MATLAB產生之figure檔案(*.fig)另存為EMF圖檔(*.emf)
3. 點選繪圖工具格式,找到群組圖示後下拉選擇取消群組
該繪圖物件即為向量物件
也可以進一步直接於Word內編輯文字或調整位置
也可以進一步直接於Word內編輯文字或調整位置
放大檢視時亦不受解析度所限制~
又可以再一次躲過讀者狠毒的攻擊啦~ 挖哈哈哈~
[後記]
Q: MATLAB中常用的 imwrite, saveas, print有什麼不一樣?
應該先說這三個function相同的地方是什麼
都是把MATLAB figure底下所有axes內的所有物件繪製成一張"圖像" (image)
其中呢saveas其實就是print的簡化版
imwrite也大致上跟saveas差不多
所以如果想要變更更底層的圖像輸出特性
建議還是使用print囉~~
都是把MATLAB figure底下所有axes內的所有物件繪製成一張"圖像" (image)
其中呢saveas其實就是print的簡化版
imwrite也大致上跟saveas差不多
所以如果想要變更更底層的圖像輸出特性
建議還是使用print囉~~
Q: 除了存成emf檔案,還有其他可行的方法嗎?
有其他方法!! 一樣用print~
print(gcf,'-deps','filename.eps')
只要你的電腦有Photoshop, illustrator這樣可以開eps檔案的軟體
其實也可以存成eps檔,還可以順便美工一番~ 呵呵
只是要讓powerpoint讀取eps的話,小編尚未測試成功過呢!!
print(gcf,'-deps','filename.eps')
只要你的電腦有Photoshop, illustrator這樣可以開eps檔案的軟體
其實也可以存成eps檔,還可以順便美工一番~ 呵呵
只是要讓powerpoint讀取eps的話,小編尚未測試成功過呢!!
Q: emf檔案只能用powerpoint開啟嗎?
emf就是圖檔,可以用小畫家、Photoshop這類的軟體開啟並編輯
只是...科學家嘛~
以我的經驗,使用powerpoint製作學術圖表是非常方便且有效率的方式!!
提供參考囉~
只是...科學家嘛~
以我的經驗,使用powerpoint製作學術圖表是非常方便且有效率的方式!!
提供參考囉~
留言
張貼留言