| Index: src/core/SkPaint.cpp
|
| diff --git a/src/core/SkPaint.cpp b/src/core/SkPaint.cpp
|
| index c3f217cefc60e5501e08a88755b5f537dbcb956c..9e4a26448f28d80dfe9a4eab3d7853774ea32487 100644
|
| --- a/src/core/SkPaint.cpp
|
| +++ b/src/core/SkPaint.cpp
|
| @@ -1296,6 +1296,8 @@ SkScalar SkPaint::getFontMetrics(FontMetrics* metrics, SkScalar zoom) const {
|
| metrics->fXMin = SkScalarMul(metrics->fXMin, scale);
|
| metrics->fXMax = SkScalarMul(metrics->fXMax, scale);
|
| metrics->fXHeight = SkScalarMul(metrics->fXHeight, scale);
|
| + metrics->fUnderlineThickness = SkScalarMul(metrics->fUnderlineThickness, scale);
|
| + metrics->fUnderlinePosition = SkScalarMul(metrics->fUnderlinePosition, scale);
|
| }
|
| return metrics->fDescent - metrics->fAscent + metrics->fLeading;
|
| }
|
| @@ -2257,6 +2259,26 @@ const SkRect& SkPaint::doComputeFastBounds(const SkRect& origSrc,
|
| return *storage;
|
| }
|
|
|
| +bool SkPaint::FontMetrics::hasUnderlineThickness(SkScalar* thickness) const {
|
| + if (SkToBool(fFlags & kUnderlineThinknessIsValid_Flag))
|
| + {
|
| + *thickness = fUnderlineThickness;
|
| + return true;
|
| + }
|
| + *thickness = 0;
|
| + return false;
|
| +}
|
| +
|
| +bool SkPaint::FontMetrics::hasUnderlinePosition(SkScalar* thickness) const {
|
| + if (SkToBool(fFlags & kUnderlinePositionIsValid_Flag))
|
| + {
|
| + *thickness = fUnderlinePosition;
|
| + return true;
|
| + }
|
| + *thickness = 0;
|
| + return false;
|
| +}
|
| +
|
| #ifdef SK_DEVELOPER
|
| void SkPaint::toString(SkString* str) const {
|
| str->append("<dl><dt>SkPaint:</dt><dd><dl>");
|
|
|