Re: [csswg-drafts] [css-text-3] The spec should provide guidance about interop issues related to ink overflow from text (#10066)

I think there's some confusion here regarding the term *hanging glyph*. In CSS Text 3, [8.2. Hanging Glyphs](https://drafts.csswg.org/css-text-3/#hanging) is discussing the convention of allowing certain characters to protrude or "hang" into the margin of the text block, so that their normal typographic advance is ignored (or placed outside the typographic bounds of the line). This is a deliberate typographic effect that involves adjusting the glyph's position from its "natural" place in the line.

The example of an italicized *f*
```
  <div class="figure" style="margin:0; font-size:10rem; font-family:garamond; font-style:italic">
    <span style="display:inline-block; width:1ch; height:1lh; background:green; opacity:0.5"></span><span style="vertical-align: top;">f</span><span style="display:inline-block; width:1ch; height:1lh; background:green; opacity:0.5"></span>
  </div>
```
mentioned in https://github.com/w3c/csswg-drafts/pull/9842#issuecomment-1992749312 is of a different nature. This glyph does not "hang" because it has been moved into the margin of the text block; it remains at its default inline position, occupying its normal space in the line. It has "hanging" ink because the actual glyph outline extends beyond its origin and advance (i.e. it has negative sidebearings). If it happens to occur at the beginning or end of a line, it will contribute ink overflow to the line because its negative sidebearings project into the margins, yet it is not a "hanging glyph" in the sense of CSS Text 3.

Such ink overflow can of course occur in the block as well as inline directions; an extreme example being "zalgo" text, where diacritics (that in themselves might not have any ink overflow) are stacked such that they render far beyond the typographic bounds of the line.

These glyph-level forms of ink overflow are conceptually quite distinct from the character-level ink overflow that CSS Text 3's hanging glyphs create, and the two cases should be addressed separately.

-- 
GitHub Notification of comment by jfkthame
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/10066#issuecomment-2088122192 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 1 May 2024 08:03:51 UTC