Latex中插入C语言代码
Latex是一个文本排版的语言,能排版出各种我们想要的效果。而且用代码排版的优点是易于修改板式,因此在文本内容的排版时,Latex应用十分广泛。
当我们需要在Latex中插入代码时,就需要用到 \usepackage{listings} 宏包。例如插入一个简单的C语言代码
#include <stdio.h>
int main(int argc, char ** argv)
{
printf("Hello, world!\n");
return ;
}
要将上面 Hello,world! 这段C语言代码用Latex实现排版的效果,Latex的脚本如下
\documentclass{article}
\usepackage{listings}
\usepackage{xcolor} %代码着色宏包
\usepackage{CJK} %显示中文宏包
\lstset{
basicstyle=\tt,
%行号
numbers=left,
rulesepcolor=\color{red!20!green!20!blue!20},
escapeinside=``,
xleftmargin=2em,xrightmargin=2em, aboveskip=1em,
%背景框
framexleftmargin=.5mm,
frame=shadowbox,
%背景色
backgroundcolor=\color[RGB]{245,245,244},
%样式
keywordstyle=\color{blue}\bfseries,
identifierstyle=\bf,
numberstyle=\color[RGB]{0,192,192},
commentstyle=\it\color[RGB]{96,96,96},
stringstyle=\rmfamily\slshape\color[RGB]{128,0,0},
%显示空格
showstringspaces=false
}
\begin{document}
\begin{CJK*}{GBK}{song}
\lstset{language=C}
\begin{lstlisting} %插入要显示的代码
#include <stdio.h>
int main(int argc, char ** argv)
{
/*`打印`Hello,world*/
printf("Hello, world!\n");
return 0;
}
\end{lstlisting}
\end{CJK*}
\end{document}
上面的Latex脚本可以显示出C语言中的注释(包括中文注释),代码着色,并添加了代码行号。效果如下
参考:
[1] https://en.wikibooks.org/wiki/LaTeX/Source_Code_Listings
[2] Latex论坛,http://tex.stackexchange.com/
[3] Latex Beginning's Guide pdf 提取码: ac4n
Latex中插入C语言代码的更多相关文章
- 在Latex中插入Python代码
这里指的插入是指最终能在生成的pdf中显示高亮的Python代码. 在Latex中插入Python代码,需要一个第三发的宏包pythonhighlight: https://github.com/ol ...
- 如何在latex 中插入EPS格式图片
如何在latex 中插入EPS格式图片 第一步:生成.eps格式的图片 1.利用visio画图,另存为pdf格式的图片 利用Adobe Acrobat裁边,使图片大小合适 另存为.eps格式,如下图所 ...
- 在LaTex中插入电路图的方法(插入图片)
主要的需求是要在文档中插入电路图. 有两种方法,一种是直接在LaTex中绘制电路图,使用的库主要是circ和circuitikz 另一种是在其他软件上绘制电路图,转成特定图像格式后,在Latex中插入 ...
- LaTeX 中插入图片使其紧跟插入的文字之后
LaTeX 中插入图片使其不跑到每页的开头而紧跟插入的文字之后. 此次建模过程中,遇到的一个比较棘手的问题是: 当插入图片时,图片的位置总是会自动跑到当页(或下一页)的最上方,而不是紧跟在其对应的说明 ...
- LaTeX 中插入GIF图片
参见博文:liam.page 和 voidcn 前提条件 安装 ImageMagick 软件 (因为要把 gif 图片转换成 png 序列),使用它的命令行工具 convert.exe 命令行下把 g ...
- 如何在博客中插入jsfiddle的代码
1.进入官网:https://jsfiddle.net/ 可以看到如下界面,顶端的控制按钮包括:保存,运行,代码格式化等: 2.将html.css.js分别写在指定的位置当中,最后一个框result是 ...
- 解决LaTex中插入Visio画图有多余边框的问题
这里的Visio画图是指Visio另存为或导出的PDF格式图片.就目前而言,Visio另存为的EPS格式的图片均可使用PDF格式代替. 问题描述 这里以Visio中画一个矩形为例,如上图所示. 我们为 ...
- 【Latex】如何在Latex中插入伪代码 —— clrscode3e
1. 简介clrscode3e是<算法导论(第三版)>使用的伪代码的宏包,clrs其实表示的是Cormen.Leiserson.Rivest和Stein.它有个更老的版本clrscode, ...
- Latex 中插入图片no bounding box 解决方案
在windows下,用latex插入格式为jpg,png等图片会出现no bounding box 的编译错误,此时有两个解决办法: 1.将图片转换为eps格式的图片 \usepackage{grap ...
随机推荐
- Deconvolution Using Theano
Transposed Convolution, 也叫Fractional Strided Convolution, 或者流行的(错误)称谓: 反卷积, Deconvolution. 定义请参考tuto ...
- Android Studio配置OpenCV(非NDK)
参考:http://www.cnblogs.com/tail/p/4618476.html 工具: 1,Android Studio(AS)1.4 2,Opencv 2.4.11 步骤: 1,解压下载 ...
- console的花式用法
1.百度的招聘启示 如图: 下面是输出代码: if(window.console){ var cons = console; if(cons){ cons.log("%c\n ", ...
- [转]别再抱怨了,国内这么多优秀的Android资源你都知道吗?
因为一些大家都知道的原因,android很多官方出品的优秀开发资源在国内无法访问. 国内的同行们对此也做出了很多努力,有很多朋友通过各种手段把很多优秀的资源搬运到了国内,为国内android开发者提供 ...
- 【bzoj1415】 Noi2005—聪聪和可可
http://www.lydsy.com/JudgeOnline/problem.php?id=1415 (题目链接) 题意 一张图,聪聪想吃可可.每单位时间聪聪可以先移动两次:可可后移动一次或停在原 ...
- POJ 2253 Frogger(Dijkstra)
传送门 Frogger Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 39453 Accepted: 12691 Des ...
- druid连接池获取不到连接的一种情况
数据源一开始配置: jdbc.initialSize=1jdbc.minIdle=1jdbc.maxActive=5 程序运行一段时间后,执行查询抛如下异常: exception=org.mybati ...
- mysql 查询制定日期数据
//获取昨天更新数据的条件date_sub(current_date(), interval 1 day) = from_unixtime(senddate, '%Y-%m-%d') 注释:date_ ...
- History lives on in this distinguished Polish city 2017/1/4
原文 History lives on in this distinguished Polish city Though it may be ancient. KraKow, Poland, is a ...
- cookie---session
//以下文字摘自慕课网教程..... 设置cookie PHP设置Cookie最常用的方法就是使用setcookie函数,setcookie具有7个可选参数,我们常用到的为前5个: name( Coo ...