word2016中写出伪代码
最近写硕士论文,发现有些个算法还是需要贴一些伪代码进去,那么如何在word里写格式优雅的伪代码呢? 上网查过结论就是,利用名叫Aurora的word插件来完成。
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,包含的宏包较少。如果直接在Aurora的packages选项卡引入没有安装过的宏包时,系统就会报错Problem running Latex。因此,需要提前在miktex中进行调试,因为此时系统会根据代码自动安装需要的宏包,例如,\usepackage{mathtools}这句话会让系统自动搜索并安装mathtools宏包。
如果想要进行包管理的话,可以打开miktex console的packages选项卡查看宏包的安装情况。在这里也可以进行宏包的安装和卸载。
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}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· Open-Sora 2.0 重磅开源!