Original issue 42 created by suxpert on 2010-12-17T07:28:08.000Z:
What steps will reproduce the problem?
- 经过接近两天的测试,得到如下最小重现方式:
[code=LaTeX]
\documentclass{beamer}
\mode<presentation>{
%%%%%% Some themes may cause lots warnings:
\usetheme{Warsaw} % CambridgeUS, Copenhagen, Warsaw, etc.
%%%%%% Some product less warnings:
% \usetheme{Madrid} % Madrid, Ilmenau, Frankfurt, etc.
%%%%%% And some do not product any warnings:
% \usetheme{Singapore} % Singapore, default, etc.
}
% \usepackage{times}
% Will change the font, solve the `OT1/cmss/m/n' warning.
% The warnings can disappear by loading zhspacing or xeCJK. I don't know why.
\usepackage{zhspacing}
% \usepackage{xeCJK}
% \setsansfont{Arial}
% Change the Beamer default font will [partly?] solve the problem.
\title{\LaTeX{} Beamer example}
\subtitle{Use \LaTeX{} to produce slide}
\author{A \TeX er}
% \date{}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\section{Section}
\subsection{Subsection}
\begin{frame}
{Frame}
Blah blah blah blah.
\end{frame}
\end{document}
[/code]
2. 将上述文件保存为utf8编码的纯文本文件,比如foo.tex;
3. 通过命令行或者任何您喜欢的方式,执行xelatex foo.tex;
4. 【可选的】将上述文件中的zhspacing换成xeCJK,执行xelatex foo;将Warsaw主题换成别的主题,执行xelatex foo;以及其他的测试。
What is the expected output? What do you see instead?
我们期望的是没有意外,也就是这样一个简单的文件(大量使用默认设置)应该可以顺利通过,并正确生成foo.pdf。然而,在执行过程中,XeTeX会输出大量警告:
** WARNING ** Annotation out of page boundary.
** WARNING ** Current page's MediaBox: [0 0 362.835 272.126]
** WARNING ** Annotation: [153.48 264.278 172.913 273.053]
** WARNING ** Maybe incorrect paper size specified.
类似上述信息,四行为一组,若干组。虽然在最终的pdf中没有明显可见的异常。
What version of the product are you using? On what operating system?
我使用的是MiKTeX Portable 2.8:
MiKTeX-XeTeX 2.8.3758 (0.9995.1 texlive svn 15079) (MiKTeX 2.8)
zhspacing、xeCJK等宏包是在使用过程中从MiKTeX源自动下载到的,zhspacing.sty中History有090720行,xeCJK.sty中有`version 2.3.15 (31-May-2010)'行。
OS: Windows XP en with SP3.
Please provide any additional information below.
在豆瓣小组上的一帖:http://www.douban.com/group/topic/16416725/
测试zhspacing时还遇到这么一个(跟这个关系不大的)问题:http://code.google.com/p/zhspacing/issues/detail?id=14
从警告信息搜索到的已知问题(关于dvipdfmx):https://bitbucket.org/rivanvx/beamer/issue/29/x-dvipdfmx-produces-annotation-out-of-page-boundary-warnings-on-beamer
http://www.tug.org/pipermail/xetex/2008-April/009254.html 以及后面的若干跟帖;
虽然这个号称是dvipdfmx Bug的问题,输出信息跟我看到的信息是一样的,而且也是从xelatex -no-pdf然后xdvipdfmx分步运行的结果是第二步出现警告,但是我总觉得跟beamer同zhspacing或者xeCJK之间是有关联的。在源文件中我已经标注了一些,下面是若干解释:
1、有些主题会出现较多警告,有些一般,有些没有。以一般的为标准,主要出现在\section等地方出现英文处,这种警告有时候也能通过在英文处单独修改字体(比如\tt之类)而消失(时间关系,还没有找到重现方法);较多警告的原因可能在于\LaTeX这种东西,去掉后警告会变少;
2、times宏包是另一个问题,可能跟这个主题无关。可以用于去掉那个字体警告,zhspacing或者xeCJK有去掉这个字体警告的副作用(所以我怀疑是否它们都修改了默认字体,初学者,没本事追踪进去);
3、在zhspacing或者xeCJK加载之后,修改默认无衬线字体能够(部分的?)解决这些警告,测试过程中这一招很有效;
4、(没找到确定的重现方式)如果section之类全都是汉字,不会出现警告;
5、(不直接相关问题)在单独使用times宏包时跟times后加载zhspacing或者xeCJK宏包得到的pdf文件中,英文字体不同。具体表现是,载入zhspacing或者xeCJK之前加载times默认字体跟直接不加载times视觉效果是一样的,当然之后加载会将字体变成罗马字体。
因此我的感觉是,极有可能因为zhspacing或者xeCJK要进行中英文字体切换时,由于某些字体的特殊、Beamer包中的infolines等部件的定义等导致的这个warning。