zl程序教程

您现在的位置是:首页 >  其他

当前栏目

2021.12.12日报:非ComplexPath下,skia显示黑体字有问题

2023-04-18 14:49:53 时间

测试代码是这样: <FONT style="FONT-SIZE: 12pt" face="黑体"><STRONG><SPAN>&nbsp; </SPAN></STRONG></FONT><br/>

然后如果不开启ComplexPath,skia会显示空格变成一个方框,不知道是不是skia的bug。

跟了一下,主要是Font::buildGlyphBuffer这里建立的glyph和ComplexPath不同。

非ComplexPath的glyph是0,而ComplexPath是980.导致后面:

SkGlyphCache::allocateNewGlyph、

SkScalerContext_GDI::generateMetrics、

GlyphFindAndPlaceFullPixel::findAndPositionGlyph、

SkDraw::drawPosText的glyph.fWidth

获取的glyph对应的宽度不同。非ComplexPath的glyph是0,获取的宽度是14,而ComplexPath的宽度是0.

目前暂时不清楚具体怎么回事。但因为可以规避这问题,就不管了。