Files
sousa-gecko/testing/web-platform/tests/css/css-ruby/ruby-overhang-spaces-019.html
T
Minseong Kim 9aa3a31b71 Bug 2042064 [wpt PR 60135] - [ruby-overhang] Support overhang for full-width open/close/middle dot, a=testonly
Automatic update from web-platform-tests
[ruby-overhang] Support overhang for full-width open/close/middle dot

This CL implements support for ruby overhang of full-wdth opening,
closing, and middle dot punctuation. Previously, `ruby-overhang: spaces`
only considered adjacent spaces.

The implementation introduces logic to determine if Han kerning can be
used for ruby overhang. It calculates the available overhang amount
based on the character type, typically the half for opening/closing
puncuation and quarter for middle dots. And this also supports font
features like 'halt' and 'vhal'.

The `subset.sh` script is updated to expand the character range for WPT.
- FE00-FE0F: For variation selectors.
- FF3B, FF3D: Full-width left and right square brackets.

Spec: https://drafts.csswg.org/css-ruby-1/#ruby-overhang
Bug: 499042741, 366873207
Change-Id: I38c8a8f03b3f5eacfea36e305b1fd56758fe8a3a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7809475
Commit-Queue: Minseong Kim <jja08111@gmail.com>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1635620}

--

wpt-commits: 6e5acd8216cd063ec1ffd9b0fc8ea08ca3ab63a2
wpt-pr: 60135
2026-05-29 15:57:39 +00:00

26 lines
879 B
HTML

<!DOCTYPE html>
<meta charset="UTF-8">
<title>Tests for ruby-overhang: spaces with preserved tabs</title>
<link rel="help" href="https://drafts.csswg.org/css-ruby-1/#ruby-overhang">
<link rel="match" href="ruby-overhang-spaces-019-ref.html">
<meta name=assert content="With 'ruby-overhang: spaces', excess ruby overhangs on top of the ideographic spaces and the blank part of middle dot, but no further.">
<style>
ruby {
ruby-overhang: spaces;
ruby-align: center;
}
div {
font-size: 20px;
border-left: 5px solid;
border-right: 5px solid;
width: max-content;
}
.test { border-color: orange; }
.measure { border-color: blue; }
</style>
<body lang="ja">
<p>Test passes if orange and blue lines are aligned.
<div class=test>あ&#x00B7;<ruby>あ<rt>あああああああ</ruby>&#x00B7;あ</div>
<div class=measure>あ&#x00B7; あ &#x00B7;あ</div>
</body>