Archive for the ‘LaTeX相关’ Category
Beamer文档中添加PDF文档信息(PDF document information)
默认参数下,Beamer宏包可以将文档的\title{}和\author{}字段的内容自动加入PDF文档信息(PDF document information)的相应字段中,如果还想添加主题和关键字等信息,可以使用\subject{}和\keywords{}命令。但是由于Beamer用的是hyperref宏包来实现这些功能,而hyperref宏包的这一功能并不支持中文。所以,如果你的幻灯片是中文标题、中文作者,那么PDF文档信息中将出现乱码。
一个可以接受的解决方案是,正文中仍然使用中文,但向PDF文档信息中添加英文信息。要实现这一点并不难,只需要先禁止Beamer自动添加这些信息,再由手工添加即可。具体做法如下:
- 使用参数usepdftitle,禁止Beamer自动添加这些信息,比如这样:\documentclass[usepdftitle=false,mathserif]{beamer}
- 手工添加相应信息,比如这样:
\hypersetup{CJKbookmarks=true,%
pdftitle={Computer Simulation},%
pdfauthor={Mao Ziyang},%
pdfcreator={amao@ai7.org},%
pdfsubject={Computer Simulation},%
pdfkeywords={simulation}
}
关于\hypersetup命令的其他信息,请参考:使用pdfLaTeX时,添加PDF文件属性的方法
tex4ht与bm包冲突
今天想把很早一篇论文转成word,因为几乎是不可能的,所以想先转成html,再copy到word中去。用的是那个texlive2005的绿色免安装包tex4lin.iso,开始总是出错,屏幕输出的信息看不出来是什么问题,每次都是到中间的部分就中断了。内存的问题,公式的问题,等等,能想到的都尝试了一下,怀疑有问题的代码都删除了,但是还是不 行。
无意中看了一下.log文件,猜想是\bm{*}命令出的问题,替换之后,果然就可以了。
利用LaTeX相关工具分割、合并PDF文件
上次讲到“讲义模式输出PDF格式的幻灯片”,今天发现这个方法还可以实现PDF文件的分割与合并。具体方法如下。
假设已经有两个PDF文件aaa.pdf和bbb.pdf,需要将aaa中的24到28页抽取出来与bbb的1、2页合并在一起,形成一个新的文件ccc.pdf,那么,新建ccc.tex,内容如下:
\usepackage{pdfpages}
\begin{document}
\includepdf[nup=1x1, delta=0mm 0mm,%
scale=1,pages={24-28}]{aaa.pdf}
\includepdf[nup=1x1, delta=0mm 0mm,%
scale=1,pages={1-2}]{bbb.pdf}
\end{document}
然后使用pdflatex编译ccc.tex即可。
注意,需要根据输入文件的页面尺寸调整A4paper以及scale等几个参数的值。
求解数独(sudoku)的宏包
消息来源:PracTeX Journal 2008年第2期,http://www.tug.org/pracjourn/
先要准备数独的开局,简单的文本文件即可,如下:
64..139..
1…264..
.29.457..
..2…83.
86..37.19
7..2.9…
..13..69.
9364.8.2.
..5……
前9行代表数独的开局,句点代表空位。从第10行开始,可以是任意内容。
打印一个已有的数独开局:
\usepackage{createsudoku}
\begin{document}
\begin{center}
\sudoku{SudokuSolverSample.sud} % Print a puzzle
\end{center}
\end{document}
求解一个数独可以使用下面的命令:
\sudokusolve{SudokuSolverSample.sud}
也可以生成一个数独的开局:
\documentclass{article}
\usepackage{createsudoku}
\begin{document}
\begin{center}
\sudokusolve{SudokuSolverSample.sud} % Solve a puzzle
\generategrid % Use this solution to generate a new puzzle
\end{center}
\end{document}
更详细的信息请参考原文:http://www.tug.org/pracjourn/
讲义模式输出PDF格式的幻灯片
因为一般的PDF阅读器都没有像PowerPoint那样提供将多页内容打印到一页上的讲义模式输出功能(有PDF阅读器提供这一功能吗?毕竟使用PDF格式幻灯片的朋友还是比较少的),所以以讲义模式输出PDF格式的幻灯片是比较困难的。今天在用Beamer做幻灯片的时候,在其说明文件中找到一种方法。
假设PDF格式的幻灯片文件叫“trans.pdf”,新建一个tex文件,比如叫“handout.tex”,输入以下内容:
\documentclass[a4paper]{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[nup=2x2, landscape, delta=5mm 5mm,%
scale=0.95,pages={1-18}]{trans.pdf}
\end{document}
其中a4paper是表示以A4纸尺寸输出,默认是letter尺寸。其中2×2是每页显示几张幻灯片,具体哪个是行数,哪个是列数,与后一个选项landscape有关,实际试一下就知道了。landscape表示横向输出。delta这个不知道什么意思,我猜是页边距。scale是缩放系数。pages参数指定输出页码范围,注意,可以是“pages={1-5,20-30}”这样不连续的页码范围,但是不能越界。最后,trans.pdf是输入文件的文件名。
编译后,就得到了trans文件讲义格式的输出。
==================================
如果是用beamer做幻灯片,在生成trans.pdf文件的时候,需要做一点调整。
假设原来的类声明是这样:
\documentclass[mathserif]{beamer}
要加一个handout选项,改成这样:
\documentclass[mathserif,handout]{beamer}
这个选项主要做一件事情,就是把所有的overlay特效去掉,也就使得每一个pdf页面就是一个幻灯页面(这话看着别扭,自己对比一下就清楚了)。
另外还可以把主题的颜色调成黑白的,实践后发现下面这个主题接近白底黑字:
\usecolortheme{dove}