[Webkit-unassigned] [Bug 157383] New: Implement “text-spacing” property as specified in CSS Text Module Level 4

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu May 5 13:11:25 PDT 2016


https://bugs.webkit.org/show_bug.cgi?id=157383

            Bug ID: 157383
           Summary: Implement “text-spacing” property as specified in CSS
                    Text Module Level 4
    Classification: Unclassified
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: All
                OS: All
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Text
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: lambda at liu.ms
                CC: mmaxfield at apple.com

Spec URL: https://drafts.csswg.org/css-text-4/#text-spacing-property

> This property controls spacing between adjacent characters on the same line within the same inline formatting context using a set of character-class-based rules.

This property is very important for CJK typography:

1. It controls the spacing between CJK characters and other characters, which is required by CJK typography.

In the past content creators have to manually insert spaces. Such a practice often creates inconsistence across pages (not everyone is used to inserting spaces between letters and characters). Moreover, due to the web page’s font fallback rule, the width of a space character is hard to control. The default setting in many Western fonts might be too wide or too narrow for the purpose of separating CJK characters from letters visually.

2. It controls the spacing within sequence of full-width punctuations. For instance, a full-width open bracket “(” looks like:
_( (I use underscore to represent the spacing)
. When two such brackets are adjacent, it will look like:
_(_(
while it looks better with:
_((
. Since the spacing is encoded inside the font, it is very hard to remove it—excepting wrapping the character inside a <span> and apply negative margin to it, which might have its own issues when dealing with line breaks.

Note also the property “punctuation”, which
> Creates extra non-breaking spacing around punctuation as required by language-specific typographic conventions.
It currently only matters to French, which I am unfamiliar with. It should be very important though.

I believe this feature will benefit users in CJK regions significantly, so I look forward to someone interested in implementing it. I am a bit inexperienced in C++ and lack the experience in hacking WebKit. However, if I have enough time I might give it a try.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20160505/ac51c888/attachment.html>


More information about the webkit-unassigned mailing list