
在電子書它說
內部垂直列表的開頭使用
\prevdepth
時的值,對齊完成後將最終的值攜帶到封閉的垂直列表中,以便在開始和結束時正確計算行間粘連的對齊方式。\halign
\prevdepth
在第 15.2 節中TeX 按主題, 它說
在垂直清單的開頭
\prevdepth
設定為,但其中包含的and代碼-1000pt
除外,其中它是從周圍清單中繼承的。\halign
\noalign
我能夠理解這句話電子書,但無法理解其中的句子TeX 按主題。有人可以舉一些關於\prevdepth
和 的例子\noalign
嗎?
答案1
這個純 tex 文件
\def\foo#1{\edef\tmp{\immediate\write20{#1: \the\prevdepth}}\tmp}
\foo{1}
g
\foo{2}
\vbox{
\foo{3}
Q
\foo{4}
}
\foo{5}
a,
\foo{6}
\halign{#\hfil\cr
\noalign{\foo{7}}
z\cr}
\foo{8}
\bye
產生
1: -1000.0pt
2: 1.94444pt
3: -1000.0pt
4: 1.94444pt
5: 1.94444pt
6: 1.94444pt
7: 1.94444pt
8: 0.0pt
顯示\prevdepth
在主垂直列表的開頭和 a 的開頭有神奇的 -1000pt 值,\vbox
但不在\noalign
.
答案2
您對兩本書的兩次引用解決了略有不同的問題。第一個(來自 TeXbook)表示垂直材料\halign
在(可能更大)垂直清單中的行為與「正常」垂直材料相同。它不表現為\unvbox
必須單獨解決前後跳線的材料。第二個(來自 TeX 按主題)表示來自\halign
包括來自\noalign
材料的物體透過右聯行連接每個到下一個。\noalign
從這個角度來看,該材料不是單獨的垂直列表。