e-TeX \hbox を接着剤のサイズに合わせる

e-TeX \hbox を接着剤のサイズに合わせる

柔軟性のある接着剤(具体的には)を持っていて、同じ長さの\hskip 2.4in plus 2filものを作りたいのですが、うまくいきません。同様の結果を得る方法はありますか?\hbox\hbox to 2.4in plus 2fil

これを使用したい理由は、ボックスで囲まれた3列のフォーマットをより柔軟にするためです(特に異なるサイズの列に対して)。私はpdfTeXを使用しているので、e-TeXの追加機能が役立つ場合は使用できます。

答え1

pdftex 機能を使用して、接着ノードの前後の位置を記録し、(2 回目の実行時に) その情報を使用して目的のサイズのボックスを構築できます。

ここでは、段落 1 にはグルーのみがあり、段落 2 には Z...Z が同じサイズに設定されたボックスがあります。

ここに画像の説明を入力してください

\newwrite\zz % easier in latex where this is set up already
\openin\zz=\jobname.aux
\ifeof\zz\else
\input \jobname.aux
\closein\zz
\fi
\immediate\openout\zz=\jobname.aux

1) zzz zz zz zz zz zz zz zz zzzz zz zz zz zz zz zz zz z
zzzz%
\hskip 2.4in plus 2fil
zzz zzzz zzz
zzz zz zz zz zz zz zz zz zzzz zz zz zz zz zz zz zz z
zzz zz zz zz zz zz zz zz zzzz zz zz zz zz zz zz zz z

2) zzz zz zz zz zz zz zz zz zzzz zz zz zz zz zz zz zz z
zzzz%
\ifx\zzA\undefined\else
\leavevmode\rlap{\hbox to \dimexpr \zzB sp -\zzA sp{Z\dotfill Z}}%
\pdfsavepos\write\zz{\gdef\string\zzA{\the\pdflastxpos}}%
\hskip 2.4in plus 2fil
\pdfsavepos\write\zz{\gdef\string\zzB{\the\pdflastxpos}}%
zzz zzzz zzz
zzz zz zz zz zz zz zz zz zzzz zz zz zz zz zz zz zz z
zzz zz zz zz zz zz zz zz zzzz zz zz zz zz zz zz zz z

\bye

関連情報