forzar el tamaño vertical del cuadro de guardado a igualar la altura de la página

forzar el tamaño vertical del cuadro de guardado a igualar la altura de la página

¿Existe una mejor manera de generar una \saveboxcuyas dimensiones sean iguales a las dimensiones del papel que pegar una \strutlongitud igual a la altura de la página (el ancho es un argumento en \saveboxsí mismo)?

Respuesta1

Usando una combinación de lrboxes y minipages, puede guardar su contenido en un cuadro. Luego, una vez guardado, puede cambiar el tamaño del cuadro. Tenga en cuenta que, aunque se cambian las dimensiones de la caja, la composición tipográfica sigue siendo la misma.

\documentclass{article}
%% open the dimensions of the page a bit
\usepackage[margin=0.75in]{geometry}
\newsavebox\aebox
%% set fbox parameters to facilitate seeing how dimensions are changed.
\setlength\fboxsep{-0.4pt}
\setlength\fboxrule{0.4pt}
\pagestyle{empty}
\begin{document}

\begin{lrbox}\aebox
  \begin{minipage}[t]{3in}
    This is just an example of a box of certain dimensions that can later be
    reassigned.
  \end{minipage}
\end{lrbox}

Hello
\fbox{\usebox\aebox}
\ht\aebox\dimexpr\baselineskip*2\relax
\dp\aebox\dimexpr\textheight-\baselineskip*2\relax
\fbox{\usebox\aebox}

\end{document}

ingrese la descripción de la imagen aquí

Por supuesto, lo anterior no hace exactamente lo que desea. Podrías adoptar el enfoque de @HarishKumar y configurar la geometría de la página para que los márgenes sean todos 0pt. En ese caso, en el ejemplo anterior, si configura

\usepackage[margin=0pt]{geometry}

obtendrás

ingrese la descripción de la imagen aquí

¿Pero qué pasa si no quieres establecer los márgenes en 0pt?

Suponiendo que los márgenes están configurados, 0.5in podría intentar algo como

\raisebox{\dimexpr0.5in+\baselineskip+<some dimension>\relax}[0pt][0pt]{\fbox{\usebox\aebox}}

Pero luego es difícil (al menos para mí) descubrir cómo configurar exactamente <some dimension>para que su caja esté colocada correctamente.

En ese caso, es posible que desees cargar tikz(que también esopcionalmentellamado al cargar el tcolorboxpaquete). Esto es lo que podrías hacer:

\documentclass{article}
%% open the dimensions of the page a bit
\usepackage[margin=0.5in]{geometry}
\newsavebox\aebox
%% set fbox parameters to facilitate seeing how dimensions are changed.
\setlength\fboxsep{-0.4pt}
\setlength\fboxrule{0.4pt}

\pagestyle{empty}

\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}

\begin{lrbox}\aebox
  \begin{minipage}[t]{3in}
    This is just an example of a box of certain dimensions that can later be
    reassigned.
  \end{minipage}
\end{lrbox}

\hspace*{3.5in} Hello \fbox{\usebox\aebox}

%% setting the dimensions of the box
\ht\aebox\dimexpr\baselineskip\relax
\dp\aebox\dimexpr\paperheight-\baselineskip\relax
\begin{tikzpicture}[remember picture,overlay]
  \node[inner sep=0pt,anchor=north west,fill=orange!20] at ($(current page.north west)+(0.5in,0)$) {\fbox{\usebox\aebox}};
\end{tikzpicture}

\end{document}

Llegar

ingrese la descripción de la imagen aquí

Respuesta2

Puede utilizar tcolorboxesa heightclave de ofertas.

\documentclass{article}
\usepackage[most]{tcolorbox}
\usepackage{lipsum}
\usepackage[a4paper,top=0cm,bottom=0cm]{geometry}  %% just for demo
\begin{document}
  \begin{tcolorbox}[width=0.5\textwidth,height=\paperheight]
    \lipsum[1-2]
  \end{tcolorbox}
\end{document}

ingrese la descripción de la imagen aquí

información relacionada