BUG=skia: NOTRY=true DOCS_PREVIEW= https://skia.org/?cl=5708 Change-Id: Iac133df3778061509f5754aa6a742cebc2ab6ba6 Reviewed-on: https://skia-review.googlesource.com/5708 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Heather Miller <hcm@google.com> Commit-Queue: Joe Gregorio <jcgregorio@google.com>
7.8 KiB
API Overview & Doxygen Docs
Skia is organized around the SkCanvas
object. It is the host for the
"draw" calls: drawRect
, drawPath
, drawText
, etc. Each of these
has two components: the primitive being drawn (SkRect
, SkPath
, etc.)
and color/style attributes (SkPaint
).
canvas->drawRect(rect, paint);
The paint holds much of the state describing how the rectangle (in this case) is drawn: what color it is, if it is filled or stroked, how it should blend with what was previously drawn.
The canvas holds relatively little state. It points to the actual pixels being drawn, and it maintains a stack of matrices and clips. Thus in the above call, the canvas' current matrix may transform the coordinates of the rectangle (translation, rotation, skewing, perspective), and the canvas' current clip may restrict where on the canvas the rectangle will be drawn, but all other stylistic attributes of the drawing are controlled by the paint.
Using the SkCanvas API:
- SkCanvas - the drawing context.
- SkPaint - color, stroke, font, effects
- SkRect - rectangles
- SkRegion - set operations with rectangles and paths
Appendix:
Autogenerated Doxygen Documentaion
Here's a partial list of the more important Skia classes:
- SkCanvas
- SkImage
- SkSurface
- SkPaint
- SkXfermode
- SkShader
- SkColorFilter
- SkPathEffect
- SkImageFilter
- SkAlphaThresholdFilter
- SkBlurImageFilter
- SkBitmapSource
- SkColorFilterImageFilter
- SkComposeImageFilter
- SkDisplacementMapEffect
- SkDownSampleImageFilter
- SkDropShadowImageFilter
- SkLightingImageFilter
- SkMagnifierImageFilter
- SkMatrixConvolutionImageFilter
- SkMergeImageFilter
- SkDilateImageFilter
- SkErodeImageFilter
- SkOffsetImageFilter
- SkPictureImageFilter
- SkRectShaderImageFilter
- SkTileImageFilter
- SkXfermodeImageFilter
- SkMaskFilter
- SkDrawLooper