本文简单介绍如何手动安装一个 LaTeX 宏包。

一般来说,下载的 TeX 发行版已经自带了很多宏包,可以满足绝大部分需求,但是偶尔我
们也可能碰到需要使用的宏包碰巧没有安装的情况,这时我们就需要自己下载安装宏包了

下载 package 可以从 CTAN(Comprehensive TeX Archive
Network)下载。下载下来的宏包,有的直接包含 .sty文件(.sty 文件就是package
的最终形式);有的下载下来只包含了 .ins, .dtx,以及一个 readme 文件,这时需
要自己编译生成 .sty 文件,以及生成相应的 manual。下面详细介绍生成 sty 文件
以及帮助文档的步骤。

以下步骤的前提是你已经安装好了 TeX 发行版,本文以 MikTex 为例,请确保 MikTex 的
可执行程序已经加入了系统的环境变量中(PATH)。另外我的系统的 win 8.1,win 7 应
该也是一样的。

第一步:下载宏包,解压,不赘述,下载地址 https://www.ctan.org/pkg,我下载的一
个宏包名称是 qrcode,是用来生成二维码的,以这个宏包的编译为例来讲解。

第二步:找到你的解压后安装包地址,在我的电脑上是 E:LaTeX_packageqrcode, 然
后打开电脑的命令提示符界面,把当前的路径改到这个 package 所在的文件夹,也就是
E:LaTeX_packageqrcode

第三步:生成 qrcode.sty,在命令提示符界面输入 latex qrcode.ins, 经过一段时
间编译,qrcode.sty 就生成了;然后接着生成帮助文档 manual, 在命令提示符界面输
latex qrcode.dtx,编译完成以后,会生成一个叫做 qrcode.dvi 的文件,这个文
件也可以用 ctex 自带的 yap 程序打开,不过不是很方便,所以最好还是把它转为 pdf
格式,两步,先输入 dvips qrcode.dvi,生成 qrcode.ps 文件,再输入 ps2pdf
qrcode.ps
,最终就生成了 qrcode.pdf的帮助文档,帮助文档包含这个 package 的基
本用法,命令的格式等。最终完成的样子如下

大专栏  Windows 下 LaTeX 手动安装宏包(package)以及生成帮助文档的整套流程.com/18-1-22/32725143.jpg" title="生成的 package" style="float: middle;"/>

第四步:生成 qrcode.sty 文件以后还需要把这个文件放到 LaTeX 能够识别的路径下,
在 ctex 下,以我的电脑为例,这个路径是 D:Program
FilesCTEXMiKTeXtexlatex
,你可以在这个路径下建立一个文件夹,譬如 qrcode,然
后把 qrcode.sty 放到这里。接着在你的电脑里找到 MikTex 的 settings 这个程序,
settings 有两个,选择后面括号里有 admin 的那个,打开以后,在 general 选项卡下有
Refresh FNDB 按钮,点击,过一会,这个 package 就会被加入 MikTex 的路径中,然后
在你的 tex 文件中就可以使用这个 package 了。

使用

利用这个宏包,最后可以生成文本对应的二维码,代码如下:

