Skip to main content

Module text_align

Module text_align 

Source
Expand description

折り返した段落の行揃え(text-align)の計算(純粋ロジック)。

【2026-10-04 修正】sugi-lab.net/smarthome.htm の機能カード (.feature-card{text-align:center})で、1 行の見出しは中央に来るのに、 複数行に折り返す本文の段落が左揃えで描かれた。 1 行の文字はレイアウト木(layout/tree.rs の text-align 後処理)が行内の箱ごと ずらすので揃うが、折り返した文字の箱は全幅なのでずらす量が 0 になる。 描画用の行を作る web_engine/layout.rs は各行を箱の左端から置いており、 行揃えを一切見ていなかった。ここで行ごとの開始位置を決める。

1 行の文字は箱の幅 = 行の幅なので、この計算の結果は 0(字下げのみ)になり、 レイアウト木のずらしと二重には掛からない。

試験: tests/src/test_text_align.rs

Functions§

line_start_offset
行の先頭の x を、行ボックスの左端からのオフセットで返す。