Tikzpicture introduz espaçamento extra?

Tikzpicture introduz espaçamento extra?

Se eu remover tikzpictureo seguinte MWE, ele blockse moverá para cima.

\documentclass{beamer}
\usepackage{tikz}
\begin{document}
    \begin{frame}[t]{Title}
        \begin{tikzpicture}[overlay]
            \draw (5pt,5pt) circle (10pt);
        \end{tikzpicture}
        \begin{block}{Theorem}
            text
        \end{block}
    \end{frame}
\end{document}

Como isso é possível?

Apresenta tikzpicturealgum espaço?

Se eu usar a resizeboxem torno de tikzpictureobtenho uma divisão por zero, então ele tem tamanho zero, mas ainda assim move o block. Como isso é possível?

Neste caso específico posso apenas mover tikzpictureabaixo do block, mas como posso remover o espaço extra adicionado em geral?

Responder1

Não é tikzpicturediretamente, é sair do modo vertical que muda o block. Isso inclui um tikzpicture, ou mesmo um \mbox{}.

\documentclass{beamer}
\usepackage{tikz}
\begin{document}
    \begin{frame}[t]{Title}
%        \begin{tikzpicture}[overlay]
%            \draw (5pt,5pt) circle (10pt);
%        \end{tikzpicture}%
        \leavevmode%
        \begin{block}{Theorem}
            text
        \end{block}
    \end{frame}
\end{document}

insira a descrição da imagem aqui

Para efeito de comparação, aqui está sem sair do modo vertical:

insira a descrição da imagem aqui

Uma solução para manter o blockmodo vertical é colocá-lo em um \vbox:

\documentclass{beamer}
\usepackage{tikz}
\begin{document}
    \begin{frame}[t]{Title}
        \begin{tikzpicture}[overlay]
            \draw (5pt,5pt) circle (10pt);
        \end{tikzpicture}%
        \vbox{\begin{block}{Theorem}
            text
        \end{block}}
    \end{frame}
\end{document}

insira a descrição da imagem aqui

Talvez seja melhor colocar the tikzpicturecomo a primeira coisa dentro de block:

\documentclass{beamer}
\usepackage{tikz}
\begin{document}
    \begin{frame}[t]{Title}
        \begin{block}{Theorem}
          \begin{tikzpicture}[overlay]
              \draw (5pt,5pt) circle (10pt);
          \end{tikzpicture}%
            text
        \end{block}%
    \end{frame}
\end{document}

insira a descrição da imagem aqui

informação relacionada