documentclass{article}
usepackage{qrcode}
begin{document}
This is a qrcode for Google HK.
qrcode{https://www.google.com.hk/}
end{document}

最后生成的二维码如下图:

其他宏包的如果要手动安装,应该都是类似操作的。Happy TeXing!

如果不想如此麻烦,可以选择使用 TeX Live,完整版
已经预装了大多数你要使用的 package。

参考

Windows 下 LaTeX 手动安装宏包(package)以及生成帮助文档的整套流程的更多相关文章

  1. LaTeX手动安装宏包(package)以及生成帮助文档的整套流程

    注意:版权所有,转载请注明出处. 我使用的是ctex套装,本来已经自带了许多package,但是有时候还是需要使用一些没有预装的宏包,这时就需要自己安装package了.下载package可以从CTA ...

  2. LaTeX-手动安装宏包(package)以及生成帮助文档的整套流程

    我使用的是ctex套装,本来已经自带了许多package,但是有时候还是需要使用一些没有预装的宏包,这时就需要自己安装package了.下载package可以从CTAN(Comprehensive T ...

  3. Windows下使用pip安装python包是报错-UnicodeDecodeError: 'ascii' codec can't decode byte 0xcb in position 0

    先交待下开发环境: 操作系统:Windows 7 Python版本:2.7.9 Pip版本:6.1.1 其他环境忽略 在windows下使用pip下载python包,出现如下错误 Collecting ...

  4. 在windows下使用pip安装python包遇到缺失stdint.h文件的错误

    今天在windows上使用pip安装一个python包python-lzf时遇到如下的错误: fatal error C1083: Cannot open include file: 'stdint. ...

  5. windows下 MySQL手动安装与卸载

    下载文件以后进行解压 ,指定文件的具体位置 1.安装 选择路径下的mysqld --intall 指定服务名称  --设置配置文件 例子: C:\Users\Administrator\Desktop ...

  6. Windows下LATEX排版论文攻略—CTeX、JabRef使用介绍

    Windows下LATEX排版论文攻略—CTeX.JabRef使用介绍 一.工具介绍 TeX是一个很好排版工具,在学术界十分流行,特别是数学.物理学和计算机科学界. CTeX是TeX中的一个版本,指的 ...

  7. Windows下LATEX排版论文攻略—CTeX、JabRef使用心得

    笔者刚刚接触到TEX排版,相关知识完全空白,用了两天时间学习并完成了一篇论文的完整排版. 期间遇到不少小问题,着实辛苦,分享至上,现将其解决办法总结归纳,共同学习. 一.工具介绍 TeX是一个很好排版 ...

  8. windows下nodejs express安装及入门网站,视频资料,开源项目介绍

    windows下nodejs express安装及入门网站,视频资料,开源项目介绍,pm2,supervisor,npm,Pomelo,Grunt安装使用注意事项等总结 第一步:下载安装文件下载地址: ...

  9. Linux系统手动安装rpm包依赖关系分析(以Kernel升级为例)

    有在Linux系统中安装软件的经历的人都知道,在Linux系统中手动安装软件不想在Windows下安装软件那么方便,直接双击,然后下一步下一步就可以把软件成功的装入到系统中,而在Linux系统中,安装 ...

随机推荐

  1. 剑指offer【10】- 变态跳台阶

    题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 关于本题,前提是n个台阶会有一次n阶的跳法.分析如下: f(1) = 1 f(2) ...

  2. iOS中代理属性为什么要用Weak修饰?

    一.写在前面 代理设计模式,在iOS开发过程中,是一个非常常见的设计模式,可以说用的范围非常广泛,而对初学者来讲,常常对代理的属性修饰用weak存在疑惑,因此下面就解释一下其中非常简单的道理. 二.必 ...

  3. 13)PHP,文件加载(include和require)

    有四种文件加载的语法形式(注意,不是函数): include,  include_once,  require, require_once; 他们的本质是一样的,都是用于加载/引入/包含/载入一个外部 ...

  4. Codeforces1304D Shortest and Longest LIS

    前置扯淡 %%@\(wucstido\),思路是在是巧妙---link Description 给一个长度为\(n\)由 \(<\) 和 \(>\)组成的字符串,表示序列中相邻位置的数的大 ...

  5. eclipse导入项目报错解决方法

    1.导入项目之前,请确认工作空间编码已设置为utf-8:window->Preferences->General->Wrokspace->Text file encoding- ...

  6. 802.11X

    LSW1; interface Vlanif100 ip address 192.168.121.2 255.255.255.0连接云的地址 interface GigabitEthernet0/0/ ...

  7. 从二叉搜索树到AVL树再到红黑树 B树

    这几种树都属于数据结构中较为复杂的,在平时面试中,经常会问理解用法,但一般不会问具体的实现,所以今天来梳理一下这几种树之间的区别与联系,感谢知乎用户@Cailiang,这篇文章参考了他的专栏. 二叉查 ...

  8. iOS有关通讯录操作

    一.首先获取用户通讯录授权信息. 在AppDelegate中导入#import <AddressBook/AddressBook.h>框架,在下列方法中获取授权信息. - (BOOL)ap ...

  9. [LC] 404. Sum of Left Leaves

    Find the sum of all left leaves in a given binary tree. Example: 3 / \ 9 20 / \ 15 7 There are two l ...

  10. 76)PHP,session数据区的使用

    (1)session数据区: 在我们的session会话结束之前,会有一个seeeion的文件,存储着session序列化的数据,在会话没有结束之前,我们都是操作$_SESSION的,但是在会话结束后 ...