朋友们,我想在beamer
标题页中添加照片以及每个作者的姓名。请考虑以下代码:
\documentclass[10pt]{beamer}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{graphicx}
\newcommand{\theauthor}[1]{%
\includegraphics[scale=.3]{#1}
}%
\title{A dinner with us}
\author[Alice and Bob]{\theauthor{alice} and \theauthor{bob}}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\end{document}
结果如下:
我尝试在照片下方添加名称,但没有成功。起初,我想到使用环境tabular
,但我无法让它工作。
我可能会去掉“and”这个词,并把两个作者区块对齐,比如说:
关于如何实现这一点,您有什么建议吗?我知道这可能是一个非常简单的问题,但它让我感到困惑。:-)
答案1
\newcommand{\theauthor}[3][3cm]{%
\vbox{\hbox{\includegraphics[width=#1]{#2}}\hbox to #1{\hss#3\hss}}}
\title{A dinner with us}
\author[Alice and Bob]{\theauthor{alice}{Alice}\qquad\theauthor{bob}{Bob}}
使用tabular
与按摩冲突投影机,而更原始这种方法是成功的,因为它使用了一些原始命令,例如\vbox
,\hbox
或者\halign
在处理过程中不会不合时宜地扩展投影机。可选参数\theauthor
可用于设置图像的宽度(默认3cm)。
替代定义:
\newcommand{\theauthor}[2]{\vbox{\halign{\hfil##\hfil\cr
\includegraphics[scale=.3]{#1}\cr#2\cr}}}
答案2
假设您同意创建自定义标题页,则可以使用环境\columns
为您的作者创建区块。修改命令\theauthor
以包含额外内容#1
(如图所示)会将作者姓名置于每张图片下方。或者,您可以向命令添加额外参数以获得更大的灵活性。
外观
画中人物是 Emmy Noether 和 George Stokes。我只想要一对公共领域的照片,这样没人会在意我使用它们。
代码
\documentclass[10pt]{beamer}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{graphicx}
\newcommand{\theauthor}[1]{%
\includegraphics[width=0.6\textwidth]{#1}\\#1
}%
\title{A dinner with us}
\author{Emmy and George}
\begin{document}
\begin{frame}
\centering
\begin{huge}An evening with us
\end{huge}
\vspace{1cm}
\begin{columns}[c]
\column{.5\textwidth}
\centering
\theauthor{Emmy}
\column{.5\textwidth}
\centering
\theauthor{George}
\end{columns}
\vspace{1cm}
\today
\end{frame}
\end{document}
无论怎样,它都不算优雅,但似乎运行得相当好。
参考:
我用了HappyMutant 的 beamer 页面作为设置列的参考。