New issue
Advanced search Search tips

Issue 609117 link

Starred by 5 users

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Feature

Blocking:
issue 606249



Sign in to add a comment

Implement shaper-driven line breaking

Project Member Reported by e...@chromium.org, May 4 2016

Issue description

Using complex text shaping information to implement faster and more correct line breaking in Blink.

Design doc: https://docs.google.com/document/d/1eMTBKTnWEMDu00uS2p8Xj-l9Pk7Kf0q5y3FbcCrWYjU/edit
 

Comment 1 by e...@chromium.org, Aug 26 2016

Blocking: 641423

Comment 2 by e...@chromium.org, Aug 26 2016

Blocking: 606249

Comment 3 by e...@chromium.org, Aug 26 2016

Cc: esprehn@chromium.org e...@chromium.org
 Issue 606249  has been merged into this issue.

Comment 4 Deleted

Comment 5 Deleted

Comment 6 Deleted

Project Member

Comment 7 by bugdroid1@chromium.org, Mar 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b47c12e89f5134efe6a68cb45e28a92451fcdb3e

commit b47c12e89f5134efe6a68cb45e28a92451fcdb3e
Author: eae <eae@chromium.org>
Date: Tue Mar 28 00:41:24 2017

Add support for shaper-driven line breaking to HarfBuzzShaper

Shapes a line of text by finding the ideal break point based on existing
shape results for the paragraph and then looking backwards until a valid
and appropriate break opportunity is identified. Re-shapes the beginning
and/or end of the line as needed (if the break position affect shaping).

This allows for significantly faster and more efficient line breaking by
only re-shaping when absolutely needed and by only measuring between the
start/end of lines and the nearest suitable and valid break opportunity.

The nextSafeToBreakBefore and previousSafeToBreakAfter functions will be
updated to use safe-to-break information when exposed by HarfBuzz.

R=drott@chromium.org, kojii@chromium.org
BUG= 609117 
TEST=Source/platform/fonts/shaping/HarfBuzzShaperTest.cpp

Review-Url: https://codereview.chromium.org/2740083002
Cr-Commit-Position: refs/heads/master@{#459953}

[modify] https://crrev.com/b47c12e89f5134efe6a68cb45e28a92451fcdb3e/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaper.cpp
[modify] https://crrev.com/b47c12e89f5134efe6a68cb45e28a92451fcdb3e/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaper.h
[modify] https://crrev.com/b47c12e89f5134efe6a68cb45e28a92451fcdb3e/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaperTest.cpp
[modify] https://crrev.com/b47c12e89f5134efe6a68cb45e28a92451fcdb3e/third_party/WebKit/Source/platform/fonts/shaping/ShapeResult.cpp
[modify] https://crrev.com/b47c12e89f5134efe6a68cb45e28a92451fcdb3e/third_party/WebKit/Source/platform/fonts/shaping/ShapeResult.h
[modify] https://crrev.com/b47c12e89f5134efe6a68cb45e28a92451fcdb3e/third_party/WebKit/Source/platform/fonts/shaping/ShapeResultInlineHeaders.h

Comment 8 by e...@chromium.org, Mar 28 2017

Status: Fixed (was: Available)

Sign in to add a comment