
Me gustaría poder colocar cosas en la parte superior del área blanca en este gráfico, debajo de la barra gris claro que es el texto del subtítulo "Marco", pero tocándolo. Maximizar el uso de la región blanca. ¿Hay alguna forma de determinar eso a partir de textheight
otras frameheight
variables? Intenté definir una nueva \bodyheight
variable pero no lo logré.
El gráfico de arriba está hecho con este MWE.
\documentclass[presentation, smaller, compress, aspectratio=169]{beamer}
\usetheme{Frankfurt}
\usecolortheme{seagull}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}{}
\setbeamertemplate{frametitle}{%
\nointerlineskip
\begin{beamercolorbox}[sep=0.1cm,wd=\paperwidth,leftskip=.2cm,rightskip=0cm]{frametitle}%
\usebeamerfont{frametitle}\usebeamercolor[fg]{frametitle}\insertframetitle\\
\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\insertframesubtitle
\end{beamercolorbox}%
}
\usepackage{graphicx}
\usepackage{tikz}
\newcommand{\bodyheight}{\textheight - \footskip}
\begin{document}
\section{Section}
\begin{frame}{Frame}
\begin{tikzpicture}[remember picture,overlay,shift=(current page.south west)]
\draw[help lines,line width=1pt,step=1,black!50] (0,0) grid (20,\bodyheight);
\end{tikzpicture}
\end{frame}
\end{document}
Respuesta1
Puedes usar eltikzpagenodespaquete. Proporciona varios nodos como current page text area
. Por ejemplo, usar esto para dibujar una línea desde (current page text area.north west)
hasta (current page text area.north east)
da casi lo que deseas:
Para completar, aquí está el código:
\documentclass[presentation, smaller, compress, aspectratio=169]{beamer}
\usetheme{Frankfurt}
\usecolortheme{seagull}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}{}
\setbeamertemplate{frametitle}{%
\nointerlineskip
\begin{beamercolorbox}[sep=0.1cm,wd=\paperwidth,leftskip=.2cm,rightskip=0cm]{frametitle}%
\usebeamerfont{frametitle}\usebeamercolor[fg]{frametitle}\insertframetitle\\
\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\insertframesubtitle
\end{beamercolorbox}%
}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{tikzpagenodes}
\newcommand{\bodyheight}{\textheight - \footskip}
\begin{document}
\section{Section}
\begin{frame}{Frame}
\begin{tikzpicture}[remember picture,overlay,shift=(current page.south west)]
\draw[help lines,line width=1pt,step=1,black!50] (0,0) grid (20,\bodyheight);
\draw[blue, thick](current page text area.north west)--(current page text area.north east);
\end{tikzpicture}
\end{frame}
\end{document}
EDITAR En los comentarios se dice que:
Estoy buscando la línea debajo de "Marco", no encima de "Marco".
El punto de usartikzpagenodeses que no es difícil llegar desde la parte superior de la página hasta la parte superior del marco. Por ejemplo, podemos obtener:
usando
\documentclass[presentation, smaller, compress, aspectratio=169]{beamer}
\usetheme{Frankfurt}
\usecolortheme{seagull}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}{}
\setbeamertemplate{frametitle}{%
\nointerlineskip
\begin{beamercolorbox}[sep=0.1cm,wd=\paperwidth,leftskip=.2cm,rightskip=0cm]{frametitle}%
\usebeamerfont{frametitle}\usebeamercolor[fg]{frametitle}\insertframetitle\\
\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\insertframesubtitle
\end{beamercolorbox}%
}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{tikzpagenodes}
\newcommand{\bodyheight}{\textheight - \footskip}
\begin{document}
\section{Section}
\begin{frame}{Frame}
\begin{tikzpicture}[remember picture,overlay,shift=(current page.south west)]
\draw[help lines,line width=1pt,step=1,black!50] (0,0) grid (20,\bodyheight);
\draw[blue, thick]([yshift=-4ex]current page text area.north west)--([yshift=-4ex]current page text area.north east);
\end{tikzpicture}
\end{frame}
\end{document}