Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(240)

Issue 8615: Add support for transformed, stoked, shadowed, filled text. We do this by... (Closed)

Created:
12 years, 1 month ago by brettw
Modified:
9 years, 7 months ago
Reviewers:
M-A Ruel
CC:
chromium-reviews_googlegroups.com
Visibility:
Public.

Description

Add support for transformed, stoked, shadowed, filled text. We do this by drawing the text using Skia after getting the outlines from Windows. A cache of these outlines is maintained because the outlines are very slow to retrieve. This new functionality is in SkiaFontWin.*, and is called when the context detects text attributes that are not supported by Windows. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=7223

Patch Set 1 #

Patch Set 2 : '' #

Patch Set 3 : '' #

Patch Set 4 : '' #

Patch Set 5 : '' #

Patch Set 6 : '' #

Patch Set 7 : '' #

Patch Set 8 : '' #

Patch Set 9 : '' #

Total comments: 6
Unified diffs Side-by-side diffs Delta from patch set Stats (+432 lines, -5 lines) Patch
M webkit/build/port/port.vcproj View 3 4 5 6 7 8 1 chunk +8 lines, -0 lines 0 comments Download
M webkit/port/platform/graphics/chromium/FontChromiumWin.cpp View 4 chunks +87 lines, -4 lines 4 comments Download
M webkit/port/platform/graphics/chromium/FontPlatformDataChromiumWin.cpp View 2 chunks +2 lines, -0 lines 0 comments Download
M webkit/port/platform/graphics/skia/GraphicsContextSkia.cpp View 1 chunk +1 line, -1 line 0 comments Download
M webkit/port/platform/graphics/skia/PlatformContextSkia.h View 1 chunk +1 line, -0 lines 0 comments Download
M webkit/port/platform/graphics/skia/PlatformContextSkia.cpp View 1 chunk +5 lines, -0 lines 0 comments Download
A webkit/port/platform/graphics/skia/SkiaFontWin.h View 1 chunk +63 lines, -0 lines 0 comments Download
A webkit/port/platform/graphics/skia/SkiaFontWin.cpp View 1 chunk +265 lines, -0 lines 2 comments Download

Messages

Total messages: 6 (0 generated)
brettw
No huge rush on this patch, I will wait for the merge branch to land ...
12 years, 1 month ago (2008-10-28 16:02:12 UTC) #1
M-A Ruel
Mostly nits. I haven't reviewed ThemeHelperWin.* yet. http://codereview.chromium.org/8615/diff/29/43 File webkit/build/port/port.vcproj (left): http://codereview.chromium.org/8615/diff/29/43#oldcode663 Line 663: RelativePath="..\..\port\platform\GKURL.cpp" ...
12 years, 1 month ago (2008-10-28 16:46:21 UTC) #2
brettw
http://codereview.chromium.org/8615/diff/29/30 File webkit/port/platform/graphics/SkGraphicsContext.cpp (right): http://codereview.chromium.org/8615/diff/29/30#newcode184 Line 184: gfx::PlatformCanvas* canvas = helper.context()->platformContext()->canvas(); On 2008/10/28 16:46:21, M-A ...
12 years, 1 month ago (2008-10-28 17:16:29 UTC) #3
M-A Ruel
Can you sync with relation to your other changes since some classes disapeared?
12 years, 1 month ago (2008-11-01 00:32:00 UTC) #4
brettw
New patch uploaded (only took 5 weeks!).
12 years ago (2008-12-14 16:47:14 UTC) #5
M-A Ruel
12 years ago (2008-12-15 19:54:51 UTC) #6
looks good.

http://codereview.chromium.org/8615/diff/1401/1203
File webkit/port/platform/graphics/chromium/FontChromiumWin.cpp (right):

http://codereview.chromium.org/8615/diff/1401/1203#newcode60
Line 60: if (context->platformContext()->getDrawLooper())
shadow should be ignored when printing on Windows. :/

http://codereview.chromium.org/8615/diff/1401/1203#newcode157
Line 157: bool canUseGDI = windowsCanHandleTextDrawing(graphicsContext);
I wonder if canUseGDI should always be true when printing.

http://codereview.chromium.org/8615/diff/1401/1203#newcode187
Line 187: // Skia's text draing origin is the baseline, like WebKit, not
drawing

http://codereview.chromium.org/8615/diff/1401/1203#newcode192
Line 192: reinterpret_cast<const WORD*>(&glyphs[0]),
80 cols, if you care.

http://codereview.chromium.org/8615/diff/1401/1208
File webkit/port/platform/graphics/skia/SkiaFontWin.cpp (right):

http://codereview.chromium.org/8615/diff/1401/1208#newcode100
Line 100: // Need to flip the y coordinates since the font's coordinate system
is
80 cols, if you care.

http://codereview.chromium.org/8615/diff/1401/1208#newcode255
Line 255: Vector<CachedOutlineKey> outlinesToDelete;
I guess Vector<OutlineCache::iterator> would break awfully?

Powered by Google App Engine
This is Rietveld 408576698