這幾天在開始寫論文,準備發的是elsevier,這個網站的instruction有問題,下載的東西基本上好多的錯誤,所以我就寫博客記錄。
關於使用 Latex 的好處請看使用LaTeX寫論文 - CSDN博客
在開始的時候需要先安裝工具
下載
這裏需要我們先安裝 Latex ,我安裝的是 Ctex 安裝地址是 CTEX
我這裏下載的是 CTeX_2.9.2.164.exe 如果沒法使用請和我說:[email protected]
本文還需要下載 basic-miktex-2.9.6069-x64
工具,可以到 http://miktex.org/ 下載,或者在本文最後點擊我的網盤下載。如果不能下載請和我說。
我們首先安裝Ctex,一路下一步,注意可以安裝到D盤,不一定需要C盤。
安裝
先安裝 Ctex 雙擊打開安裝包
安裝 Ctex 詳細步驟
如果你是比較熟悉安裝軟件的大神,請跳過本章
- 選擇語言
- 點擊下一步,可以看到下面很多時候我都說下一步
- 接受協議
- 選擇功能,點擊下一步
- 選擇安裝文件夾,這個文件夾可以不放在 C 盤,如果自己的 C 盤空間不大
- 點擊安裝之後點擊下一步
安裝 basic-miktex
雙擊 basic-miktex-2.9.6069-x64 打開
- 同意協議點擊下一步
- 選擇給所有用戶,點擊下一步
- 選擇文件夾,這個文件很大,可以選擇在其他文件夾,需要記住這個文件夾,因爲在下面需要用到
- 點擊下一步
- 點擊開始安裝
- 點擊關閉
現在就可以從開始菜單打開 WinEdt 和 TeXworks 但是我比較喜歡使用 TexStudio 這個軟件安裝比較簡單。
如果在使用 WinEdt 編譯的過程出現下面的問題,就請按照下面的步驟解決
CTeX 系統找不到指定的文件
在 Options 的 Execution Modes 打開
點擊 Tex System 可以看到 MiKTeX 的路徑,需要看一下這些路徑是否正確,確定的方法是通過搜索 MiKTeX 2.9
的安裝文件夾的方式
也就是剛纔的 basic-miktex-2.9.6069-x64 安裝選擇第3步的文件夾
修改完成就點擊確定這樣就可以。
打開模板
我們開始使用艾斯維爾官方的模板,官方下載位置 elsarticle-template.zip
下載之後將解壓到一個文件夾,然後雙擊 ecrc-template.tex
打開,打開之後進行編譯
可以看到裏面沒有ecrc.sty
在我們編譯的時候就出錯
File `ecrc.sty' not found. File `comment.sty' not found.
好像還沒告訴大家是如何編譯的,在軟件點擊編譯就是下面的圖標
可以去下載我的ecrc.sty
,下載放在最後,大家如果發現無法下載,就聯繫我
下載之後需要放在 elsarticle-template 所在文件夾
elsarticle-num.bst elsarticle-template.log elsarticle-template.tex model1-num-names.bst model1a-num-names.bst model2-names.bst model3-num-names.bst model4-names.bst model5-names.bst model6-num-names.bst mybibfile.bib numcompress.sty ecrc.sty
關閉軟件再重新打開,進行編譯,結果還是發現找不到
elsarticle.cls
所以這裏缺文件還是很多
LaTeX Error: File `natbib.sty' not found.
LaTeX Error: File `lineno.sty' not found
把這些放在一個文件夾,這樣就好啦。
可以嘗試使用我的壓縮包,我裏面包含了用到的文件,或者自己下載 lineno.zip 和 natbib.zip 這些。
如果安裝了缺少的文件之後還發現缺少字體也就是會出現下面的異常
FATAL miktex-maketfm - No creation rule for font psyr.
Font T1/cmr/ m/n/10=ecrm1000 at 10.0pt not loadable: Metric (TFM) file not found. <to be read again> relax l.100 \fontencoding\encodingdefault\selectfont
pifont.sty 64 Font U/psy/m/n/10=psyr at 10.0pt not loadable: Metric (TFM) file not found. <to be read again> relax l.64 {\Pifont{psy} }
用 Texwork 打開 tex 文件,點擊編譯,可以在下面看到 pifont.sty 裏存在錯誤
可以在剛纔安裝 basic-miktex 的文件夾的 tex\latex\psnfss\pifont.sty
找到
如我的 basic-miktex 安裝在 E:\Program Files (x86)\MiKTeX 2.9
那麼我就可以通過 E:\Program Files (x86)\MiKTeX 2.9\tex\latex\psnfss\pifont.sty
找到文件
通過點擊 pifont.sty 就可以跳轉到出現問題的代碼
嘗試刪除 {\Pifont{psy}}
代碼或添加註釋,添加之後注意保存。如果不知道如何修改這個文件,可以下載我修改好的文件替換自己的文件。
然後打開 basic-miktex 的文件夾的miktex\bin\x64\initexmf.exe
例如我的 basic-miktex 文件夾安裝在 E:\Program Files\MiKTeX 2.9
我就可以通過 E:\Program Files\MiKTeX 2.9\miktex\bin\x64\initexmf.exe
打開
另一個方式是通過 MiKTeX 的包管理器安裝 symbol 就可以解決,如果無法聯網請看離線安裝Miktex/CTEX的宏包Package-02015678
打開 initexmf.exe
的方式是通過命令行的方式打開,通過命令行進入 basic-miktex 的文件夾的dvips\config
文件夾,然後輸入下面代碼。注意路徑是我的安裝路徑,需要修改路徑爲你自己的路徑。
"E:\Program Files\MiKTeX 2.9\miktex\bin\x64\initexmf.exe" --mkmaps
現在編譯就可以發現編譯成功
我在TeXStudio打開,發現沒有錯誤。
下載:
參見:使用lyx排版,編輯Elsevier提供的模板,生成pdf時,出現的關於字體的錯誤
miktex - Problems with fonts - TeX - LaTeX Stack Exchange
順便推薦一個軟件:Tickeys這個軟將可以讓我們打字有聲音,晚上打字用這個軟件感覺好。
實際很少有人在安裝的過程會遇到這麼多問題。
開始寫論文
開始寫的是 \documentclass[3p,times]{elsarticle}
就是引用 elsarticle,\documentclass[]{elsarticle}
選項可以使用參見:https://www.elsevier.com/__data/assets/pdf_file/0009/56844/elsdoc2.pdf
我們開始就是題目,我們的題目是亂寫請看下面
首先題目\title{A paper csdn and Mircrosoft is laji \tnoteref{t1,t2}}
,其中\tnoteref
是引用腳註,一般寫的就是t1,t2標識,這個隨意。其中寫了t1,在題目後面就有一個星,在寫一個就出現一個逗號,後面加兩個星,規則是第n個就有n個星。
如輸入下面代碼
\title{A paper csdn and Mircrosoft is laji \tnoteref{t1,t2,t3}}
然後我們在外面寫\tnotetext[標識]{Content}
,也就是頁面下的內容,這裏我寫的是垃圾微軟,可以看到Content可以很長,而我們還有t3沒寫,沒寫的沒顯示
\title{A paper csdn and Mircrosoft is laji \tnoteref{t1,t2}} \tnotetext[t1]{This document is a collaborative effort.} \tnotetext[t2]{The second title footnote which is a longer longer than the first one and with an intention to fill in up more than one line while formatting.But it's to small,I write Mircosoft is laji.}
現在運行就可以看到這個界面
在頁面下方可以看到這個界面
現在可以看到星直接存在逗號了,而且需要知道,這裏的符號不只是可以寫 t1
等,可以寫爲任意的字符
如修改爲下面代碼
\title{A paper csdn and Mircrosoft is laji \tnoteref{csdn,t2}} \tnotetext[csdn]{csdn blog.csdn.net/lindexi\_gd.} \tnotetext[t2]{lindexi.}
作者
接着我們開始寫作者,假如我們兩個作者,第一個是lindexi_gd
第二個是Microsoft
我們需要知道在Latex的註釋是%%
作者的格式是
%% \author[label1,label2]{<author name>} %% \address[label1]{<address>} %% \address[label2]{<address>}
每個label就是標籤,可以在地址寫,可以在別的地方寫作者的地址
Latex用\\
換行,在我們的地址比較長,可以用這換行
\author[lindexiAddress]{lindexi\_gd \corref{cor1} \fnref{fn1} } \ead{lindexi\[email protected]} %%作者的\corref{lable}就是在腳註,用的是*,第n個有n* %%\fnref{lable} 腳註,這個纔是真的,但是沒顯示 %%\author[lindexiAddress]{lindexi\_gd \corref{cor1} \fnref{fn1} } %%地址寫在下面\address[lindexiAddress]{The lindexi's address } %%地址是a,b,c label不區分大小寫 \author[Address1,Address2]{Mircrosoft \corref{cor2} \fnref{fn2}} \ead{[email protected]} \cortext[cor1]{Corresponding author} \cortext[cor2]{Principal corresponding author} \fntext[fn1]{This is the specimen author footnote.} \fntext[fn2]{Another author footnote, but a little more longer.} \fntext[fn3]{Yet another author footnote. Indeed, you can have any number of author footnotes.} \address[lindexiAddress]{The lindexi's address } \address[Address1]{River Valley Technologies, 9, Browns Court, Kennford, Exeter, United Kingdom} \address[Address2]{Central Application Management, Elsevier, Radarweg 29, 1043 NX\\ Amsterdam, Netherlands}
複製我這個放到代碼就可看到下面界面
頁面下方還有文字,只是我就不截圖了
摘要
然後就是我們的摘要
\begin{abstract} 摘要寫在這 \end{abstract}
當然在 Latex 不能寫中文,所以我就換了代碼截圖
關鍵字
可以從上面的圖片看到,摘要下面就是關鍵字
關鍵字寫在 \begin{keyword}
裏面
\begin{keyword} \end{keyword}
不同的關鍵字使用\sep
分開
\begin{keyword} CSDN \sep lindexi \sep windows.sc \end{keyword}
下面就是正文了,寫正文會遇到這些問題如何插入圖片,插入算法,圖片位置不對,下面讓我一個個告訴大家如何做
行標記
設置了 \linenumbers
就可以看到每 5 行給一個數值,請看下面代碼
\begin{keyword} CSDN \sep lindexi \sep windows.sc \end{keyword} \linenumbers
也就是 \linenumbers
只需要寫進入在 \linenumbers
下面的文字就會在每 5 行添加數字,之前我爲了找到文章左邊的數字是哪裏設置的找了很久,所以就在這個告訴大家。
嘗試去掉 \linenumbers
就不會顯示數字
標題
在文章的開始就是章節的標題,如第一章我寫的是 lindexi.gitee.io
那麼就需要使用這個代碼
\section{lindexi.gitee.io} welcome tolindexi.gitee.io that has many blogs
然後添加二級標題 blog.csdn.net/lindexi_gd
請看代碼
\subsection{blog.csdn.net/lindexi\_gd} welcome blog.csdn.net/lindexi\_gd that has many blogs
從上面的代碼可以知道,一級標題是\section{標題名}
而二級標題是\subsection{標題名}
輸入列表
\begin{enumerate}[標號]
標號可以使用數字或字,其中可以加[]
,()
我們可以在列表嵌套
\begin{enumerate}[a)] \item This item has roman numeral counter. \item Another one before we close the third level. \begin{enumerate}[a)] \item This item has roman numeral counter. \item Another one before we close the third level. \end{enumerate} \end{enumerate}
雙欄
需要雙欄,在\documentclass[3p,times]{elsarticle}
改5p
還有其他選項,這些我們現在不需要,直接改5p就好\documentclass[5p,times]{elsarticle}
這裏是設置使用的模板,可以設置是否分欄、頁邊距、默認的字體類型及大小
可以選的這些
\documentclass[preprint,review,12pt]{elsarticle} \documentclass[final,1p,times]{elsarticle} \documentclass[final,1p,times,twocolumn]{elsarticle} \documentclass[final,3p,times]{elsarticle} \documentclass[final,3p,times,twocolumn]{elsarticle} \documentclass[final,5p,times]{elsarticle} \documentclass[final,5p,times,twocolumn]{elsarticle}
引用
我們的論文會參見很多人的,那麼添加一個人或刪一個引用,可能需要修改文章,而且因爲排序問題可能需要修改文章的很多代碼。不過在 Latex 有自動的方式,自動修改引用的序號。使用這個方法十分簡單。參考需要寫在頁面的最下,在 \end{document}
的上方。在寫引用之前需要搜索刪除 \bibliography{<your-bib-database>}
這個代碼
下面來寫一個參考
\begin{thebibliography}{00} \bibitem[每次參考自動寫的內容,作者,如果遇到括號不寫]{label} 參見lindexi \end{thebibliography}
在文章遇到我們需要參考就使用下面代碼,注意將 label 替換爲參考裏面的 label
\citet{label}
這樣就好,如果我們沒寫作者看起來不好
如果沒寫作者,只要一個[1]
就可以了,在正文可以使用另一個方式引用
\citep{label} 另一方式 \cite{label}
要寫一個上標我們應該用^
假如我們的一個引用是這樣寫的
\begin{thebibliography}{00} \bibitem{lindexi 1} lindexi\_gd csdn. \bibitem{lindexi} blog.csdn.net/lindexi\_gd. \bibitem{csdn} lindexi.github.io \end{thebibliography}
在引用的寫 $^{\cite{lindexi 1}}$
就可以做出下面的效果
Named Lin Dexi{\cite{lindexi 1}}, I am a developer who has been in contact with UWP technology^{\cite{lindexi}} since 2015.
注意$$
就是使用公式
關於參考文獻請看latex 自定義bst文件 - CSDN博客
將多個引用使用 -
連起來,如 [1][2][3]
轉 [1-3
請看latex中同一處引用多篇文獻 - CSDN博客
斜體
\emph{內容}
粗體
\textbf{}
排列
左對齊
\begin{flushleft} \end{flushleft}
居中
\begin{center} \end{center}
右對齊
\begin{flushright} \end{flushright}
分數
\frac{上}{下}
如$ \frac{1}{2} $
請看界面
無序列表
\begin{itemize} \item \item \end{itemize}
根號
\sqrt{}
插入圖片
插入圖片的位置不對,我們可以使用[!htb]
來取消latex的美學,latex的美學很爛。
我們需要先引用 float
\usepackage{graphicx} \usepackage{float}
在引用圖片寫上 [!htb]
添加到指定的代碼
\begin{figure}這裏用取消美學[!htb] \includegraphics{fig1.png} \caption{Problem Description } \label{fig1} \end{figure}
圖片位置可以使用 figure=
指定本地的圖片
如果是esp,需要 \epsfig
來指定,請看代碼
\begin{figure}[h] \centerline { \epsfig { figure=images/fig, height=9cm, angle=-90 } } \caption{標題} \label{Fig1} \end{figure}
參見:http://blog.sciencenet.cn/blog-400681-886697.html
http://blog.csdn.net/bingfengxiao/article/details/6650096
多圖並排
使用\vfill
換行,\hfill
並排
\begin{figure*} \centering \begin{minipage}{0.48\linewidth} 0.48大小 \centering 圖在中間 \includegraphics[width=5cm,height=5cm]{f1} 圖,如果使用eps需要轉換 \caption{圖1 } \label{fig:1} \end{minipage} \hfill 並排 \begin{minipage}{0.5\linewidth} \centering \includegraphics[width=5cm,height=5cm]{f2} \caption{圖2 } \label{fig:2} \end{minipage} \end{figure*}
每一張圖有自己的Figure
如果需要用的是一張圖包含小圖,就需要使用 subfigure
的方法
\begin{figure} \centering \subfigure[(a)] { \includegraphics[width=5cm,height=3cm]{1a} } \subfigure[(b)] { \includegraphics[width=5cm,height=3cm]{1b} } \caption{ fig } \label{f1} \end{figure}
http://blog.csdn.net/lsg32/article/details/8121417
http://www.ctex.org/documents/latex/graphics/node109.html
使用eps
引用 epsfig
\usepackage{graphicx} \usepackage{epsfig}
打開cmd,進入圖片路徑, 使用 epstopdf 命令轉換 eps 爲 PDF
epstopdf 圖.eps
運行上面代碼輸出 圖.pdf
在相同的文件夾
引用的時候不需要寫後綴名
\includegraphics[width=7cm,height=7cm]{f1}
把生成的pdf也放進去,這樣生成就好
重新爲圖片編號:http://www.52yfjc.com/2014/show.asp?id=887
Visio轉eps
在線wmf轉eps https://cloudconvert.com/wmf-to-eps
svg轉eps http://cn.office-converter.com/SVG-to-EPS
一個簡單方法是選擇要轉換的圖,新建一個visio,然後在頁面大小,設爲適應,然後保存爲pdf就好,一般不需要在轉
公式
\begin{equation} 公式 \label{g1} \end{equation}
插入公式:https://www.kancloud.cn/thinkphp/latex/41806
http://mohu.org/info/symbols/symbols.htm
http://blog.csdn.net/garfielder007/article/details/51646604
公式空格
在公式添加空格有下面的方法
latex | 空格 |
---|---|
a \qquad b | 兩個quad空格 |
a \quad b | quad空格 |
a\ b | 大空格 |
a\;b | 中等空格 |
a\,b | 小空格 |
表格
關於表格請看 使用latex撰寫elsevier論文,latex表格,插圖以及調用的安裝包 - CSDN博客
插入算法
很多算法都是使用僞代碼的方式,簡單使用的方法是如下面的方式
\begin{algorithm} \caption{} \label{a} \begin{algorithmic} \STATE ) $ $ \end{algorithmic} \end{algorithm}
頁開始
如果需要設置期刊的名,可以使用下面的方法
\journalname{期刊名}
設置本地包
因爲 Latex 要安裝一些庫是需要聯網的,但是很多時候網絡都不是很好,所以這時需要使用 國內的源
具體使用方法請看:離線安裝Miktex/CTEX的宏包Package-02015678
下載
下面就是本文用到的各個文件的下載鏈接,如果發現無法下載,或沒有 csdn 積分,請郵件聯繫我,我通過郵件發送給你
basic-miktex-2.9.6069-x64
鏈接:http://pan.baidu.com/s/1slnnoPB 密碼:wcaw
Btsync:B74YC6AIP6J2CNK2CNTCXGG3NVGGMTTXO
CTeX
TeXStudio
鏈接:http://pan.baidu.com/s/1pLCZL5h 密碼:hb29
Btsync:BBXDB6T3LBPYJ6CVXTV7V6226FGXHXOFP
https://sourceforge.net/projects/texstudio/?source=typ_redirect
ecrc.sty
elsarticle-template
官方的艾斯維爾文件是編譯不通過,下面是我添加了文件的版本
elsarticle-template 包含文件-CSDN下載
ecrc-template.tex
http://pan.baidu.com/s/1mi3CzJq
Btsync: BQ2XFET5YROHGWVN2NZNQ4X5VTKEKLO4C
lineno.sty
lineno.tex
這是 lineno.tex 官方版本點擊下載
lineno
The LaTeX package lineno.sty provides line numbers on paragraphs
natbib.sty
pifont.sty
這個文件需要放在 miktex 安裝文件夾的 tex\latex\psnfss\ 覆蓋,用於解決
Font U/psy/m/n/10=psyr at 10.0pt not loadable: Metric (TFM) file not found.
但是會讓一些字體無法看到
另一個解決方法是通過 miktex 安裝 symbol 庫就可以解決。
從開始菜單找到 Package Manager (Admin) 打開,可以看到下面界面
在裏面搜索 symbol 按下回車搜索,可以看到下面界面,點擊第一個右擊安裝
安裝完成可以看到下面界面,下面是我通過在本地的 E:\package
做安裝文件夾在本地安裝,因爲我無法聯網安裝
參見:https://www.elsevier.com/authors/author-schemas/preparing-crc-journal-articles-with-latex
http://hubl82.blog.163.com/blog/static/1267694852013459412617/
更多數學公式請看 Latex 公式速查
離線安裝Miktex/CTEX的宏包Package-02015678