我已经搜索过beamer
和aspectratio
。我发现如何自动创建 4:3 和 16:9 版本的 LaTeX Beamer 幻灯片?,这与我的问题很接近,但并没有解决它。
我有时确实需要切换回具有 4:3 宽高比的旧设备。更改aspectratio
文档序言中的开关并重新运行 LaTeX 是没有问题的。虽然这在 98% 的时间内为我提供了足够的幻灯片,但有些幻灯片会出现 \hbox 过满错误。
有没有办法解决这个问题,通过使用两个不同的 LaTeX 代码块,一个是在aspectratio
给出时选择的,=169
另一个是在 定义为 时选择的=43
?
就像是
\ifx{aspectratio}{43}
code special to\\
this ratio
\else
normal code with longer lines
\fi
将会有很大帮助。
答案1
也许作为一种解决方法:
\newcommand{\aspectratio}{43}
%\newcommand{\aspectratio}{169}
\documentclass[aspectratio=\aspectratio]{beamer}
\begin{document}
test
\ifnum\aspectratio=169 %
foo
\else
bar
\fi
\end{document}
随着当前 beamer 开发版本(应该包含在 beamer v3.70 或更新版本中),现在可以使用宏\insertaspectratio
来访问演示文稿的纵横比:
\documentclass[
aspectratio=169
% aspectratio=43
]{beamer}
\begin{document}
\begin{frame}
\ifnum\insertaspectratio=169
do something
\else
something else
\fi
\end{frame}
\end{document}