• Home
  • Raw
  • Download

Lines Matching refs:glyph

339 void SkScalerContext_DW::generateAdvance(SkGlyph* glyph) {  in generateAdvance()  argument
343 glyph->fRsbDelta = 0; in generateAdvance()
344 glyph->fLsbDelta = 0; in generateAdvance()
346 glyph->fAdvanceX = 0; in generateAdvance()
347 glyph->fAdvanceY = 0; in generateAdvance()
349 uint16_t glyphId = glyph->getGlyphID(); in generateAdvance()
391 glyph->fAdvanceX = SkScalarToFixed(vecs[0].fX); in generateAdvance()
392 glyph->fAdvanceY = SkScalarToFixed(vecs[0].fY); in generateAdvance()
395 HRESULT SkScalerContext_DW::getBoundingBox(SkGlyph* glyph, in getBoundingBox() argument
401 fXform.dx = SkFixedToFloat(glyph->getSubXFixed()); in getBoundingBox()
402 fXform.dy = SkFixedToFloat(glyph->getSubYFixed()); in getBoundingBox()
406 UINT16 glyphId = glyph->getGlyphID(); in getBoundingBox()
449 static bool glyph_check_and_set_bounds(SkGlyph* glyph, const RECT& bbox) { in glyph_check_and_set_bounds() argument
453 glyph->fWidth = SkToU16(bbox.right - bbox.left); in glyph_check_and_set_bounds()
454 glyph->fHeight = SkToU16(bbox.bottom - bbox.top); in glyph_check_and_set_bounds()
455 glyph->fLeft = SkToS16(bbox.left); in glyph_check_and_set_bounds()
456 glyph->fTop = SkToS16(bbox.top); in glyph_check_and_set_bounds()
460 void SkScalerContext_DW::generateMetrics(SkGlyph* glyph) { in generateMetrics() argument
461 glyph->fWidth = 0; in generateMetrics()
462 glyph->fHeight = 0; in generateMetrics()
463 glyph->fLeft = 0; in generateMetrics()
464 glyph->fTop = 0; in generateMetrics()
466 this->generateAdvance(glyph); in generateMetrics()
469 HRVM(this->getBoundingBox(glyph, fRenderingMode, fTextureType, &bbox), in generateMetrics()
472 if (glyph_check_and_set_bounds(glyph, bbox)) { in generateMetrics()
480 HRVM(this->getBoundingBox(glyph, in generateMetrics()
485 if (glyph_check_and_set_bounds(glyph, bbox)) { in generateMetrics()
486 glyph->fForceBW = 1; in generateMetrics()
563 static void bilevel_to_bw(const uint8_t* SK_RESTRICT src, const SkGlyph& glyph) { in bilevel_to_bw() argument
564 const int width = glyph.fWidth; in bilevel_to_bw()
566 uint8_t* SK_RESTRICT dst = static_cast<uint8_t*>(glyph.fImage); in bilevel_to_bw()
571 for (int y = 0; y < glyph.fHeight; ++y) { in bilevel_to_bw()
602 static void rgb_to_a8(const uint8_t* SK_RESTRICT src, const SkGlyph& glyph, const uint8_t* table8) { in rgb_to_a8() argument
603 const size_t dstRB = glyph.rowBytes(); in rgb_to_a8()
604 const U16CPU width = glyph.fWidth; in rgb_to_a8()
605 uint8_t* SK_RESTRICT dst = static_cast<uint8_t*>(glyph.fImage); in rgb_to_a8()
607 for (U16CPU y = 0; y < glyph.fHeight; y++) { in rgb_to_a8()
619 static void rgb_to_lcd16(const uint8_t* SK_RESTRICT src, const SkGlyph& glyph, in rgb_to_lcd16() argument
621 const size_t dstRB = glyph.rowBytes(); in rgb_to_lcd16()
622 const U16CPU width = glyph.fWidth; in rgb_to_lcd16()
623 uint16_t* SK_RESTRICT dst = static_cast<uint16_t*>(glyph.fImage); in rgb_to_lcd16()
625 for (U16CPU y = 0; y < glyph.fHeight; y++) { in rgb_to_lcd16()
643 const void* SkScalerContext_DW::drawDWMask(const SkGlyph& glyph, in drawDWMask() argument
647 int sizeNeeded = glyph.fWidth * glyph.fHeight; in drawDWMask()
658 fXform.dx = SkFixedToFloat(glyph.getSubXFixed()); in drawDWMask()
659 fXform.dy = SkFixedToFloat(glyph.getSubYFixed()); in drawDWMask()
663 UINT16 index = glyph.getGlyphID(); in drawDWMask()
696 bbox.left = glyph.fLeft; in drawDWMask()
697 bbox.top = glyph.fTop; in drawDWMask()
698 bbox.right = glyph.fLeft + glyph.fWidth; in drawDWMask()
699 bbox.bottom = glyph.fTop + glyph.fHeight; in drawDWMask()
712 void SkScalerContext_DW::generateImage(const SkGlyph& glyph) { in generateImage() argument
716 if (glyph.fForceBW) { in generateImage()
720 const void* bits = this->drawDWMask(glyph, renderingMode, textureType); in generateImage()
722 sk_bzero(glyph.fImage, glyph.computeImageSize()); in generateImage()
729 bilevel_to_bw(src, glyph); in generateImage()
730 const_cast<SkGlyph&>(glyph).fMaskFormat = SkMask::kBW_Format; in generateImage()
733 rgb_to_a8<true>(src, glyph, fPreBlend.fG); in generateImage()
735 rgb_to_a8<false>(src, glyph, fPreBlend.fG); in generateImage()
738 SkASSERT(SkMask::kLCD16_Format == glyph.fMaskFormat); in generateImage()
741 rgb_to_lcd16<true, false>(src, glyph, fPreBlend.fR, fPreBlend.fG, fPreBlend.fB); in generateImage()
743 rgb_to_lcd16<true, true>(src, glyph, fPreBlend.fR, fPreBlend.fG, fPreBlend.fB); in generateImage()
747 rgb_to_lcd16<false, false>(src, glyph, fPreBlend.fR, fPreBlend.fG, fPreBlend.fB); in generateImage()
749 rgb_to_lcd16<false, true>(src, glyph, fPreBlend.fR, fPreBlend.fG, fPreBlend.fB); in generateImage()
755 void SkScalerContext_DW::generatePath(const SkGlyph& glyph, SkPath* path) { in generatePath() argument
763 uint16_t glyphId = glyph.getGlyphID(); in generatePath()