From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.0rc3) Gecko/20020614
in Thai text,
we need the line to skip all below-level part & tail of char
(also below-level char, like below vowel)
please see the attached testcase.
Steps to Reproduce:
open attached testcase
underline went across Thai base-level characters, also base-level part/tail of
underline skip Thai base-level characters, also base-level part/tail of Thai
also, in case of English text, e.g
when it went underlined,
should the line skip tails of "gyqj" ?
Created attachment 90952 [details]
Thai underlined text
Thai character has 4 levels of displaying.
from highest to lowest level:
above (same level as accent mark of western)
base (same level as general western character)
list of below-level Thai character:
list of Thai character with "below-level part":
list of Thai character with "below-level tail":
some character like U+0E3A,
will be unseen if the underline striked over it.
This is, IMO, another deficiency of the underline definition in the CSS spec
(which we're moving towards in bug 1777), that we're not allowed to do this.
(Or are we?)
propose new attribute to CSS ?
to let web developer able to choose style for underline ?
2 style options
- strike out
- skip over
seems this too hard -_-'
just my 2 satangs :|
(changed the summary to be more general)
example of Latin characters that has some part below the base line:
U+00C7 Latin Capital Letter C with Cedilla
U+00FD Latin Small Letter Y with Acute
U+00FE Latin Small Letter Thorn
U+0104 Latin Capital Letter A with Ogonek
U+014B Latin Small Letter Eng
comment #5 .. may be it's not clear.
1) not skip
2) skip only whitespace
3) skip only below-base-line part-of-character
4) skip whitespace and below-base-line part-of-character
I think we are allowed to do this per the spec, actually. It counts the same as
changing the thickness to allow for subscripts, which the spec explicitly allows.
We should give feedback to the CSSWG that we want 'text-underline-mode' to have
a value which controls whether or not we skip descenders.
actually, i've sent an e-mail to firstname.lastname@example.org yesterday,
not sure if it a good place to send to.
(i'm not subscribed to the list yet, so the msg may delayed)
i can fwd the e-mail to you on monday morning,
when i'm at the office and can access the sentbox :)
please comment on it, thanks.
Created attachment 92925 [details]
Hindi underlining example
Shows input and output sequences and expected underlining. Pl ignore the boxes.
Comment about attachment 92925 [details]
Indian language scripts (particularly South Indian languages) will have the same
issue. In addition could someone point me to the logic of underlining text? My
concern is that CTL (Complex Text Layout) scripts such as Thai, Hebrew, Arabic
require underlining to happen after the characters are shaped to account for
shaping as well as below-base characters. Pl see attached gif for hindi.
Created attachment 94217 [details]
example of different underlining styles, using Thai/Latin text
black: grapheme cluster WITH some part below the base line level.
grey: grapheme cluster without.
from attachment 94217 [details]
i think "skip-whole-cell" is the easiest to implement.
(note: i use the word (display) cell/grapheme cluster interchangably here .. sorry)
So if I have:
<span style="text-decoration: underline">
<span style="vertical-align: -0.5em">text</span>
what should happen? Should the same apply for overline and ascenders? (Think
bigger font in the middle of an overlined inline.)
Similar issue in OpenOffice.org
Underlining should optionally skip descenders and characters below baseline
Isn't this a dupe of bug 64874?
*** Bug 64874 has been marked as a duplicate of this bug. ***
Created attachment 312441 [details]
Message: Jiggy says “สูงสุดคืนสู่สามัญ”
The problem still affects with current nightly build.
We all agreed that this bug is not a blocking bug for Thai support.
(i.e. just optional, good to have, but not necessary)
This seems more important with the new support for colored underlines.
I have a very rough idea of how to do this. If someone's interested in trying to fix it I can give some guidance. It would be good to prototype out an algorithm for breaking the underline first.
I would like to work on this bug, i am good at c++. Please guide me through this
Aish, you should probably look over the CSS3 Text Decoration spec:
and maybe ping jrmuizel directly -- he seems to have not noticed your comment. :)
It looks like this property has been removed from specs long ago. I cannot find it in any current draft. So close it.