我正在尝试创建一个模板,用于在 Latex 中制作与智能手机兼容的(垂直)投影仪幻灯片。虽然可以通过以下方式实现(以横向模式阅读)
\documentclass[aspectratio=169]{beamer}
我希望制作一个用于制作可以在纵向模式下阅读的 Beamer 幻灯片的模板。虽然我还不是 Latex 的专业人士,但我尝试编辑文件中的几beamer.cls
行
\DeclareOptionBeamer{aspectratio}[43]{%
\ifnum#1=1610 %
\setlength\beamer@paperwidth{16.00cm}%
\setlength\beamer@paperheight{10.00cm}%
\else\ifnum#1=169 %
\setlength\beamer@paperwidth{16.00cm}%
\setlength\beamer@paperheight{9.00cm}%
在这些行中我添加了
\else\ifnum#1=916 %
\setlength\beamer@paperwidth{9cm}%
\setlength\beamer@paperheight{16cm}%
然而,在使用
\documentclass[aspectratio=916]{beamer}
布局提供默认的 4:3 输出。我做错了什么?有没有更简单的方法来实现这一点?
答案1
根据要求;要向 添加新的几何设置beamer
,首先确保您正在更改 的本地副本beamer.cls
。您可以通过查看日志的开头来查看文件在计算机中的位置:
(c:/texlive/2019/texmf-dist/tex/latex/beamer/beamer.cls
Document Class: beamer 2019/09/29 v3.57 A class for typesetting presentations
然后将该文件复制到当前目录。如果愿意,可以重命名。然后打开该文件并查找类似以下内容:
\DeclareOptionBeamer{aspectratio}[43]{%
\ifnum#1=1610 %
\setlength\beamer@paperwidth{16.00cm}%
\setlength\beamer@paperheight{10.00cm}%
\else\ifnum#1=169 %
\setlength\beamer@paperwidth{16.00cm}%
\setlength\beamer@paperheight{9.00cm}%
<...>
\fi\fi<...>
此处aspectratio
是选项名称,[43]
是默认值。要添加新选项,请将一个块从一个复制到\else\ifnum
下一个,然后根据需要进行更改:
\else\ifnum#1=916 %
\setlength\beamer@paperwidth{9.00cm}%
\setlength\beamer@paperheight{16.00cm}%
然后确保\fi
在末尾添加一个额外的内容。整个内容应如下所示:
\DeclareOptionBeamer{aspectratio}[43]{%
\ifnum#1=1610 %
\setlength\beamer@paperwidth{16.00cm}%
\setlength\beamer@paperheight{10.00cm}%
\else\ifnum#1=169 %
\setlength\beamer@paperwidth{16.00cm}%
\setlength\beamer@paperheight{9.00cm}%
\else\ifnum#1=149 %
\setlength\beamer@paperwidth{14.00cm}%
\setlength\beamer@paperheight{9.00cm}%
\else\ifnum#1=54 %
\setlength\beamer@paperwidth{12.50cm}%
\setlength\beamer@paperheight{10.00cm}%
\else\ifnum#1=43 %
\setlength\beamer@paperwidth{12.80cm}%
\setlength\beamer@paperheight{9.60cm}%
\else\ifnum#1=32 %
\setlength\beamer@paperwidth{13.50cm}%
\setlength\beamer@paperheight{9.00cm}%
\else\ifnum#1=141 %
\setlength\beamer@paperwidth{14.85cm}%
\setlength\beamer@paperheight{10.50cm}%
\else\ifnum#1=916 % <
\setlength\beamer@paperwidth{9.00cm}% | One more option
\setlength\beamer@paperheight{16.00cm}% <
\fi\fi\fi\fi\fi\fi\fi
\fi % One more \fi
}
然后使用它:
\documentclass[aspectratio=916]{beamer}
\usepackage{lipsum}
\begin{document}
\begin{frame}{Lorem Ipsum}
\lipsum[1]
\end{frame}
\end{document}
生成:
答案2
在内部,beamer
使用geometry
包来设置页面尺寸。因此,您可以geometry
使用选项来告诉翻页landscape
——此选项不力量横向,它的作用是交换页面的高度和宽度。
因为beamer
加载了geometry
包,所以必须使用获取包选项\PassOptionsToPackage
的方法。landscape
geometry
(这只适用于您想要的页面大小只是现有页面大小的旋转。如果您想要一个全新的页面大小,您需要来自的解决方案Phelype Oleinik 的回答。
\PassOptionsToPackage{landscape}{geometry}
\documentclass{beamer}
\usetheme{Warsaw}
\begin{document}
\begin{frame}{A Portrait Presentation}
\begin{theorem}
Theorems are easier to prove in portrait orientation.
\end{theorem}
\begin{proof}
This frame is its own proof.
\end{proof}
\end{frame}
\end{document}