一直想在XeTeX制作beamer演示文稿,摸索了很长时间总算搞定了,最终生成可复制/拷贝/搜
索/书签无乱码的PDF文档. 我的系统是windows 7+ Texlive 2010
目前仅试验了简单文本及插图、pgf作图,基本没有问题,其它复杂功能还没试验,应付一般的场合够了.
下面的代码是附件中图的源码.
\documentclass[dvipdfm]{beamer} %如果编译在这里卡住,请去掉dvipdfm选项。较早的版本需要加这个选项才能通过
\usepackage{fontspec,xunicode,xltxtra,beamerthemesplit}
\usetheme{Luebeck}
\setsansfont[Mapping=tex-text, BoldFont={微软雅黑 Bold}]{微软雅黑}
\title{Beamer包与\XeTeX 应用示例}
\author{XIE Bengui (IOZ, CAS)}
\date{\today}
\begin{document}
\XeTeXlinebreaklocale "zh" % 表示用中文的断行
\XeTeXlinebreakskip = 0pt plus 1pt % 多一点调整的空间
%以下代码用于修正导航条按钮失效的问题,感谢CTex论坛的LeoLiu
\makeatletter
\def\beamer@linkspace#1{%
\begin{pgfpicture}{0pt}{-1.5pt}{#1}{5.5pt}
\pgfsetfillopacity{0}
\pgftext[x=0pt,y=-1.5pt]{.}
\pgftext[x=#1,y=5.5pt]{.}
\end{pgfpicture}}
\makeatother
\frame{\titlepage}
\section*{大纲}
\frame{\tableofcontents }
\section{介绍}
\subsection{Beamer类和XeTeX概览} %如果你想书签不出现问题,请不要用\XeTeX
%这类复杂的指令,直接写XeTeX吧
\frame {
\frametitle{Beamer类的特点}
\begin{itemize}
\item<1-> 普通的\LaTeX 类
\item<2-> Easy overlays
\item<3-> 不需要外部程序
\end{itemize}
\XeTeXpicfile "./logo.jpg" xscaled 100 yscaled 100 %插图也没有问题
% The [options] in the \XeTeXpicfile command use the following keywords:
% width <dimen>
% height <dimen>
% scaled <scalefactor>
% xscaled <scalefactor>
% yscaled <scalefactor>
% rotated <degrees>
}
\frame {
\frametitle{\XeTeX 的特点}
\begin{itemize}
\item<1-> 完美支持Unicode
\item<2-> 生成可\textbf{复制/拷贝/搜索/无乱码书签}的PDF文档
\item<3-> 支持常用\LaTeX 包
\end{itemize}
}
\subsection{用XeTeX 和beamer包制作演示文稿(幻灯片)}
\frame {
\frametitle{准备活动}
\begin{itemize}
\item<1-> TexLive 2007 with \XeTeX (\the\XeTeXversion\XeTeXrevision)\& beamer
\item<2-> 支持UTF-8编码的文本编辑器,因为\XeTeX 要求源代码以UTF-8格式存储
\end{itemize}
}
\end{document}
另如果要想在verbatim中正常使用中文,参看本人的另一篇:
使verbatim环境在XeTeX下支持中文
ps: 此文最初由本人发表与水木清华TeX版,2011.08.27更新