Есть ли лучший способ создать , \savebox
размеры которого равны размерам бумаги, чем вставить , \strut
длина которого равна высоте страницы (ширина является аргументом самой себя \savebox
).
решение1
Используя комбинацию lrbox
es и minipage
s, вы можете сохранить свой контент в поле. Затем, после сохранения, вы можете изменить размер поля. Помните, что хотя размеры поля меняются, набор остается прежним.
\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}
Конечно, вышеприведенное не совсем то, что вам нужно. Вы можете воспользоваться подходом @HarishKumar и задать геометрию страницы так, чтобы все поля были 0pt
. В этом случае, в приведенном выше примере, если вы зададите
\usepackage[margin=0pt]{geometry}
ты получишь
Но что делать, если вы не хотите устанавливать поля равными 0pt
?
Предполагая, что поля установлены, 0.5in
вы можете попробовать что-то вроде
\raisebox{\dimexpr0.5in+\baselineskip+<some dimension>\relax}[0pt][0pt]{\fbox{\usebox\aebox}}
Но тогда сложно (по крайней мере мне) разобраться, как именно установить, <some dimension>
чтобы коробка была установлена правильно.
В этом случае вам может понадобиться загрузить tikz
(что такженеобязательновызывается при загрузке tcolorbox
пакета). Вот что можно сделать:
\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}
Получить
решение2
Вы можете использовать tcolorbox
этот ключ предложения height
.
\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}