我想将minipage
环境放在里面newcommand
以避免输入。
\documentclass[aspectratio=169]{beamer}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[nomessages]{fp}
\newcommand{\MYfigure}[4]{
\begin{figure}
\centering
\includegraphics[width=#1\textwidth]{images/#2}
\caption{#4 #3}
\end{figure}
}
\newcommand{\MYminipage}[3]{
\begin{minipage}{(#1-0.3)*\textwidth}
#2
\end{minipage}
\begin{minipage}{(1-#1-0.3)*\textwidth}
#3
\end{minipage}
}
\begin{document}
\begin{frame}
\MYminipage{0.5}{\MYfigure{1}{imagename.jpg}{text}{text}}{\MYfigure{1}{imagename.jpg}{text}{text}}
\end{frame}
\end{document}
对于imagename.jpg
文件夹中的任何图像,images
都可以使用 。我认为问题在于小页面宽度的计算(例如(1-#1-0.3)*\textwidth
)。这就是我已经尝试使用 的原因\usepackage[nomessages]{fp}
。
编辑:澄清需要什么:我想要这个,但带有宏\MYminipage
。
\documentclass[aspectratio=169]{beamer}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[nomessages]{fp}
\newcommand{\MYfigure}[4]{
\begin{figure}
\centering
\includegraphics[width=#1\textwidth]{images/#2}
\caption{#4 #3}
\end{figure}
}
%\newcommand{\MYminipage}[3]{
% \begin{minipage}{\dimexpr#1\textwidth-.3\textwidth\relax}
% #2
% \end{minipage}
% \begin{minipage}{\dimexpr\textwidth-#1\textwidth-.3\textwidth\relax}
% #3
% \end{minipage}
%}
\begin{document}
\begin{frame}
\begin{minipage}{.47 \textwidth}
\MYfigure{1}{imagename.jpg}{text}{text}
\end{minipage}
\begin{minipage}{.47 \textwidth}
\MYfigure{1}{imagename.jpg}{text}{text}
\end{minipage}
\end{frame}
\end{document
Ulrich Diez 建议的代码是:
\documentclass[aspectratio=169]{beamer}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[nomessages]{fp}
\newcommand{\MYfigure}[4]{%%%
\begin{figure}%%%
\centering
\includegraphics[width=#1\textwidth]{images/#2}%%%
\caption{#4 #3}%%%
\end{figure}%%%
}%%%
\newcommand{\MYminipage}[3]{%%%
\begin{minipage}{\dimexpr#1\textwidth-.3\textwidth\relax}%%
#2%%%
\end{minipage}%%%
\begin{minipage}{\dimexpr\textwidth-#1\textwidth-.3\textwidth\relax}%%%
#3%%%
\end{minipage}%%%
}%%%
\begin{document}
\begin{frame}%%%
\MYminipage{0.5}{\MYfigure{1}{imagename.jpg}{text}{text}}{\MYfigure{1}{imagename.jpg}{text}{text}}%%%
\end{frame}
\end{document}
但我想要的是:
答案1
\documentclass[aspectratio=169]{beamer}
\newcommand{\MYfigure}[4][]{%
\begin{figure}
\centering
\includegraphics[#1]{images/#2}
\ifx\relax#3\relax \else\caption[#4]{#3}\fi
\end{figure}%
}
\begin{document}
\setbeamertemplate{navigation symbols}{}
\begin{frame}[plain]
\begin{minipage}{.47 \textwidth}
\MYfigure[height=\textheight,width=\linewidth]{tiger}{}{}
\end{minipage}\hfill
\begin{minipage}{.47 \textwidth}
\MYfigure[height=\textheight,width=\linewidth]{tiger}{}{}
\end{minipage}
\end{frame}
\end{document}
也许您还需要keepaspectratio
图像的参数。这取决于图像的大小。