vboxの揃え位置について

vboxの揃え位置について

- 渡辺 敬介 の投稿
返信数: 7
はじめまして.

vboxとhboxを使ったときの,位置の揃え方に着いて質問させてください.

vboxとhboxを用いて,例えば2つの文字列「ほげ」「ほげほげ」を入力すると,揃え方は,
ーーーーーーーー
|ーーーー  |
||ほげ|  |
|ーーーー  |
|ーーーーーー|
||ほげほげ||
|ーーーーーー|
ーーーーーーーー
のようになります.
これを,
ーーーーーーーー
| ーーーー |
| |ほげ| |
| ーーーー |
|ーーーーーー|
||ほげほげ||
|ーーーーーー|
ーーーーーーーー
の様に,一律に中央にそろえることはできないでしょうか?

可変の手続きでいろいろな部分に適用したいので,固定長にすることができません.

具体的には,言語とそれに対するグロスをつけるときに,上の部分の言語と下の部分のグロスが中央でそろうようにしたいと考えております.

よろしくお願いいたします.
渡辺 敬介 への返信

Re: vboxの揃え位置について

- KUROKI Yusuke の投稿
\vbox スコープの中に \centering を入れるとどうでしょう.
ほかの選択肢としては, \hfil あたりでしょうか.
KUROKI Yusuke への返信

Re: vboxの揃え位置について

- 渡辺 敬介 の投稿
返信ありがとうございます.

その方法は試しましたが,どうもうまくいかないのです.
別にテストファイルを作り,

foo\vbox{\centering{\hbox {ほげ} \hbox{ほげほげ}}}
これがテストです.

や,

foo\vbox{\hbox {¥hfil ほげ¥hfil} \hbox{ほげほげ}}
これがテストです.

といった風にはしてみたのですが,状況は変わりません.
渡辺 敬介 への返信

Re: vboxの揃え位置について

- 帯田 木偶太 の投稿
それらの出力のどこがどうなって欲しいのか書かれていないので、
どんな出力をお望みなのか今ひとつ判然としませんが、
ひょっとしてこんな感じのものでしょうか?

foo\begin{tabular}[b]{c}
ほげ\\
ほげほげ
\end{tabular}これがテストです.

渡辺 敬介 への返信

Re: vboxの揃え位置について

- KUROKI Yusuke の投稿
ありゃ,だめでした.すいません.
「グロス」というのが何を指すのかよくわからないのですが,okumacro.sty の ruby マクロを使いまわしてお望みのことができたりしますか?
渡辺 敬介 への返信

Re: vboxの揃え位置について

- 匿 名 の投稿
>\vbox{\hbox {¥hfil ほげ¥hfil} \hbox{ほげほげ}}
「幅を指定していない」\hbox の中では \hfill は効きませんが
その点はよろしいですか?
匿 名 への返信

Re: vboxの揃え位置について

- 渡辺 敬介 の投稿
トノさま,kuroky +さま,返信ありがとうございました.

トノさまがおっしゃっているのに近い感じで実装しようと思いましたが,やはりhboxのlengthを指定しないとうまく行かないようでしたので,rubyマクロを参考にしながら,hboxを固定長にするようにマクロを組みなおして実現することができました.
渡辺 敬介 への返信

Re: vboxの揃え位置について

- 匿 名 の投稿
もう解決済みかもしれませんが。
水平方向の位置を揃えるためには、
ずばり \halign があります。
\halign は TeX のプリミティブ命令なので、
LaTeX の解説書などにはあまり記載されていませんが。

使用例:
\vbox{\halign{\hfil#\hfil\cr ほげ\cr ほげほげ\cr}}