我怎样才能删除两个vbox之间的空间最小代码
\documentclass{article}
\usepackage[left=.5cm,right=.5cm,top=.5cm,bottom=.5cm]{geometry}
\setlength\parindent{0pt}
\begin{document}
\setbox0=\vbox{\hsize=.5\linewidth Hi}
\setbox1=\vbox{\hsize=.5\linewidth everyone}
\setbox2=\hbox{\vrule\box0\vrule\box1\vrule}
\setbox3=\vbox{\hrule\box2\hrule}
\copy3\copy3
\end{document}
答案1
您必须除去线间胶水。
\documentclass{article}
\usepackage[left=.5cm,right=.5cm,top=.5cm,bottom=.5cm]{geometry}
\setlength\parindent{0pt}
\begin{document}
\setbox0=\vbox{\hsize=.5\linewidth Hi}
\setbox2=\vbox{\hsize=.5\linewidth everyone}
\setbox4=\hbox{\vrule\box0\vrule\box2\vrule}
\setbox6=\vbox{\hrule\box4\hrule}
\copy6\nointerlineskip\kern-0.4pt\copy6
\end{document}
我还添加了字距以叠加两个规则并更改了寄存器编号;作为一般规则,为此目的只应使用偶数寄存器。
答案2
es之间的间距由和胶水\vbox
控制。如果你将它们设为 box zero,那么这些盒子就会粘在一起。\baselineskip
\lineskip
我将跳过的设置放在一组中,以防止它影响文档的其余部分。
\documentclass{article}
\usepackage[left=.5cm,right=.5cm,top=.5cm,bottom=.5cm]{geometry}
\setlength\parindent{0pt}
\begin{document}
\setbox0=\vbox{\hsize=.5\linewidth Hi}
\setbox1=\vbox{\hsize=.5\linewidth everyone}
\setbox2=\hbox{\vrule\box0\vrule\box1\vrule}
\setbox3=\vbox{\hrule\box2\hrule}
{\baselineskip=0pt
\lineskip=0pt
\copy3\copy3}
\end{document}