Sk段落不塑造或呈现文本



我使用cmake为 macosx 编译了 skia。除了SkParagraph之外,一切都有效。可以使用canvas->drawString进行渲染。编译和运行良好,但不换行或显示任何文本。我在编译滑雪板时错过了什么吗?

这就是我尝试过的,

ParagraphStyle paraStyle;
paraStyle.setTextAlign(skia::textlayout::TextAlign::kLeft);
auto builder =
ParagraphBuilderImpl::make(paraStyle, sk_make_sp<FontCollection>());
builder->pushStyle(style);
std::string text = "Hello";
builder->addText(text.c_str(), text.length());
builder->pop();
// canvas->drawString("Hello", 20, 20, SkFont(), SkPaint());
auto para = builder->Build();
para.get()->layout(27);
para.get()->paint(canvas, 300, 300);

正如这里建议的,尝试设置默认字体管理器:

fontCollection->setDefaultFontManager(SkFontMgr::RefDefault());

还要检查您是否设置了:

  • 颜色
  • 字体style.setFontFamilies({SkString("Roboto")});
  • 宽度足够

最新更新