\input 在图形环境中不居中

\input 在图形环境中不居中

我正在用 Beamer 做一个演示文稿,我在 TikZ 中画了一些图形,我将它们插入到演示文稿中\input{footikz.tex}

由于某种原因,tikz 图片出现在了它们应该在的位置的右​​侧。下面是我的部分代码,我想知道是否有人能发现我犯的一个愚蠢的错误?

\begin{frame}
\frametitle{\insertsubsection}
\begin{alertblock}{\insertsubsubsection}

\begin{figure}
\centering
\begin{subfigure}[c]{0.2\textwidth}
{\scalebox{0.4}{\input{Figures/Tikz/Arrows0.tex}}}
\end{subfigure}
~
\begin{subfigure}[c]{0.2\textwidth}
{\scalebox{0.4}{\input{Figures/Tikz/Arrows180.tex}}}
\end{subfigure}
~
\begin{subfigure}[c]{0.2\textwidth}
{\scalebox{0.4}{\input{Figures/Tikz/Arrows360.tex}}}
\end{subfigure}
\caption{caption}
\end{figure}

\end{alertblock}
\end{frame}

在此例中,第一个子图出现在页面的中心,接下来的两个子图位于其右侧。我希望它们位于左侧、中间、右侧。

在演示的后面,我有一个非常相似的布局,并且效果很好。

谢谢。

答案1

请在以后始终发布完整的代码。

这是一种替代方法。由于您不使用单独的标题(在我看来,演示中不需要单独的标题),因此您无需使用subcaption包。简单minipage就可以了。此外,如果您可以将图片另存为.tikz文件(我希望您使用tikz这些图片,如果不能,我将放弃这个答案),您可以使用tikzscale包,然后tikz可以使用常规\includegraphics命令包含文件,所有键如widthheight等都可用。

示例代码:

\documentclass{beamer}
\usepackage{tikz}
\usepackage{tikzscale}
\usepackage{filecontents}
\begin{filecontents*}{test1.tikz}
  \begin{tikzpicture}
    \node {Here};
    \draw (0,0) circle (2cm);
  \end{tikzpicture}
\end{filecontents*}
\begin{filecontents*}{test2.tikz}
  \begin{tikzpicture}
    \node {Here};
    \draw (0,0) circle (3cm);
  \end{tikzpicture}
\end{filecontents*}
\begin{filecontents*}{test3.tikz}
  \begin{tikzpicture}
    \node {Here};
    \draw (0,0) circle (4cm);
  \end{tikzpicture}
\end{filecontents*}
\begin{document}
  \begin{frame}
\frametitle{\insertsubsection}
\begin{alertblock}{\insertsubsubsection}
\begin{figure}
\centering
\begin{minipage}{0.2\textwidth}
\includegraphics[width=\linewidth]{test1.tikz}
\end{minipage}
\hfill
\begin{minipage}{0.2\textwidth}
\includegraphics[width=\linewidth]{test2.tikz}
\end{minipage}
\hfill
\begin{minipage}{0.2\textwidth}
\includegraphics[width=\linewidth]{test3.tikz}
\end{minipage}
\caption{caption}
\end{figure}
\end{alertblock}
\end{frame}
\end{document}

在此处输入图片描述

相关内容