Lines Matching defs:metrics
294 // vertical metrics.
665 void SkScalerContext_Mac::generateFontMetrics(SkFontMetrics* metrics) {
666 if (nullptr == metrics) {
672 metrics->fTop = SkScalarFromCGFloat(-SkCGRectGetMaxY(theBounds));
673 metrics->fAscent = SkScalarFromCGFloat(-CTFontGetAscent(fCTFont.get()));
674 metrics->fDescent = SkScalarFromCGFloat( CTFontGetDescent(fCTFont.get()));
675 metrics->fBottom = SkScalarFromCGFloat(-SkCGRectGetMinY(theBounds));
676 metrics->fLeading = SkScalarFromCGFloat( CTFontGetLeading(fCTFont.get()));
677 metrics->fAvgCharWidth = SkScalarFromCGFloat( SkCGRectGetWidth(theBounds));
678 metrics->fXMin = SkScalarFromCGFloat( SkCGRectGetMinX(theBounds));
679 metrics->fXMax = SkScalarFromCGFloat( SkCGRectGetMaxX(theBounds));
680 metrics->fMaxCharWidth = metrics->fXMax - metrics->fXMin;
681 metrics->fXHeight = SkScalarFromCGFloat( CTFontGetXHeight(fCTFont.get()));
682 metrics->fCapHeight = SkScalarFromCGFloat( CTFontGetCapHeight(fCTFont.get()));
683 metrics->fUnderlineThickness = SkScalarFromCGFloat( CTFontGetUnderlineThickness(fCTFont.get()));
684 metrics->fUnderlinePosition = -SkScalarFromCGFloat( CTFontGetUnderlinePosition(fCTFont.get()));
686 metrics->fFlags = 0;
687 metrics->fFlags |= SkFontMetrics::kUnderlineThicknessIsValid_Flag;
688 metrics->fFlags |= SkFontMetrics::kUnderlinePositionIsValid_Flag;
693 metrics->fFlags |= SkFontMetrics::kBoundsInvalid_Flag;
715 metrics->fXHeight = SkScalarFromCGFloat(xHeight * fontSize / upem);
719 metrics->fCapHeight = SkScalarFromCGFloat(capHeight * fontSize / upem);