New issue
Advanced search Search tips

Issue 669459 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 669455

Blocking:
issue 669453



Sign in to add a comment

Use CSS variable font axis value definitions in shaping and painting

Project Member Reported by drott@chromium.org, Nov 29 2016

Issue description

Once we have CSS support for axis value definitions through font-variation-settings, we should use these values for passing them to shaping and font instantiation for painting.

 
Project Member

Comment 2 by bugdroid1@chromium.org, Dec 22 2016

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

commit d5cec19a655dbb722f75bfccdaa44f69c0827e64
Author: drott <drott@chromium.org>
Date: Thu Dec 22 18:32:45 2016

Initial OpenType Font Variations Support

Adding support for instantiating OpenType Font Variations from web fonts
through font-variation-settings on Linux and Mac. Linux currenly
requires a system FreeType at version 2.6.5 or newer and at least macOS
10.11, but support is still experimental.

With this CL, in addition to web fonts Mac supports instantiating system
font variations.

Some known issues, see meta bug  crbug.com/669453 :
* Correct mark positioning requires new HarfBuzz API to pass axis
  parameters from Skia to HarfBuzz
* Incorrect advance width scaling on Linux when hinting is enabled (as
  it is by default), discussed and almost solved in
  https://bugs.chromium.org/p/skia/issues/detail?id=5917

TEST=fast/text/variable-fonts/variable-box-font.html,
fast/text/variable-fonts/variable-mac-system-font.html,
http/tests/webfont/variable-box-font-arraybuffer.html
FontSettingsTest.cpp
BUG= 669459 ,  670246 

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

[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/LayoutTests/NeverFixTests
[add] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/LayoutTests/fast/text/variable-fonts/variable-box-font-expected.html
[add] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/LayoutTests/fast/text/variable-fonts/variable-box-font.html
[add] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/LayoutTests/fast/text/variable-fonts/variable-mac-system-font.html
[add] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/LayoutTests/http/tests/resources/variabletest_box.ttf
[add] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/LayoutTests/http/tests/webfont/variable-box-font-arraybuffer-expected.html
[add] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/LayoutTests/http/tests/webfont/variable-box-font-arraybuffer.html
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/core/css/BinaryDataFontFaceSource.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/core/css/CSSFontFaceSourceTest.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/core/css/RemoteFontFaceSource.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/core/loader/resource/FontResource.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/core/loader/resource/FontResource.h
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/BUILD.gn
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/FontCacheKey.h
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/FontCustomPlatformData.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/FontCustomPlatformData.h
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/FontDescription.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/FontPlatformData.h
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/WebFontDecoder.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/linux/FontPlatformDataLinux.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/mac/FontCacheMac.mm
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/mac/FontPlatformDataMac.mm
[add] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/opentype/FontSettings.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/opentype/FontSettings.h
[add] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/opentype/FontSettingsTest.cpp
[modify] https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzFace.cpp

Comment 3 by drott@chromium.org, Apr 24 2017

Status: Fixed (was: Started)
Fixed in https://crrev.com/d5cec19a655dbb722f75bfccdaa44f69c0827e64

Sign in to add a comment