diff options
author | Mike Reed <> | 2009-03-25 16:41:56 -0700 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-25 16:41:56 -0700 |
commit | 524cedc1fd3aec8645b0db81250f0ee5b6d68f5d (patch) | |
tree | c429fc36211c629a5236700d62316e698209a019 | |
parent | dd591af60ebceb10a6451bcd6bb81d11102499b6 (diff) | |
download | external_webkit-524cedc1fd3aec8645b0db81250f0ee5b6d68f5d.zip external_webkit-524cedc1fd3aec8645b0db81250f0ee5b6d68f5d.tar.gz external_webkit-524cedc1fd3aec8645b0db81250f0ee5b6d68f5d.tar.bz2 |
Automated import from //branches/donutburger/...@142713,142713
-rw-r--r-- | WebCore/platform/graphics/android/FontAndroid.cpp | 5 | ||||
-rw-r--r-- | WebCore/platform/graphics/android/FontDataAndroid.cpp | 13 |
2 files changed, 10 insertions, 8 deletions
diff --git a/WebCore/platform/graphics/android/FontAndroid.cpp b/WebCore/platform/graphics/android/FontAndroid.cpp index a5f5640..ca2fca1 100644 --- a/WebCore/platform/graphics/android/FontAndroid.cpp +++ b/WebCore/platform/graphics/android/FontAndroid.cpp @@ -133,6 +133,9 @@ void Font::drawGlyphs(GraphicsContext* gc, const SimpleFontData* font, */ if (EmojiFont::IsAvailable()) { + // set filtering, to make scaled images look nice(r) + paint.setFilterBitmap(true); + int localIndex = 0; int localCount = 0; for (int i = 0; i < numGlyphs; i++) { @@ -141,7 +144,7 @@ void Font::drawGlyphs(GraphicsContext* gc, const SimpleFontData* font, canvas->drawPosText(&glyphs[localIndex], localCount * sizeof(uint16_t), &pos[localIndex], paint); - EmojiFont::Draw(canvas, glyphs[i], x, y, &paint); + EmojiFont::Draw(canvas, glyphs[i], x, y, paint); // reset local index/count track for "real" glyphs localCount = 0; localIndex = i + 1; diff --git a/WebCore/platform/graphics/android/FontDataAndroid.cpp b/WebCore/platform/graphics/android/FontDataAndroid.cpp index af98398..3d31eaf 100644 --- a/WebCore/platform/graphics/android/FontDataAndroid.cpp +++ b/WebCore/platform/graphics/android/FontDataAndroid.cpp @@ -112,17 +112,16 @@ float SimpleFontData::platformWidthForGlyph(Glyph glyph) const { SkASSERT(sizeof(glyph) == 2); // compile-time assert - if (EmojiFont::IsEmojiGlyph(glyph)) - return EmojiFont::GetAdvanceWidth(glyph); - SkPaint paint; m_font.setupPaint(&paint); - paint.setTextEncoding(SkPaint::kGlyphID_TextEncoding); - SkScalar width = paint.measureText(&glyph, 2); - - return SkScalarToFloat(width); + if (EmojiFont::IsEmojiGlyph(glyph)) + return EmojiFont::GetAdvanceWidth(glyph, paint); + else { + paint.setTextEncoding(SkPaint::kGlyphID_TextEncoding); + return SkScalarToFloat(paint.measureText(&glyph, 2)); + } } } |