Options
These globals are now defined:
double duration; // The requested duration of the animation. double frame; // A value in [0, 1] of where we are in the animation.
This global is now defined:
GrBackendRenderTarget backEndRenderTarget;
GrBackendTexture backEndTextureRenderTarget;
Optional source image
These globals are now defined:
SkBitmap source; sk_sp<SkImage> image; GrBackendTexture backEndTexture; // GPU Only.
Note:
Adding comments with SK_FOLD_START and SK_FOLD_END creates foldable code
blocks.
These blocks will be folded by default and are useful for highlighting specific lines of code.
You can also use the keyboard shortcuts Ctrl+S and Ctrl+E in the code editor to set them.
These blocks will be folded by default and are useful for highlighting specific lines of code.
You can also use the keyboard shortcuts Ctrl+S and Ctrl+E in the code editor to set them.
xxxxxxxxxx
26
void draw(SkCanvas* canvas) {
skia::textlayout::ParagraphStyle paraStyle;
paraStyle.setTextDirection(skia::textlayout::TextDirection::kRtl);
auto fontCollection = sk_make_sp<skia::textlayout::FontCollection>();
fontCollection->setDefaultFontManager(fontMgr);
auto builder = skia::textlayout::ParagraphBuilder::make(paraStyle, fontCollection);
skia::textlayout::TextStyle textStyle;
textStyle.setWordSpacing(40);
textStyle.setFontSize(24);
textStyle.setColor(SK_ColorBLACK);
builder->pushStyle(textStyle);
builder->addText("م ب ل\nم ٦ ل");
builder->pop();
auto paragraph = builder->Build();
paragraph->layout(200);
paragraph->paint(canvas, SkScalar(0), SkScalar(0));
}