word2016中寫出僞代碼

  最近寫碩士論文,發現有些個算法還是需要貼一些僞代碼進去,那麼如何在word裏寫格式優雅的僞代碼呢? 上網查過結論就是,利用名叫Auroraword插件來完成。

1 安裝

  下載Aurora安裝包雲盤鏈接,密碼t1s6。

  你可以去Aurora的官網下載。反正我是打不開,加VPN也打不開,據說軟件到2009年就不更新了,可能官網也掛了吧。此安裝包來自網絡,是帶有註冊機的破解版。

  • 如果電腦之前沒有miktex,建議安裝最新版miktex2.9。從 官網 下載並雙擊安裝。並記住安裝位置
  • 關閉office。雙擊Aurora安裝包,不要勾選安裝miktex的選項,直到安裝完成;

  不建議勾選安裝過程中的miktex選項,是因爲如果勾選了這個選項的話,在Aurora自己安裝完成後會試圖聯網下載miktex2.5並安裝。我親測過,這樣會聯網失敗下載不下來,並且據說2.5版本不太支持。此外,2.8版本也不支持,所以,會是徒勞操作。

  • 將電腦系統時間調到2009年某天,雙擊下載的破解機,輸入任意英文字母,破解成功。

  調整系統時間後會不能正常上網,windows可能也會顯示未激活,如果你的word版本像我(2016)一樣在2009年之後的話。不要在意這些,沒什麼大問題。

  • 打開word。如果是32位的word,會在選項卡中出現Aurora選項。聽說之前如果是64位word,則不會出現選項卡,只能通過插入——對象——Aurora Equation來插入latex代碼。不過我現在測試是可以的,可能新版office對其添加了支持吧。
  • 點擊插入方程式(Inline Equation)會出現一個窗口,在窗口中可進行latex代碼編輯。首先,點擊properties——paths,將安裝的miktex中latex,dvipng和pdflatex的路徑填寫在對應的位置。修改完成後點擊應用。6

  路徑通過剛纔記住的安裝位置查找,如果實在找不到,可搜索miktex文件夾。以下是我的安裝路徑(默認,無修改)可供參考。latex,dvipng 和pdflatex都在此文件夾下 D:\Program Files (x86)\MiKTeX\miktex\bin\x64

  • 在properties選項卡,將Rendering method修改爲第三個,Vector(render all fonts),點擊應用。

  Rendering method指的是渲染方式,一共有三種:Raster(位圖),Vector(矢量圖)和 Vector(render all fonts)。 如果有需要在沒有安裝Aurora插件的電腦的word查看公式,應使用第一種或第三種。但如果生成PDF再查看的話就不需要Aurora插件了。 miktex2.9使用第一種方式會報錯 problem running latex,因此只能選擇後兩種。 具體的不同,可參見Aurora manual的Formula properties部分。

  • 在編輯欄輸入簡單的latex代碼後點擊refresh進行測試,如果顯示Done並在word文檔的相應位置顯示出編譯得到的內容後,就證明安裝成功。

以上內容全部在系統時間2009年的時候完成。如果顯示Done之後,就可以把系統時間調回正常了。

2 編譯遇到錯誤:Problems running LaTex

  可能原因如下:

  • miktex的latex,dvipng和pdflatex路徑不對;
  • 系統時間沒有調整至2009年。在一次運行成功後就可以把時間調回來了;
  • Rendering method 選擇的不對。據說不同版本的miktex所能成功渲染的方法也不同,可以多試試;
    修改了packages選項卡,引入了還沒有安裝的package(下文會講)。

3 插入僞代碼

  首先,Aurora只是插件並無調試功能,任何在Aurora出現的問題都可以通過miktex調試,miktex成功了,Aurora就不會有大問題。因此,想要在Aurora中插入比較複雜的公式,需要引入一些包的時候,最好先在miktex中調試成功。使用miktex自帶編輯器TeXworks就可以。
  其次,由於之前我安裝的是basic版的miktex,包含的宏包較少。如果直接在Aurorapackages選項卡引入沒有安裝過的宏包時,系統就會報錯Problem running Latex。因此,需要提前在miktex中進行調試,因爲此時系統會根據代碼自動安裝需要的宏包,例如,\usepackage{mathtools}這句話會讓系統自動搜索並安裝mathtools宏包
  如果想要進行包管理的話,可以打開miktex consolepackages選項卡查看宏包的安裝情況。在這裏也可以進行宏包的安裝和卸載。

4 舉個栗子

  • 假設以下宏包都已經在miktex中成功安裝。在word中插入Aurora對象,並修改packages選項卡爲以下內容:
\usepackage{amsmath}
\usepackage{amssymb}
% \usepackage{euler}
\providecommand{\abs}[1]{\left\lvert#1\right\rvert}
\providecommand{\norm}[1]{\left\lVert#1\right\rVert}
\usepackage{bbm}
\usepackage{CJK}
\usepackage{listings}
\usepackage{xcolor}
\usepackage{listings}
\usepackage{amsmath,bm,graphicx,multirow,bm,bbm,amssymb,psfrag,algorithm,subfigure,color,mdframed,wasysym,subeqnarray,multicol}

\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{amsmath}
\renewcommand{\algorithmicrequire}{\textbf{Input:}}
\renewcommand{\algorithmicensure}{\textbf{Output:}}
  • 在公式框中粘貼以下代碼。如果你的僞代碼段在miktex編譯通過但是在Aurora會出問題,試一試像如下代碼一樣,在\begin{algorithm}後加上[H]。
\renewcommand{\thealgorithm}{1}
\begin{algorithm}[H] 
\caption{*******************************************} 
\label{ABCLFRS}
\begin{algorithmic}[1] 
\Require{S,$\lambda$,T,k} 
\Ensure{$\mathbf{w}_{222}$}\\ 
\textbf{initialize}: Set $\mathbf{w}_1 = 0$ 
\For{$t = 1,2,...,T$} 
\State Choose $A_t \subset[m]$
\EndFor
\end{algorithmic} 
\end{algorithm}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章