若是在搞科研,想在IEEE上發表文章,那麼就不得不用IEEE的論文模板,分爲doc版本和Tex版本。Tex是高德納·納什所寫,大牛級的任務,寫過《計算機程序設計藝術》,曾經是美國最年輕的科學院院士(入院年齡),三十多歲。Tex寫論文排版十分容易,擅長公式編輯。然而,因爲Tex是基於命令式的文本編輯器,不是「所見即所得」的模式,而且包含了大量的內容,因此學習起來比較吃力,可是一旦掌握了會發現word太弱了。本文主要介紹在IEEE模板下如何進行編寫。算法
首先安裝CTEX,其是Latex的中文套件,包含了豐富的package,易於使用。固然以後就是漫長的學習了,跟學習編程同樣,邊學習,邊編程,事半功倍。編程
而後,應當看IEEE給出的IEEEtran_HOWTO.pdf,其中詳細介紹瞭如何在該模板下進行論文排版。編輯器
最後,有恆心,有毅力,有耐心地解決碰到的問題。ide
下面介紹幾種經常使用的,而且容易犯錯的。學習
(一)插入圖片spa
Latex對於eps格式的圖片支持的很好,而其它格式卻沒有這樣幸運,因此建議使用eps的圖片,這樣對於圖片操做就簡單多了。.net
包含\usepackage{graphicx}設計
插入一個圖片code
[Math Processing Error]
blog
若是想並排插入多個圖片,而且進行編號:
[Math Processing Error]
(二)公式
Latex對於公式的處理主要有三種方法
a. 使用$符號,對於公式y=x^2+z,能夠寫成$y=x^2+z$。其中^表示上標,_表示下表。
b.採用displaymath,提供公式環境
[Math Processing Error]
c. 採用enquation,displaymath沒有公式編號,而enquation有。
(三)算法(僞代碼)
通常來講,只須要以下形式就能夠了
\documentclass{article}
\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode}
\begin{document}
\begin{algorithm}
\caption{Euclid’s algorithm}\label{euclid}
\begin{algorithmic}[1]
\Procedure{Euclid}{$a,b$}\Comment{The g.c.d. of a and b}
\State $r\gets a\bmod b$
\If{sfdfdsa}
\State sdfsadf
\EndIf
\While{$r\not=0$}\Comment{We have the answer if r is 0}
\State $a\gets b$
\State $b\gets r$
\State $r\gets a\bmod b$
\EndWhile\label{euclidendwhile}
\State \textbf{return} $b$\Comment{The gcd is b}
\EndProcedure
\end{algorithmic}
\end{algorithm}
\end{document}
然而對於IEEE的模板,就不能同時使用
\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode}
會報一個algorithmic重複定義的錯誤,猜測有多是包含的package衝突,因此就不能使用\If等等一些列的宏,只能供使用\IF,\ENDIF等全大寫的宏。
例子以下:
\usepackage{algorithm}
\usepackage{algorithmicx}
\begin{algorithm}[!h]
\caption{Routing algorithm}
\begin{algorithmic}[1]
\IF{there is a packet Px coming from X-}
\IF{$x\neq x_t(Px)$}
\STATE $ST(S_X)=ON$
\STATE $ST(S_F)=ON$
\ENDIF
\ENDIF
\end{algorithmic}
\end{algorithm}
這裏必定要注意IF和ENDIF要匹配,不然會報錯。
from: http://blog.csdn.net/lingdongjiangzhi/article/details/7581889