用 MATLAB 畫完圖,將圖片保存成 EPS 格式的時候,漢字會變成亂碼,有什麼解決的方法?

因為要寫畢業論文,內容是用中文寫的,用到一些 EPS 格式的圖片。但是用 MATLAB 畫圖畫完保存後,漢字全都變成亂碼了,請問如何解決?或者 LaTeX 裡面應該如何在圖片的上方和左右添加文字?


這個屬於MATLAB自身的問題,就是它在生成EPS、PDF等矢量圖時沒有嵌入所需的字體,因此包括CJK文字在內的許多符號都成了亂碼,僅靠MATLAB自身是無法解決的,必須藉助第三方工具:

  1. Foxit Reader:裝Foxit Reader,免費版即可,在MATLAB figure窗口中選擇列印,然後用Foxit Reader列印到文件,即可得到完整字體嵌入的PDF文件,美中不足是生成的PDF文件尺寸無法自適應figure的尺寸,結果往往是一整張PDF只有中間一小塊是圖像,四周一大片空白
  2. matlab2tikz:nschloe/matlab2tikz · GitHub,將MATLAB figure轉為TikZ (Pgfplots)指令文件,轉換後之後在LaTeX裡邊直接input就行

  3. export_fig:altmany/export_fig · GitHub,第三方做的圖像導出工具,可以導出EPS、PDF並嵌入字體
  4. overpic或tikz:在MATLAB figure中不要添加任何非ASCII字元(可以用空格做佔位符留出足夠空白),將圖片保存為EPS,然後在LaTeX中導入圖片,用overpic或tikz宏包往上加漢字


可以直接保存成pdf格式啊, 幹嘛要eps呢。。。。


首先回答一下,latex插入pdf,eps,jpg,png都是可以的,本人也在寫畢業論文,都嘗試過這些文件的插入,沒有問題。

而且個人覺得pdf反而更美觀,題主可以列印高質量的pdf進行插入。

當然如果非要用eps,可以用acrobat把列印的pdf先裁剪,然後另存為eps就可以了。

親測有效。

祝題主論文順利!


我也很苦惱,辛辛苦苦做好的圖一保存全變回解放前。

上面的為什麼只能保存eps圖,不能截圖或者成其他格式。因為這是要寫論文的,首先qq截圖是絕對不行的,一眼就會被看出是截圖,另外latex只能插入eps格式氣不氣人!!!


謝邀,老生常談的問題了。

沒有辦法解決,或者說解決辦法就是不用 EPS。

這是因為 EPS 使用 ASCII 編碼,往裡邊填漢字必然亂碼。

LaTeX 里修改圖片見答案:

用 LaTeX 做幻燈片時(beamer),如何在插入的圖片上畫圖? - 知乎用戶的回答


其實你完全可以用QQ截圖


推薦閱讀:

金融學專業,需要學習哪些軟體/編程語言?
Matlab如何動態呈現計算結果
Cleve Moler 的複數步長數值微分方法
MATLAB做圖像處理到社會上實用嗎?
用MATLAB如何找到軌跡圖中的拐點?

TAG:MATLAB | LaTeX | eps | LaTeX排版與設計 |