Stackengineのセンタリングの問題
Stackengine Centering Problem
解決:
文字のサイドベアリングを考慮していないので、センタリングに使用される実際の文字幅には空白が含まれていると思います。 TeXはグリフの形状に関する情報を持っておらず、指定された文字幅のどの部分が黒であるかを知ることができません。
documentclass {article} usepackage {stackengine} begin {document} $ left | Shortstack [c] {Cognicion abstractiva} right | $ $ left | Shortstack [c] { frame {Cognicion} frame { abstractiva}} right | $ end {document}
この例は、何を測定するかについての疑問を解消するはずです。最初の2つのケースでは、ヘアラインが互いに完全に重なっており、問題がないことを示していることに注意してください。 Shortstack。
一方、測定した差は0.4pt未満であり、小さすぎて実際には目立たないものです。これは、文字の境界ボックスによって異なります。
documentclass {article} usepackage {color} usepackage {stackengine} newcommand { hairline} [1] [black] {% Leavevmode kern-0.05pt smash { color {#1} vrule height 20pt depth 20pt幅0.1pt}% kern-0.05pt} begin {document} centering Shortstack [c] { hairline {} XXXXXX hairline {} XXXXXXXXXX} hairline {} XXXXXX hairline {} \ XXXXXXXXXX vspace {20pt} Shortstack [c] {% hairline [red] Cognicion hairline [red] hairline [green] abstractiva hairline [green]%} end {document}