diff options
34 files changed, 2257 insertions, 1610 deletions
diff --git a/docs/SkAutoCanvasRestore_Reference.bmh b/docs/SkAutoCanvasRestore_Reference.bmh new file mode 100644 index 0000000000..a01aa793c7 --- /dev/null +++ b/docs/SkAutoCanvasRestore_Reference.bmh @@ -0,0 +1,122 @@ +#Topic Automatic_Canvas_Restore + +#Class SkAutoCanvasRestore + +Stack helper class calls SkCanvas::restoreToCount() when SkAutoCanvasRestore +goes out of scope. Use this to guarantee that the canvas is restored to a known +state. + +#Topic Overview + +#Subtopic Subtopics +#ToDo manually add subtopics ## +#Table +#Legend +# name # description ## +#Legend ## +# Constructors # functions that construct SkAutoCanvasRestore ## +# Member_Functions # static functions and member methods ## +#Table ## +#Subtopic ## + +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# SkAutoCanvasRestore(SkCanvas* canvas, bool doSave) # Preserves Canvas save count. ## +# ~SkAutoCanvasRestore() # Restores Canvas to saved state. ## +#Table ## +#Subtopic ## + +#Subtopic Member_Functions +#Table +#Legend +# name # description ## +#Legend ## +# restore() # Restores Canvas to saved state. ## +#Table ## +#Subtopic ## + +#Topic Overview ## + +#Method SkAutoCanvasRestore(SkCanvas* canvas, bool doSave) + +Preserves Canvas save count. Optionally saves Canvas_Clip and Canvas_Matrix. + +#Param canvas Canvas to guard ## +#Param doSave call SkCanvas::save() ## + +#Return utility to restore Canvas state on destructor ## + +#Example +#Height 128 + SkPaint p; + p.setAntiAlias(true); + p.setTextSize(64); + for (SkScalar sx : { -1, 1 } ) { + for (SkScalar sy : { -1, 1 } ) { + SkAutoCanvasRestore autoRestore(canvas, true); + SkMatrix m = SkMatrix::MakeAll(sx, 1, 96, 0, sy, 64, 0, 0, 1); + canvas->concat(m); + canvas->drawString("R", 0, 0, p); + } + } +## + +#SeeAlso SkCanvas::save SkCanvas::restore + +## + +#Method ~SkAutoCanvasRestore() + +Restores Canvas to saved state. Destructor is called when container goes out of +scope. + +#NoExample +## + +#SeeAlso SkCanvas::save SkCanvas::restore + +## + +#Method void restore() + +Restores Canvas to saved state immediately. Subsequent calls and +~SkAutoCanvasRestore have no effect. + +#Example +for (bool callRestore : { false, true } ) { + for (bool saveCanvas : {false, true} ) { + SkAutoCanvasRestore autoRestore(canvas, saveCanvas); + if (!saveCanvas) { + canvas->save(); + } + SkDebugf("saveCanvas: %s before restore: %d\n", + saveCanvas ? "true" : "false", canvas->getSaveCount()); + if (callRestore) autoRestore.restore(); + SkDebugf("saveCanvas: %s after restore: %d\n", + saveCanvas ? "true" : "false", canvas->getSaveCount()); + } +} +SkDebugf("final count: %d\n", canvas->getSaveCount()); +#StdOut +saveCanvas: false before restore: 2 +saveCanvas: false after restore: 2 +saveCanvas: true before restore: 2 +saveCanvas: true after restore: 2 +saveCanvas: false before restore: 2 +saveCanvas: false after restore: 1 +saveCanvas: true before restore: 2 +saveCanvas: true after restore: 1 +final count: 1 +## +## + +#SeeAlso SkCanvas::save SkCanvas::restore + +## + +#Class SkAutoCanvasRestore ## + +#Topic Automatic_Canvas_Restore ## diff --git a/docs/SkBitmap_Reference.bmh b/docs/SkBitmap_Reference.bmh index e9755bf89f..5aae6272a5 100644 --- a/docs/SkBitmap_Reference.bmh +++ b/docs/SkBitmap_Reference.bmh @@ -38,15 +38,19 @@ is useful to position one or more Bitmaps within a shared pixel array. #ToDo manually add subtopics ## #Table #Legend -# topics # description ## +# name # description ## #Legend ## +# Classes_and_Structs # embedded struct and class members ## +# Constructors # functions that construct SkPath ## +# Member_Functions # static functions and member methods ## +# Operators # operator overloading methods ## #Table ## ## -#Subtopic Structs +#Subtopic Classes_and_Structs #Table #Legend -# description # struct ## +# name # description ## #Legend ## # Allocator # ## # HeapAllocator # ## @@ -56,95 +60,95 @@ is useful to position one or more Bitmaps within a shared pixel array. #Subtopic Constructors #Table #Legend -# description # function ## +# name # description ## #Legend ## -# SkBitmap() # Constructs with default values. ## -# SkBitmap(SkBitmap&& src) # Takes ownership of pixels. ## -# SkBitmap(const SkBitmap& src) # Shares ownership of pixels. ## -# ~SkBitmap() # Releases ownership of pixels. ## +# SkBitmap() # constructs with default values ## +# SkBitmap(SkBitmap&& src) # takes ownership of pixels ## +# SkBitmap(const SkBitmap& src) # shares ownership of pixels ## +# ~SkBitmap() # releases ownership of pixels ## #Table ## #Subtopic ## #Subtopic Operators #Table #Legend -# description # function ## +# name # description ## #Legend ## -# SkBitmap& operator=(SkBitmap&& src) # Takes ownership of pixels. ## -# SkBitmap& operator=(const SkBitmap& src) # Shares ownership of pixels. ## +# SkBitmap& operator=(SkBitmap&& src) # takes ownership of pixels ## +# SkBitmap& operator=(const SkBitmap& src) # shares ownership of pixels ## #Table ## #Subtopic ## #Subtopic Member_Functions #Table #Legend -# description # function ## +# name # description ## #Legend ## -# ComputeIsOpaque # Returns true if all pixels are opaque. ## -# allocN32Pixels # Allocates compatible Color_ARGB pixels, or aborts. ## -# allocPixels # Allocates pixels from Image_Info, or aborts. ## -# allocPixelsFlags # Allocates pixels from Image_Info with options, or aborts. ## -# alphaType # Returns Image_Info Alpha_Type. ## -# bounds() # Returns width() and height() as Rectangle. ## -# bytesPerPixel # Returns number of bytes in pixel based on Color_Type. ## -# colorSpace # Returns Image_Info Color_Space. ## -# colorType # Returns Image_Info Color_Type. ## -# computeByteSize # Returns size required for pixels. ## -# dimensions() # Returns width() and height(). ## -# drawsNothing # Returns true if no width(), no height(), or no Pixel_Ref. ## -# empty() # Returns true if Image_Info has zero width() or height(). ## -# erase() # Writes Color to rectangle of pixels. ## -# eraseARGB # Writes Color to pixels. ## -# eraseArea # Deprecated ## -# eraseColor # Writes Color to pixels. ## -# eraseRGB # Deprecated ## -# extractAlpha # Creates Bitmap containing Alpha of pixels. ## -# extractSubset # Creates Bitmap, sharing pixels if possible. ## -# getAddr # Returns readable pixel address as void pointer. ## -# getAddr16 # Returns readable pixel address as 16-bit pointer. ## -# getAddr32 # Returns readable pixel address as 32-bit pointer. ## -# getAddr8 # Returns readable pixel address as 8-bit pointer. ## -# getBounds # Returns width() and height() as Rectangle. ## -# getColor # Returns one pixel as Unpremultiplied Color. ## -# getGenerationID # Returns unique ID. ## -# getPixels # Returns address of pixels. ## -# getSubset # Returns bounds offset by origin. ## -# hasHardwareMipMap # Returns Mip_Map support present; Android only. ## -# height() # Returns pixel row count. ## -# info() # Returns Image_Info. ## -# installMaskPixels # Creates Pixel_Ref from Mask. ## -# installPixels # Creates Pixel_Ref, with optional release function. ## -# isImmutable # Returns true if pixels will not change. ## -# isNull # Returns true if Pixel_Ref is nullptr. ## -# isOpaque # Returns true if Image_Info describes opaque pixels. ## -# isVolatile # Returns true if pixels should not be cached. ## -# notifyPixelsChanged # Marks pixels as changed, altering the unique ID. ## -# peekPixels # Returns Pixmap if possible. ## -# pixelRef # Returns Pixel_Ref, or nullptr. ## -# pixelRefOrigin # Returns offset within Pixel_Ref. ## -# pixmap() # Returns Pixmap. ## -# readPixels # Copies and converts pixels. ## -# readyToDraw # Returns true if address of pixels is not nullptr. ## -# refColorSpace # Returns Image_Info Color_Space. ## -# reset() # Sets to default values, releases pixel ownership. ## -# rowBytes # Returns interval between rows in bytes. ## -# rowBytesAsPixels # Returns interval between rows in pixels. ## -# setAlphaType # Sets Alpha_Type of shared pixels. ## -# setHasHardwareMipMap # Sets Mip_Map support present; Android only. ## -# setImmutable # Marks that pixels will not change. ## -# setInfo # Sets height, width, Color_Type, and so on, releasing pixels. ## -# setIsVolatile # Marks if pixels should not be cached. ## -# setPixelRef # Sets Pixel_Ref and offset. ## -# setPixels # Sets Pixel_Ref without an offset. ## -# shiftPerPixel # Returns bit shift from pixels to bytes. ## -# swap() # Exchanges Bitmap pair. ## -# toString # Converts Bitmap to machine readable form. ## -# tryAllocN32Pixels # Allocates compatible Color_ARGB pixels if possible. ## -# tryAllocPixels # Allocates pixels from Image_Info if possible. ## -# tryAllocPixelsFlags # Allocates pixels from Image_Info with options if possible. ## -# validate() # Asserts if Bitmap is invalid (debug only). ## -# width() # Returns pixel column count. ## -# writePixels # Copies and converts pixels. ## +# ComputeIsOpaque # returns true if all pixels are opaque ## +# allocN32Pixels # allocates compatible Color_ARGB pixels, or aborts ## +# allocPixels # allocates pixels from Image_Info, or aborts ## +# allocPixelsFlags # allocates pixels from Image_Info with options, or aborts ## +# alphaType # returns Image_Info Alpha_Type ## +# bounds() # returns width() and height() as Rectangle ## +# bytesPerPixel # returns number of bytes in pixel based on Color_Type ## +# colorSpace # returns Image_Info Color_Space ## +# colorType # returns Image_Info Color_Type ## +# computeByteSize # returns size required for pixels ## +# dimensions() # returns width() and height() ## +# drawsNothing # returns true if no width(), no height(), or no Pixel_Ref ## +# empty() # returns true if Image_Info has zero width() or height() ## +# erase() # writes Color to rectangle of pixels ## +# eraseARGB # writes Color to pixels ## +# eraseArea # deprecated ## +# eraseColor # writes Color to pixels ## +# eraseRGB # deprecated ## +# extractAlpha # creates Bitmap containing Alpha of pixels ## +# extractSubset # creates Bitmap, sharing pixels if possible ## +# getAddr # returns readable pixel address as void pointer ## +# getAddr16 # returns readable pixel address as 16-bit pointer ## +# getAddr32 # returns readable pixel address as 32-bit pointer ## +# getAddr8 # returns readable pixel address as 8-bit pointer ## +# getBounds # returns width() and height() as Rectangle ## +# getColor # returns one pixel as Unpremultiplied Color ## +# getGenerationID # returns unique ID ## +# getPixels # returns address of pixels ## +# getSubset # returns bounds offset by origin ## +# hasHardwareMipMap # returns Mip_Map support present; Android only ## +# height() # returns pixel row count ## +# info() # returns Image_Info ## +# installMaskPixels # creates Pixel_Ref from Mask ## +# installPixels # creates Pixel_Ref, with optional release function ## +# isImmutable # returns true if pixels will not change ## +# isNull # returns true if Pixel_Ref is nullptr ## +# isOpaque # returns true if Image_Info describes opaque pixels ## +# isVolatile # returns true if pixels should not be cached ## +# notifyPixelsChanged # marks pixels as changed, altering the unique ID ## +# peekPixels # returns Pixmap if possible ## +# pixelRef # returns Pixel_Ref, or nullptr ## +# pixelRefOrigin # returns offset within Pixel_Ref ## +# pixmap() # returns Pixmap ## +# readPixels # copies and converts pixels ## +# readyToDraw # returns true if address of pixels is not nullptr ## +# refColorSpace # returns Image_Info Color_Space ## +# reset() # sets to default values, releases pixel ownership ## +# rowBytes # returns interval between rows in bytes ## +# rowBytesAsPixels # returns interval between rows in pixels ## +# setAlphaType # sets Alpha_Type of shared pixels ## +# setHasHardwareMipMap # sets Mip_Map support present; Android only ## +# setImmutable # marks that pixels will not change ## +# setInfo # sets height, width, Color_Type, and so on, releasing pixels ## +# setIsVolatile # marks if pixels should not be cached ## +# setPixelRef # sets Pixel_Ref and offset ## +# setPixels # sets Pixel_Ref without an offset ## +# shiftPerPixel # returns bit shift from pixels to bytes ## +# swap() # exchanges Bitmap pair ## +# toString # converts Bitmap to machine readable form ## +# tryAllocN32Pixels # allocates compatible Color_ARGB pixels if possible ## +# tryAllocPixels # allocates pixels from Image_Info if possible ## +# tryAllocPixelsFlags # allocates pixels from Image_Info with options if possible ## +# validate() # asserts if Bitmap is invalid (debug only) ## +# width() # returns pixel column count ## +# writePixels # copies and converts pixels ## #Table ## #Subtopic ## diff --git a/docs/SkCanvas_Reference.bmh b/docs/SkCanvas_Reference.bmh index 24e1e0a41b..4463ea6b3a 100644 --- a/docs/SkCanvas_Reference.bmh +++ b/docs/SkCanvas_Reference.bmh @@ -29,31 +29,35 @@ This approach may be deprecated in the future. #Subtopic Subtopics #Table #Legend -# topics # description ## +# name # description ## #Legend ## -#ToDo generate a TOC here ## +# Classes_and_Structs # embedded struct and class members ## +# Constants # enum and enum class, const values ## +# Constructors # functions that construct SkPath ## +# Member_Functions # static functions and member methods ## +# Operators # operator overloading methods ## #Table ## #Subtopic ## #Subtopic Constants #Table #Legend -# constants # description ## +# name # description ## #Legend ## -# Lattice::Flags # Controls Lattice transparency. ## -# PointMode # Sets drawPoints options. ## -# SaveLayerFlags # Sets SaveLayerRec options. ## -# SrcRectConstraint # Sets drawImageRect options. ## +# Lattice::Flags # controls Lattice transparency ## +# PointMode # sets drawPoints options ## +# SaveLayerFlags # sets SaveLayerRec options ## +# SrcRectConstraint # sets drawImageRect options ## #Table ## #Subtopic ## -#Subtopic Structs +#Subtopic Classes_and_Structs #Table #Legend -# struct # description ## +# name # description ## #Legend ## -# Lattice # Divides Bitmap, Image into a rectangular grid. ## -# SaveLayerRec # Contains state to create Layer. ## +# Lattice # divides Bitmap, Image into a rectangular grid ## +# SaveLayerRec # contains state to create Layer ## #Table ## #Subtopic ## @@ -64,103 +68,105 @@ when no Surface is required, and some helpers implicitly create Raster_Surface. #Table #Legend -# # description ## +# name # description ## #Legend ## -# SkCanvas() # No Surface, no dimensions. ## -# SkCanvas(int width, int height, const SkSurfaceProps* props = nullptr) # No Surface, set dimensions, Surface_Properties. ## -# SkCanvas(SkBaseDevice* device) # Existing Device. (SkBaseDevice is private.) ## -# SkCanvas(const SkBitmap& bitmap) # Uses existing Bitmap. ## -# SkCanvas(const SkBitmap& bitmap, const SkSurfaceProps& props) # Uses existing Bitmap and Surface_Properties. ## -# MakeRasterDirect # Creates from SkImageInfo and Pixel_Storage. ## -# MakeRasterDirectN32 # Creates from image data and Pixel_Storage. ## +# MakeRasterDirect # creates from SkImageInfo and Pixel_Storage ## +# MakeRasterDirectN32 # creates from image data and Pixel_Storage ## +# SkCanvas() # creates with no Surface, no dimensions ## +# SkCanvas(SkBaseDevice* device) # to be deprecated ## +# SkCanvas(const SkBitmap& bitmap) # uses existing Bitmap ## +# SkCanvas(const SkBitmap& bitmap, ColorBehavior behavior) # Android framework only ## +# SkCanvas(const SkBitmap& bitmap, const SkSurfaceProps& props) # uses existing Bitmap and Surface_Properties ## +# SkCanvas(int width, int height, const SkSurfaceProps* props = nullptr) # no Surface, set dimensions, Surface_Properties ## +# ~SkCanvas() # draws saved Layers, frees resources ## #Table ## #Subtopic ## #Subtopic Member_Functions #Table #Legend -# function # description ## +# name # description ## #Legend ## -# accessTopLayerPixels # Returns writable pixel access if available. ## -# accessTopRasterHandle # Returns context that tracks Clip and Matrix. ## -# clear() # Fills Clip with Color. ## -# clipPath # Combines Clip with Path. ## -# clipRRect # Combines Clip with Round_Rect. ## -# clipRect # Combines Clip with Rect. ## -# clipRegion # Combines Clip with Region. ## -# concat() # Multiplies Matrix by Matrix. ## -# discard() # Makes Canvas contents undefined. ## -# drawAnnotation # Associates a Rect with a key-value pair.## -# drawArc # Draws Arc using Clip, Matrix, and Paint.## -# drawAtlas # Draws sprites using Clip, Matrix, and Paint.## -# drawBitmap # Draws Bitmap at (x, y) position. ## -# drawBitmapLattice # Draws proportionally stretched Bitmap. ## -# drawBitmapNine # Draws Nine_Patch Bitmap. ## -# drawBitmapRect # Draws Bitmap, source Rect to destination Rect. ## -# drawCircle # Draws Circle using Clip, Matrix, and Paint. ## -# drawColor # Fills Clip with Color and Blend_Mode. ## -# drawDRRect # Draws double Round_Rect stroked or filled. ## -# drawDrawable # Draws Drawable, encapsulated drawing commands. ## -# drawIRect # Draws IRect using Clip, Matrix, and Paint. ## -# drawImage # Draws Image at (x, y) position. ## -# drawImageLattice # Draws proportionally stretched Image. ## -# drawImageNine # Draws Nine_Patch Image. ## -# drawImageRect # Draws Image, source Rect to destination Rect. ## -# drawLine # Draws line segment between two points.## -# drawOval # Draws Oval using Clip, Matrix, and Paint. ## -# drawPaint # Fills Clip with Paint. ## -# drawPatch # Draws Coons_Patch. ## -# drawPath # Draws Path using Clip, Matrix, and Paint. ## -# drawPicture # Draws Picture using Clip and Matrix. ## -# drawPoint # Draws point at (x, y) position. ## -# drawPoints # Draws array as points, lines, polygon. ## -# drawPosText # Draws text at array of (x, y) positions. ## -# drawPosTextH # Draws text at x positions with common baseline. ## -# drawRRect # Draws Round_Rect using Clip, Matrix, and Paint. ## -# drawRect # Draws Rect using Clip, Matrix, and Paint. ## -# drawRegion # Draws Region using Clip, Matrix, and Paint. ## -# drawRoundRect # Draws Round_Rect using Clip, Matrix, and Paint. ## -# drawText # Draws text at (x, y), using font advance. ## -# drawTextBlob # Draws text with arrays of positions and Paint. ## -# drawTextOnPath # Draws text following Path contour. ## -# drawTextOnPathHV # Draws text following Path with offsets. ## -# drawTextRSXform # Draws text with array of RSXform. ## -# drawString # Draws null terminated string at (x, y) using font advance. ## -# drawVertices # Draws Vertices, a triangle mesh. ## -# flush() # Triggers execution of all pending draw operations. ## -# getBaseLayerSize # Gets size of base Layer in global coordinates. ## -# getDeviceClipBounds # Returns IRect bounds of Clip. ## -# getDrawFilter # Legacy; to be deprecated. ## -# getGrContext # Returns GPU_Context of the GPU_Surface. ## -# getLocalClipBounds # Returns Clip bounds in source coordinates. ## -# getMetaData # Associates additional data with the canvas. ## -# getProps # Copies Surface_Properties if available. ## -# getSaveCount # Returns depth of stack containing Clip and Matrix. ## -# getTotalMatrix # Returns Matrix. ## -# imageInfo # Returns Image_Info for Canvas. ## -# isClipEmpty # Returns if Clip is empty. ## -# isClipRect # Returns if Clip is Rect and not empty. ## -# MakeRasterDirect # Creates Canvas from SkImageInfo and pixel data. ## -# MakeRasterDirectN32 # Creates Canvas from image specifications and pixel data. ## -# makeSurface # Creates Surface matching SkImageInfo and SkSurfaceProps. ## -# peekPixels # Returns if Canvas has direct access to its pixels. ## -# quickReject # Returns if Rect is outside Clip. ## -# readPixels # Copies and converts rectangle of pixels from Canvas. ## -# resetMatrix # Resets Matrix to identity. ## -# restore() # Restores changes to Clip and Matrix, pops save stack. ## -# restoreToCount # Restores changes to Clip and Matrix to given depth. ## -# rotate() # Rotates Matrix. ## -# save() # Saves Clip and Matrix on stack. ## -# saveLayer # Saves Clip and Matrix on stack; creates Layer. ## -# saveLayerAlpha # Saves Clip and Matrix on stack; creates Layer; sets opacity. ## -# saveLayerPreserveLCDTextRequests # Saves Clip and Matrix on stack; creates Layer for LCD text. ## -# scale() # Scales Matrix. ## -# setAllowSimplifyClip # Experimental. ## -# setDrawFilter # Legacy; to be deprecated. ## -# setMatrix # Sets Matrix. ## -# skew() # Skews Matrix. # -# translate() # Translates Matrix. ## -# writePixels # Copies and converts rectangle of pixels to Canvas. ## +# MakeRasterDirect # creates Canvas from SkImageInfo and pixel data ## +# MakeRasterDirectN32 # creates Canvas from image specifications and pixel data ## +# accessTopLayerPixels # returns writable pixel access if available ## +# accessTopRasterHandle # returns context that tracks Clip and Matrix ## +# clear() # fills Clip with Color ## +# clipPath # combines Clip with Path ## +# clipRRect # combines Clip with Round_Rect ## +# clipRect # combines Clip with Rect ## +# clipRegion # combines Clip with Region ## +# concat() # multiplies Matrix by Matrix ## +# discard() # makes Canvas contents undefined ## +# drawAnnotation # associates a Rect with a key-value pair ## +# drawArc # draws Arc using Clip, Matrix, and Paint ## +# drawAtlas # draws sprites using Clip, Matrix, and Paint ## +# drawBitmap # draws Bitmap at (x, y) position ## +# drawBitmapLattice # draws proportionally stretched Bitmap ## +# drawBitmapNine # draws Nine_Patch Bitmap ## +# drawBitmapRect # draws Bitmap, source Rect to destination Rect ## +# drawCircle # draws Circle using Clip, Matrix, and Paint ## +# drawColor # fills Clip with Color and Blend_Mode ## +# drawDRRect # draws double Round_Rect stroked or filled ## +# drawDrawable # draws Drawable, encapsulated drawing commands ## +# drawIRect # draws IRect using Clip, Matrix, and Paint ## +# drawImage # draws Image at (x, y) position ## +# drawImageLattice # draws proportionally stretched Image ## +# drawImageNine # draws Nine_Patch Image ## +# drawImageRect # draws Image, source Rect to destination Rect ## +# drawLine # draws line segment between two points ## +# drawOval # draws Oval using Clip, Matrix, and Paint ## +# drawPaint # fills Clip with Paint ## +# drawPatch # draws Coons_Patch ## +# drawPath # draws Path using Clip, Matrix, and Paint ## +# drawPicture # draws Picture using Clip and Matrix ## +# drawPoint # draws point at (x, y) position ## +# drawPoints # draws array as points, lines, polygon ## +# drawPosText # draws text at array of (x, y) positions ## +# drawPosTextH # draws text at x positions with common baseline ## +# drawRRect # draws Round_Rect using Clip, Matrix, and Paint ## +# drawRect # draws Rect using Clip, Matrix, and Paint ## +# drawRegion # draws Region using Clip, Matrix, and Paint ## +# drawRoundRect # draws Round_Rect using Clip, Matrix, and Paint ## +# drawString # draws null terminated string at (x, y) using font advance ## +# drawText # draws text at (x, y), using font advance ## +# drawTextBlob # draws text with arrays of positions and Paint ## +# drawTextOnPath # draws text following Path contour ## +# drawTextOnPathHV # draws text following Path with offsets ## +# drawTextRSXform # draws text with array of RSXform ## +# drawVertices # draws Vertices, a triangle mesh ## +# flush() # triggers execution of all pending draw operations ## +# getBaseLayerSize # returns size of base Layer in global coordinates ## +# getDeviceClipBounds # returns IRect bounds of Clip ## +# getDrawFilter # legacy; to be deprecated ## +# getGrContext # returns GPU_Context of the GPU_Surface ## +# getLocalClipBounds # returns Clip bounds in source coordinates ## +# getMetaData # associates additional data with the canvas ## +# getProps # copies Surface_Properties if available ## +# getSaveCount # returns depth of stack containing Clip and Matrix ## +# getTotalMatrix # returns Matrix ## +# imageInfo # returns Image_Info for Canvas ## +# isClipEmpty # returns if Clip is empty ## +# isClipRect # returns if Clip is Rect and not empty ## +# makeSurface # creates Surface matching SkImageInfo and SkSurfaceProps ## +# peekPixels # returns if Canvas has direct access to its pixels ## +# quickReject # returns if Rect is outside Clip ## +# readPixels # copies and converts rectangle of pixels from Canvas ## +# resetMatrix # resets Matrix to identity ## +# restore() # restores changes to Clip and Matrix, pops save stack ## +# restoreToCount # restores changes to Clip and Matrix to given depth ## +# rotate() # rotates Matrix ## +# save() # saves Clip and Matrix on stack ## +# saveLayer # saves Clip and Matrix on stack; creates Layer ## +# saveLayerAlpha # saves Clip and Matrix on stack; creates Layer; sets opacity ## +# saveLayerPreserveLCDTextRequests # saves Clip and Matrix on stack; creates Layer for LCD text ## +# scale() # scales Matrix ## +# setAllowSimplifyClip # experimental ## +# setDrawFilter # legacy; to be deprecated ## +# setMatrix # sets Matrix ## +# skew() # skews Matrix. # +# translate() # translates Matrix ## +# writePixels # copies and converts rectangle of pixels to Canvas ## #Table ## #Subtopic ## @@ -584,8 +590,8 @@ The actual output depends on the installed fonts. #Method virtual ~SkCanvas() -Draw saved Layers, if any. -Free up resources used by Canvas. +Draws saved Layers, if any. +Frees up resources used by Canvas. #Example #Description @@ -6165,89 +6171,4 @@ Returns false if the clip is empty, or if it is not Rect. #Class SkCanvas ## -#Class SkAutoCanvasRestore - -Stack helper class calls SkCanvas::restoreToCount() when SkAutoCanvasRestore -goes out of scope. Use this to guarantee that the canvas is restored to a known -state. - -#Method SkAutoCanvasRestore(SkCanvas* canvas, bool doSave) - -Preserves Canvas save count. Optionally saves Canvas Clip and Matrix. - -#Param canvas Canvas to guard ## -#Param doSave call SkCanvas::save() ## - -#Return utility to restore Canvas state on destructor ## - -#Example -#Height 128 - SkPaint p; - p.setAntiAlias(true); - p.setTextSize(64); - for (SkScalar sx : { -1, 1 } ) { - for (SkScalar sy : { -1, 1 } ) { - SkAutoCanvasRestore autoRestore(canvas, true); - SkMatrix m = SkMatrix::MakeAll(sx, 1, 96, 0, sy, 64, 0, 0, 1); - canvas->concat(m); - canvas->drawString("R", 0, 0, p); - } - } -## - -#SeeAlso SkCanvas::save SkCanvas::restore - -## - -#Method ~SkAutoCanvasRestore() - -Restores Canvas to saved state. Destructor is called when container goes out of -scope. - -#NoExample -## - -#SeeAlso SkCanvas::save SkCanvas::restore - -## - -#Method void restore() - -Restores Canvas to saved state immediately. Subsequent calls and -~SkAutoCanvasRestore have no effect. - -#Example -for (bool callRestore : { false, true } ) { - for (bool saveCanvas : {false, true} ) { - SkAutoCanvasRestore autoRestore(canvas, saveCanvas); - if (!saveCanvas) { - canvas->save(); - } - SkDebugf("saveCanvas: %s before restore: %d\n", - saveCanvas ? "true" : "false", canvas->getSaveCount()); - if (callRestore) autoRestore.restore(); - SkDebugf("saveCanvas: %s after restore: %d\n", - saveCanvas ? "true" : "false", canvas->getSaveCount()); - } -} -SkDebugf("final count: %d\n", canvas->getSaveCount()); -#StdOut -saveCanvas: false before restore: 2 -saveCanvas: false after restore: 2 -saveCanvas: true before restore: 2 -saveCanvas: true after restore: 2 -saveCanvas: false before restore: 2 -saveCanvas: false after restore: 1 -saveCanvas: true before restore: 2 -saveCanvas: true after restore: 1 -final count: 1 -## -## - -#SeeAlso SkCanvas::save SkCanvas::restore - -## - -#Class SkAutoCanvasRestore ## - #Topic Canvas ## diff --git a/docs/SkIPoint16_Reference.bmh b/docs/SkIPoint16_Reference.bmh index b5c3cfee99..4f3d53b28b 100644 --- a/docs/SkIPoint16_Reference.bmh +++ b/docs/SkIPoint16_Reference.bmh @@ -3,7 +3,7 @@ #Struct SkIPoint16 -SkIPoint holds two 16 bit integer coordinates +SkIPoint holds two 16 bit integer coordinates. #Topic Overview @@ -11,31 +11,42 @@ SkIPoint holds two 16 bit integer coordinates #ToDo manually add subtopics ## #Table #Legend -# topics # description ## +# name # description ## #Legend ## +# Constructors # functions that construct SkIPoint16 ## +# Member_Functions # static functions and member methods ## #Table ## -## +#Subtopic ## + +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# Make # constructs from integer inputs ## +#Table ## +#Subtopic ## #Subtopic Member_Functions #Table #Legend -# description # function ## +# name # description ## #Legend ## -# Make # Constructs from integer inputs. ## -# set() # Sets to integer input. ## -# x() # Returns fX. ## -# y() # Returns fY. ## +# Make # constructs from integer inputs ## +# set() # sets to integer input ## +# x() # returns fX ## +# y() # returns fY ## #Table ## #Subtopic ## -#Topic ## +#Topic Overview ## #Member int16_t fX -x-axis value used by IPoint16. +x-axis value used by IPoint16 ## #Member int16_t fY -y-axis value used by IPoint16. +y-axis value used by IPoint16 ## # ------------------------------------------------------------------------------ diff --git a/docs/SkIPoint_Reference.bmh b/docs/SkIPoint_Reference.bmh index ed37167a12..3a431dee10 100644 --- a/docs/SkIPoint_Reference.bmh +++ b/docs/SkIPoint_Reference.bmh @@ -4,7 +4,7 @@ #Struct SkIPoint -SkIPoint holds two 32 bit integer coordinates +SkIPoint holds two 32 bit integer coordinates. #Topic Overview @@ -12,41 +12,53 @@ SkIPoint holds two 32 bit integer coordinates #ToDo manually add subtopics ## #Table #Legend -# topics # description ## +# name # description ## #Legend ## +# Constructors # functions that construct SkIPoint16 ## +# Member_Functions # static functions and member methods ## +# Operators # operator overloading methods ## #Table ## -## +#Subtopic ## + +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# Make # constructs from integer inputs ## +#Table ## +#Subtopic ## #Subtopic Operators #Table #Legend -# description # function ## +# name # description ## #Legend ## -# SkIPoint operator-()_const # Reverses sign of IPoint. ## -# SkIPoint operator+(const SkIPoint& a, const SkIVector& b) # Returns IPoint offset by IVector. ## -# SkIVector operator-(const SkIPoint& a, const SkIPoint& b) # Returns IVector between IPoints. ## -# bool operator!=(const SkIPoint& a, const SkIPoint& b) # Returns true if IPoints are unequal. ## -# bool operator==(const SkIPoint& a, const SkIPoint& b) # Returns true if IPoints are equal. ## -# void operator+=(const SkIVector& v) # Adds IVector to IPoint. ## -# void operator-=(const SkIVector& v) # Subtracts IVector from IPoint. ## +# SkIPoint operator+(const SkIPoint& a, const SkIVector& b) # returns IPoint offset by IVector ## +# SkIPoint operator-()_const # reverses sign of IPoint ## +# SkIVector operator-(const SkIPoint& a, const SkIPoint& b) # returns IVector between IPoints ## +# bool operator!=(const SkIPoint& a, const SkIPoint& b) # returns true if IPoints are unequal ## +# bool operator==(const SkIPoint& a, const SkIPoint& b) # returns true if IPoints are equal ## +# void operator+=(const SkIVector& v) # adds IVector to IPoint ## +# void operator-=(const SkIVector& v) # subtracts IVector from IPoint ## #Table ## #Subtopic ## #Subtopic Member_Functions #Table #Legend -# description # function ## +# name # description ## #Legend ## -# Make # Constructs from integer inputs. ## -# equals() # Returns true if members are equal. ## -# isZero # Returns true if both members equal zero. ## -# set() # Sets to integer input. ## -# x() # Returns fX. ## -# y() # Returns fY. ## +# Make # constructs from integer inputs ## +# equals() # returns true if members are equal ## +# isZero # returns true if both members equal zero ## +# set() # sets to integer input ## +# x() # returns fX ## +# y() # returns fY ## #Table ## #Subtopic ## -#Topic ## +#Topic Overview ## #Member int32_t fX x-axis value used by IPoint. diff --git a/docs/SkIRect_Reference.bmh b/docs/SkIRect_Reference.bmh index 708ac56551..eb0a3c06b0 100644 --- a/docs/SkIRect_Reference.bmh +++ b/docs/SkIRect_Reference.bmh @@ -12,72 +12,93 @@ its top, it is considered empty. #Topic Overview #Subtopic Subtopics -#ToDo manually add subtopics ## #Table #Legend -# topics # description ## +# name # description ## #Legend ## +# Constructors # list of functions that construct SkPath ## +# Member_Functions # list of static functions and member methods ## +# Operators # operator overloading methods ## #Table ## ## +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# MakeEmpty # returns bounds of (0, 0, 0, 0) ## +# MakeLTRB # constructs from int left, top, right, bottom ## +# MakeLargest # deprecated ## +# MakeSize # constructs from ISize returning (0, 0, width, height) ## +# MakeWH # constructs from int input returning (0, 0, width, height) ## +# MakeXYWH # constructs from int input returning (x, y, width, height) ## +# makeInset # constructs from sides moved symmetrically about the center ## +# makeOffset # constructs from translated sides ## +# makeOutset # constructs from sides moved symmetrically about the center ## +# makeSorted # constructs, ordering sides from smaller to larger ## +#Table ## +#Subtopic ## + #Subtopic Operators #Table #Legend -# description # function ## +# name # description ## #Legend ## -# bool operator!=(const SkIRect& a, const SkIRect& b) # Returns true if members are unequal. ## -# bool operator==(const SkIRect& a, const SkIRect& b) # Returns true if members are equal. ## +# bool operator!=(const SkIRect& a, const SkIRect& b) # returns true if members are unequal ## +# bool operator==(const SkIRect& a, const SkIRect& b) # returns true if members are equal ## #Table ## #Subtopic ## #Subtopic Member_Functions #Table #Legend -# description # function ## +# name # description ## #Legend ## -# EmptyIRect # Returns immutable bounds of (0, 0, 0, 0). ## -# Intersects # Returns true if areas overlap. ## -# IntersectsNoEmptyCheck # Returns true if areas overlap. Skips empty check. ## -# MakeEmpty # Returns bounds of (0, 0, 0, 0). ## -# MakeLTRB # Constructs from int left, top, right, bottom. ## -# MakeSize # Constructs from ISize returning (0, 0, width, height). ## -# MakeWH # Constructs from int input returning (0, 0, width, height). ## -# MakeXYWH # Constructs from int input returning (x, y, width, height). ## -# bottom() # Returns larger bounds in y, if sorted. ## -# centerX # Returns midpoint in x. ## -# centerY # Returns midpoint in y. ## -# contains() # Returns true if points are equal or inside. ## -# containsNoEmptyCheck # Returns true if points are equal or inside. Skips empty check. ## -# height() # Returns span in y. ## -# height64() # Returns span in y as int64_t. ## -# inset() # Moves the sides symmetrically about the center. ## -# intersect # Sets to shared area; returns true if not empty. ## -# intersectNoEmptyCheck # Sets to shared area; returns true if not empty. Skips empty check. ## -# is16Bit # Returns true if members fit in 16-bit word. ## -# isEmpty # Returns true if width or height are zero or negative or they exceed int32_t. ## -# isEmpty64 # Returns true if width or height are zero or negative. ## -# join() # Sets to union of bounds. ## -# left() # Returns smaller bounds in x, if sorted. ## -# makeInset # Constructs from sides moved symmetrically about the center. ## -# makeOffset # Constructs from translated sides. ## -# makeOutset # Constructs from sides moved symmetrically about the center. ## -# makeSorted # Constructs, ordering sides from smaller to larger. ## -# offset() # Translates sides without changing width and height. ## -# offsetTo # Translates to (x, y) without changing width and height. ## -# outset() # Moves the sides symmetrically about the center. ## -# quickReject # Returns true if rectangles do not intersect. ## -# right() # Returns larger bounds in x, if sorted. ## -# set() # Sets to (left, top, right, bottom). ## -# setEmpty # Sets to (0, 0, 0, 0). ## -# setLTRB # Sets to SkScalar input (left, top, right, bottom). ## -# setXYWH # Sets to (x, y, width, height). ## -# size() # Returns ISize (width, height). ## -# sort() # Orders sides from smaller to larger. ## -# top() # Returns smaller bounds in y, if sorted. ## -# width() # Returns span in x. ## -# width64() # Returns span in y as int64_t. ## -# x() # Returns bounds left. ## -# y() # Returns bounds top. ## +# EmptyIRect # returns immutable bounds of (0, 0, 0, 0) ## +# Intersects # returns true if areas overlap ## +# IntersectsNoEmptyCheck # returns true if areas overlap skips empty check ## +# MakeEmpty # returns bounds of (0, 0, 0, 0) ## +# MakeLTRB # constructs from int left, top, right, bottom ## +# MakeLargest # deprecated ## +# MakeSize # constructs from ISize returning (0, 0, width, height) ## +# MakeWH # constructs from int input returning (0, 0, width, height) ## +# MakeXYWH # constructs from int input returning (x, y, width, height) ## +# bottom() # returns larger bounds in y, if sorted ## +# centerX # returns midpoint in x ## +# centerY # returns midpoint in y ## +# contains() # returns true if points are equal or inside ## +# containsNoEmptyCheck # returns true if points are equal or inside skips empty check ## +# height() # returns span in y ## +# height64 # returns span in y as int64_t ## +# inset() # moves the sides symmetrically about the center ## +# intersect # sets to shared area; returns true if not empty ## +# intersectNoEmptyCheck # sets to shared area; returns true if not empty skips empty check ## +# is16Bit # returns true if members fit in 16-bit word ## +# isEmpty # returns true if width or height are zero or negative or they exceed int32_t ## +# isEmpty64 # returns true if width or height are zero or negative ## +# join() # sets to union of bounds ## +# left() # returns smaller bounds in x, if sorted ## +# makeInset # constructs from sides moved symmetrically about the center ## +# makeOffset # constructs from translated sides ## +# makeOutset # constructs from sides moved symmetrically about the center ## +# makeSorted # constructs, ordering sides from smaller to larger ## +# offset() # translates sides without changing width and height ## +# offsetTo # translates to (x, y) without changing width and height ## +# outset() # moves the sides symmetrically about the center ## +# quickReject # returns true if rectangles do not intersect ## +# right() # returns larger bounds in x, if sorted ## +# set() # sets to (left, top, right, bottom) ## +# setEmpty # sets to (0, 0, 0, 0) ## +# setLTRB # sets to SkScalar input (left, top, right, bottom) ## +# setXYWH # sets to (x, y, width, height) ## +# size() # returns ISize (width, height) ## +# sort() # orders sides from smaller to larger ## +# top() # returns smaller bounds in y, if sorted ## +# width() # returns span in x ## +# width64 # returns span in y as int64_t ## +# x() # returns bounds left ## +# y() # returns bounds top ## #Table ## #Subtopic ## diff --git a/docs/SkImage_Reference.bmh b/docs/SkImage_Reference.bmh index ffcd6fe60a..a0e29c2ff5 100644 --- a/docs/SkImage_Reference.bmh +++ b/docs/SkImage_Reference.bmh @@ -49,6 +49,37 @@ drawing. #Table ## ## +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# MakeBackendTextureFromSkImage # Creates GPU_Texture from Image. ## +# MakeCrossContextFromEncoded # Creates Image from encoded data, and uploads to GPU. ## +# MakeCrossContextFromPixmap # Creates Image from Pixmap, and uploads to GPU. ## +# MakeFromAHardwareBuffer # Creates Image from Android hardware buffer. ## +# MakeFromAdoptedTexture # Creates Image from GPU_Texture, managed internally. ## +# MakeFromBitmap # Creates Image from Bitmap, sharing or copying pixels. ## +# MakeFromDeferredTextureImageData # To be deprecated. ## +# MakeFromEncoded # Creates Image from encoded data. ## +# MakeFromGenerator # Creates Image from a stream of data. ## +# MakeFromNV12TexturesCopy # Creates Image from YUV_ColorSpace data in two planes. ## +# MakeFromPicture # Creates Image from Picture. ## +# MakeFromRaster # Creates Image from Pixmap, with release. ## +# MakeFromTexture # Creates Image from GPU_Texture, managed externally. ## +# MakeFromYUVTexturesCopy # Creates Image from YUV_ColorSpace data in three planes. ## +# MakeRasterCopy # Creates Image from Pixmap and copied pixels. ## +# MakeRasterData # Creates Image from Image_Info and shared pixels. ## +# SkSurface::makeImageSnapshot # Creates Image capturing Surface contents. ## +# makeColorSpace # Creates Image matching Color_Space if possible. ## +# makeNonTextureImage # Creates Image without dependency on GPU_Texture. ## +# makeRasterImage # Creates Image compatible with Raster_Surface if possible. ## +# makeSubset # Creates Image containing part of original. ## +# makeTextureImage # Creates Image matching Color_Space if possible. ## +# makeWithFilter # Creates filtered, clipped Image. ## +#Table ## +#Subtopic ## + #Subtopic Member_Functions #Table #Legend @@ -56,10 +87,11 @@ drawing. #Legend ## # MakeBackendTextureFromSkImage # Creates GPU_Texture from Image. ## # MakeCrossContextFromEncoded # Creates Image from encoded data, and uploads to GPU. ## +# MakeCrossContextFromPixmap # Creates Image from Pixmap, and uploads to GPU. ## # MakeFromAHardwareBuffer # Creates Image from Android hardware buffer. ## # MakeFromAdoptedTexture # Creates Image from GPU_Texture, managed internally. ## # MakeFromBitmap # Creates Image from Bitmap, sharing or copying pixels. ## -# MakeFromDeferredTextureImageData # ## +# MakeFromDeferredTextureImageData # To be deprecated. ## # MakeFromEncoded # Creates Image from encoded data. ## # MakeFromGenerator # Creates Image from a stream of data. ## # MakeFromNV12TexturesCopy # Creates Image from YUV_ColorSpace data in two planes. ## @@ -75,7 +107,7 @@ drawing. # colorSpace # Returns Color_Space. ## # dimensions() # Returns width() and height(). ## # encodeToData # Returns encoded Image as SkData. ## -# getDeferredTextureImageData # ## +# getDeferredTextureImageData # To be deprecated. ## # getTexture # Deprecated. ## # getTextureHandle # Returns GPU reference to Image as texture. ## # height() # Returns pixel row count. ## diff --git a/docs/SkMatrix_Reference.bmh b/docs/SkMatrix_Reference.bmh index cd49206454..d348acb441 100644 --- a/docs/SkMatrix_Reference.bmh +++ b/docs/SkMatrix_Reference.bmh @@ -27,6 +27,18 @@ improve performance. Matrix is not thread safe unless getType is called first. #Table ## ## +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# MakeAll # Constructs all nine values. ## +# MakeRectToRect # Constructs from source Rect to destination Rect. ## +# MakeScale # Constructs from scale in x and y. ## +# MakeTrans # Constructs from translate in x and y. ## +#Table ## +#Subtopic ## + #Subtopic Operators #Table #Legend @@ -34,8 +46,8 @@ improve performance. Matrix is not thread safe unless getType is called first. #Legend ## # operator!=(const SkMatrix& a, const SkMatrix& b) # Returns true if members are unequal. ## # operator==(const SkMatrix& a, const SkMatrix& b) # Returns true if members are equal. ## -# operator[](int index)_const # Returns Matrix value. ## # operator[](int index) # Returns writable reference to Matrix value. ## +# operator[](int index)_const # Returns Matrix value. ## #Table ## #Subtopic ## diff --git a/docs/SkPaint_Reference.bmh b/docs/SkPaint_Reference.bmh index 31031e76fa..801df43109 100644 --- a/docs/SkPaint_Reference.bmh +++ b/docs/SkPaint_Reference.bmh @@ -32,208 +32,220 @@ Shader attached to Paint. #Topic Overview #Subtopic Subtopics -#ToDo not all methods are in topics ## -#ToDo subtopics are not in topics ## #Table #Legend -# topics # description ## +# name # description ## #Legend ## -# Initializers # Constructors and initialization. ## -# Destructor # Paint termination. ## -# Management # Paint copying, moving, comparing. ## -# Hinting # Glyph outline adjustment. ## -# Flags # Attributes represented by single bits. ## -# Anti-alias # Approximating coverage with transparency. ## -# Dither # Distributing color error. ## -# Device_Text # Increase precision of glyph position. ## -# Font_Embedded_Bitmaps # Custom sized bitmap Glyphs. ## -# Automatic_Hinting # Always adjust glyph paths. ## -# Vertical_Text # Orient text from top to bottom. ## -# Fake_Bold # Approximate font styles. ## -# Full_Hinting_Spacing # Glyph spacing affected by hinting. ## -# Filter_Quality_Methods # Get and set Filter_Quality. ## -# Color_Methods # Get and set Color. ## -# Style # Geometry filling, stroking. ## -# Stroke_Width # Thickness perpendicular to geometry. ## -# Miter_Limit # Maximum length of stroked corners. ## -# Stroke_Cap # Decorations at ends of open strokes. ## -# Stroke_Join # Decoration at corners of strokes. ## -# Fill_Path # Make Path from Path_Effect, stroking. ## -# Shader_Methods # Get and set Shader. ## -# Color_Filter_Methods # Get and set Color_Filter. ## -# Blend_Mode_Methods # Get and set Blend_Mode. ## -# Path_Effect_Methods # Get and set Path_Effect. ## -# Mask_Filter_Methods # Get and set Mask_Filter. ## -# Typeface_Methods # Get and set Typeface. ## -# Image_Filter_Methods # Get and set Image_Filter. ## -# Draw_Looper_Methods # Get and set Draw_Looper. ## -# Text_Align # Text placement relative to position. ## -# Text_Size # Overall height in points. ## -# Text_Scale_X # Text horizontal scale. ## -# Text_Skew_X # Text horizontal slant. ## -# Text_Encoding # Text encoded as characters or Glyphs. ## -# Font_Metrics # Common glyph dimensions. ## -# Measure_Text # Width, height, bounds of text. ## -# Text_Path # Geometry of Glyphs. ## -# Text_Intercepts # Advanced underline, strike through. ## -# Fast_Bounds # Approximate area required by Paint. ## +# Classes_and_Structs # embedded struct and class members ## +# Constants # enum and enum class, const values ## +# Constructors # list of functions that construct SkPath ## +# Member_Functions # list of static functions and member methods ## +# Operators # operator overloading methods ## +# Related_Functions # similar methods grouped together ## +#Table ## +#Subtopic ## + +#Subtopic Related_Functions +#Table +#Legend +# name # description ## +#Legend ## +# Anti-alias # approximating coverage with transparency ## +# Automatic_Hinting # always adjust glyph paths ## +# Blend_Mode_Methods # get and set Blend_Mode ## +# Color_Filter_Methods # get and set Color_Filter ## +# Color_Methods # get and set Color ## +# Destructor # paint termination ## +# Device_Text # increase precision of glyph position ## +# Dither # distributing color error ## +# Draw_Looper_Methods # get and set Draw_Looper ## +# Fake_Bold # approximate font styles ## +# Fast_Bounds # approximate area required by Paint ## +# Fill_Path # make Path from Path_Effect, stroking ## +# Filter_Quality_Methods # get and set Filter_Quality ## +# Flags # attributes represented by single bits ## +# Font_Embedded_Bitmaps # custom sized bitmap Glyphs ## +# Font_Metrics # common glyph dimensions ## +# Full_Hinting_Spacing # glyph spacing affected by hinting ## +# Hinting # glyph outline adjustment ## +# Image_Filter_Methods # get and set Image_Filter ## +# Initializers # constructors and initialization ## +# Management # paint copying, moving, comparing ## +# Mask_Filter_Methods # get and set Mask_Filter ## +# Measure_Text # width, height, bounds of text ## +# Miter_Limit # maximum length of stroked corners ## +# Path_Effect_Methods # get and set Path_Effect ## +# Shader_Methods # get and set Shader ## +# Stroke_Cap # decorations at ends of open strokes ## +# Stroke_Join # decoration at corners of strokes ## +# Stroke_Width # thickness perpendicular to geometry ## +# Style # geometry filling, stroking ## +# Text_Align # text placement relative to position ## +# Text_Encoding # text encoded as characters or Glyphs ## +# Text_Intercepts # advanced underline, strike through ## +# Text_Path # geometry of Glyphs ## +# Text_Scale_X # text horizontal scale ## +# Text_Size # overall height in points ## +# Text_Skew_X # text horizontal slant ## +# Typeface_Methods # get and set Typeface ## +# Vertical_Text # orient text from top to bottom ## #Table ## #Subtopic ## #Subtopic Constants #Table #Legend -# constants # description ## +# name # description ## #Legend ## -# Align # Glyph locations relative to text position. ## -# Cap # Start and end geometry on stroked shapes. ## -# Flags # Values described by bits and masks. ## -# FontMetrics::FontMetricsFlags # Valid Font_Metrics. ## -# Hinting # Level of glyph outline adjustment. ## -# Join # Corner geometry on stroked shapes. ## -# Style # Stroke, fill, or both. ## -# TextEncoding # Character or glyph encoded size. ## +# Align # glyph locations relative to text position ## +# Cap # start and end geometry on stroked shapes ## +# Flags # values described by bits and masks ## +# FontMetrics::FontMetricsFlags # valid Font_Metrics ## +# Hinting # level of glyph outline adjustment ## +# Join # corner geometry on stroked shapes ## +# Style # stroke, fill, or both ## +# TextEncoding # character or glyph encoded size ## #Table ## #Subtopic ## -#Subtopic Structs +#Subtopic Classes_and_Structs #Table #Legend -# struct # description ## +# name # description ## #Legend ## -# FontMetrics # Typeface values. ## +# FontMetrics # typeface values ## #Table ## #Subtopic ## #Subtopic Constructors #Table #Legend -# # description ## +# name # description ## #Legend ## -# SkPaint() # Constructs with default values. ## -# SkPaint(const SkPaint& paint) # Makes a shallow copy. ## -# SkPaint(SkPaint&& paint) # Moves paint without copying it. ## -# ~SkPaint() # Decreases Reference_Count of owned objects. ## +# SkPaint() # constructs with default values ## +# SkPaint(SkPaint&& paint) # moves paint without copying it ## +# SkPaint(const SkPaint& paint) # makes a shallow copy ## +# ~SkPaint() # decreases Reference_Count of owned objects ## #Table ## #Subtopic ## #Subtopic Operators #Table #Legend -# operator # description ## +# name # description ## #Legend ## -# operator=(const SkPaint& paint) # Makes a shallow copy. ## -# operator=(SkPaint&& paint) # Moves paint without copying it. ## -# operator==(const SkPaint& a, const SkPaint& b) # Compares paints for equality. ## -# operator!=(const SkPaint& a, const SkPaint& b) # Compares paints for inequality. ## +# operator!=(const SkPaint& a, const SkPaint& b) # compares paints for inequality ## +# operator=(SkPaint&& paint) # moves paint without copying it ## +# operator=(const SkPaint& paint) # makes a shallow copy ## +# operator==(const SkPaint& a, const SkPaint& b) # compares paints for equality ## #Table ## #Subtopic ## #Subtopic Member_Functions #Table #Legend -# function # description ## +# name # description ## #Legend ## -# breakText # Returns text that fits in a width. ## -# canComputeFastBounds # Returns true if settings allow for fast bounds computation. ## -# computeFastBounds # Returns fill bounds for quick reject tests. ## -# computeFastStrokeBounds # Returns stroke bounds for quick reject tests. ## -# containsText # Returns if all text corresponds to Glyphs. ## -# countText # Returns number of Glyphs in text. ## -# doComputeFastBounds # Returns bounds for quick reject tests. ## -# flatten() # Serializes into a buffer. ## -# getAlpha # Returns Color_Alpha, color opacity. ## -# getBlendMode # Returns Blend_Mode, how colors combine with Device. ## -# getColor # Returns Color_Alpha and Color_RGB, one drawing color. ## -# getColorFilter # Returns Color_Filter, how colors are altered. ## -# getDrawLooper # Returns Draw_Looper, multiple layers. ## -# getFillPath # Returns fill path equivalent to stroke. ## -# getFilterQuality # Returns Filter_Quality, image filtering level. ## -# getFlags # Returns Flags stored in a bit field. ## -# getFontBounds # Returns union all glyph bounds. ## -# getFontMetrics # Returns Typeface metrics scaled by text size. ## -# getFontSpacing # Returns recommended spacing between lines. ## -# getHash # Returns a shallow hash for equality checks. ## -# getHinting # Returns Hinting, glyph outline adjustment level. ## -# getImageFilter # Returns Image_Filter, alter pixels; blur. ## -# getMaskFilter # Returns Mask_Filter, alterations to Mask_Alpha. ## -# getPathEffect # Returns Path_Effect, modifications to path geometry; dashing. ## -# getPosTextPath # Returns Path equivalent to positioned text. ## -# getPosTextIntercepts # Returns where lines intersect positioned text; underlines. ## -# getPosTextHIntercepts # Returns where lines intersect horizontally positioned text; underlines. ## -# getShader # Returns Shader, multiple drawing colors; gradients. ## -# getStrokeCap # Returns Cap, the area drawn at path ends. ## -# getStrokeJoin # Returns Join, geometry on path corners. ## -# getStrokeMiter # Returns Miter_Limit, angles with sharp corners. ## -# getStrokeWidth # Returns thickness of the stroke. ## -# getStyle # Returns Style: stroke, fill, or both. ## -# getTextAlign # Returns Align: left, center, or right. ## -# getTextBlobIntercepts # Returns where lines intersect Text_Blob; underlines. ## -# getTextEncoding # Returns character or glyph encoded size. b ## -# getTextIntercepts # Returns where lines intersect text; underlines. ## -# getTextPath # Returns Path equivalent to text. ## -# getTextScaleX # Returns the text horizontal scale; condensed text. ## -# getTextSkewX # Returns the text horizontal skew; oblique text. ## -# getTextSize # Returns text size in points. ## -# getTextWidths # Returns advance and bounds for each glyph in text. ## -# getTypeface # Returns Typeface, font description. ## -# glyphsToUnichars # Converts Glyphs into text. ## -# isAntiAlias # Returns true if Anti-alias is set. ## -# isAutohinted # Returns true if Glyphs are always hinted. ## -# isDevKernText # Returns true if Full_Hinting_Spacing is set. ## -# isDither # Returns true if Dither is set. ## -# isEmbeddedBitmapText # Returns true if Font_Embedded_Bitmaps is set. ## -# isFakeBoldText # Returns true if Fake_Bold is set. ## -# isLCDRenderText # Returns true if LCD_Text is set. ## -# isSrcOver # Returns true if Blend_Mode is SkBlendMode::kSrcOver. ## -# isSubpixelText # Returns true if Subpixel_Text is set. ## -# isVerticalText # Returns true if Vertical_Text is set. ## -# measureText # Returns advance width and bounds of text. ## -# nothingToDraw # Returns true if Paint prevents all drawing. ## -# refColorFilter # References Color_Filter, how colors are altered. ## -# refDrawLooper # References Draw_Looper, multiple layers. ## -# refImageFilter # References Image_Filter, alter pixels; blur. ## -# refMaskFilter # References Mask_Filter, alterations to Mask_Alpha. ## -# refPathEffect # References Path_Effect, modifications to path geometry; dashing. ## -# refShader # References Shader, multiple drawing colors; gradients. ## -# refTypeface # References Typeface, font description. ## -# reset() # Sets to default values. ## -# setAlpha # Sets Color_Alpha, color opacity. ## -# setAntiAlias # Sets or clears Anti-alias. ## -# setARGB # Sets color by component. ## -# setAutohinted # Sets Glyphs to always be hinted. ## -# setBlendMode # Sets Blend_Mode, how colors combine with destination. ## -# setColor # Sets Color_Alpha and Color_RGB, one drawing color. ## -# setColorFilter # Sets Color_Filter, alters color. ## -# setDevKernText # Sets or clears Full_Hinting_Spacing. ## -# setDither # Sets or clears Dither. ## -# setDrawLooper # Sets Draw_Looper, multiple layers. ## -# setEmbeddedBitmapText # Sets or clears Font_Embedded_Bitmaps. ## -# setFakeBoldText # Sets or clears Fake_Bold. ## -# setFilterQuality # Sets Filter_Quality, the image filtering level. ## -# setFlags # Sets multiple Flags in a bit field. ## -# setHinting # Sets Hinting, glyph outline adjustment level. ## -# setLCDRenderText # Sets or clears LCD_Text. ## -# setMaskFilter # Sets Mask_Filter, alterations to Mask_Alpha. ## -# setPathEffect # Sets Path_Effect, modifications to path geometry; dashing. ## -# setImageFilter # Sets Image_Filter, alter pixels; blur. ## -# setShader # Sets Shader, multiple drawing colors; gradients. ## -# setStrokeCap # Sets Cap, the area drawn at path ends. ## -# setStrokeJoin # Sets Join, geometry on path corners. ## -# setStrokeMiter # Sets Miter_Limit, angles with sharp corners. ## -# setStrokeWidth # Sets thickness of the stroke. ## -# setStyle # Sets Style: stroke, fill, or both. ## -# setSubpixelText # Sets or clears Subpixel_Text. ## -# setTextAlign # Sets Align: left, center, or right. ## -# setTextEncoding # Sets character or glyph encoded size. ## -# setTextScaleX # Sets the text horizontal scale; condensed text. ## -# setTextSkewX # Sets the text horizontal skew; oblique text. ## -# setTextSize # Sets text size in points. ## -# setTypeface # Sets Typeface, font description. ## -# setVerticalText # Sets or clears Vertical_Text. ## -# textToGlyphs # Converts text into glyph indices. ## -# toString # Converts Paint to machine readable form. ## -# unflatten() # Populates from a serialized stream. ## +# breakText # returns text that fits in a width ## +# canComputeFastBounds # returns true if settings allow for fast bounds computation ## +# computeFastBounds # returns fill bounds for quick reject tests ## +# computeFastStrokeBounds # returns stroke bounds for quick reject tests ## +# containsText # returns if all text corresponds to Glyphs ## +# countText # returns number of Glyphs in text ## +# doComputeFastBounds # returns bounds for quick reject tests ## +# flatten() # serializes into a buffer ## +# getAlpha # returns Color_Alpha, color opacity ## +# getBlendMode # returns Blend_Mode, how colors combine with Device ## +# getColor # returns Color_Alpha and Color_RGB, one drawing color ## +# getColorFilter # returns Color_Filter, how colors are altered ## +# getDrawLooper # returns Draw_Looper, multiple layers ## +# getFillPath # returns fill path equivalent to stroke ## +# getFilterQuality # returns Filter_Quality, image filtering level ## +# getFlags # returns Flags stored in a bit field ## +# getFontBounds # returns union all glyph bounds ## +# getFontMetrics # returns Typeface metrics scaled by text size ## +# getFontSpacing # returns recommended spacing between lines ## +# getHash # returns a shallow hash for equality checks ## +# getHinting # returns Hinting, glyph outline adjustment level ## +# getImageFilter # returns Image_Filter, alter pixels; blur ## +# getMaskFilter # returns Mask_Filter, alterations to Mask_Alpha ## +# getPathEffect # returns Path_Effect, modifications to path geometry; dashing ## +# getPosTextHIntercepts # returns where lines intersect horizontally positioned text; underlines ## +# getPosTextIntercepts # returns where lines intersect positioned text; underlines ## +# getPosTextPath # returns Path equivalent to positioned text ## +# getShader # returns Shader, multiple drawing colors; gradients ## +# getStrokeCap # returns Cap, the area drawn at path ends ## +# getStrokeJoin # returns Join, geometry on path corners ## +# getStrokeMiter # returns Miter_Limit, angles with sharp corners ## +# getStrokeWidth # returns thickness of the stroke ## +# getStyle # returns Style: stroke, fill, or both ## +# getTextAlign # returns Align: left, center, or right ## +# getTextBlobIntercepts # returns where lines intersect Text_Blob; underlines ## +# getTextEncoding # returns character or glyph encoded size ## +# getTextIntercepts # returns where lines intersect text; underlines ## +# getTextPath # returns Path equivalent to text ## +# getTextScaleX # returns the text horizontal scale; condensed text ## +# getTextSize # returns text size in points ## +# getTextSkewX # returns the text horizontal skew; oblique text ## +# getTextWidths # returns advance and bounds for each glyph in text ## +# getTypeface # returns Typeface, font description ## +# glyphsToUnichars # converts Glyphs into text ## +# isAntiAlias # returns true if Anti-alias is set ## +# isAutohinted # returns true if Glyphs are always hinted ## +# isDevKernText # returns true if Full_Hinting_Spacing is set ## +# isDither # returns true if Dither is set ## +# isEmbeddedBitmapText # returns true if Font_Embedded_Bitmaps is set ## +# isFakeBoldText # returns true if Fake_Bold is set ## +# isLCDRenderText # returns true if LCD_Text is set ## +# isSrcOver # returns true if Blend_Mode is SkBlendMode::kSrcOver ## +# isSubpixelText # returns true if Subpixel_Text is set ## +# isVerticalText # returns true if Vertical_Text is set ## +# measureText # returns advance width and bounds of text ## +# nothingToDraw # returns true if Paint prevents all drawing ## +# refColorFilter # references Color_Filter, how colors are altered ## +# refDrawLooper # references Draw_Looper, multiple layers ## +# refImageFilter # references Image_Filter, alter pixels; blur ## +# refMaskFilter # references Mask_Filter, alterations to Mask_Alpha ## +# refPathEffect # references Path_Effect, modifications to path geometry; dashing ## +# refShader # references Shader, multiple drawing colors; gradients ## +# refTypeface # references Typeface, font description ## +# reset() # sets to default values ## +# setARGB # sets color by component ## +# setAlpha # sets Color_Alpha, color opacity ## +# setAntiAlias # sets or clears Anti-alias ## +# setAutohinted # sets Glyphs to always be hinted ## +# setBlendMode # sets Blend_Mode, how colors combine with destination ## +# setColor # sets Color_Alpha and Color_RGB, one drawing color ## +# setColorFilter # sets Color_Filter, alters color ## +# setDevKernText # sets or clears Full_Hinting_Spacing ## +# setDither # sets or clears Dither ## +# setDrawLooper # sets Draw_Looper, multiple layers ## +# setEmbeddedBitmapText # sets or clears Font_Embedded_Bitmaps ## +# setFakeBoldText # sets or clears Fake_Bold ## +# setFilterQuality # sets Filter_Quality, the image filtering level ## +# setFlags # sets multiple Flags in a bit field ## +# setHinting # sets Hinting, glyph outline adjustment level ## +# setImageFilter # sets Image_Filter, alter pixels; blur ## +# setLCDRenderText # sets or clears LCD_Text ## +# setMaskFilter # sets Mask_Filter, alterations to Mask_Alpha ## +# setPathEffect # sets Path_Effect, modifications to path geometry; dashing ## +# setShader # sets Shader, multiple drawing colors; gradients ## +# setStrokeCap # sets Cap, the area drawn at path ends ## +# setStrokeJoin # sets Join, geometry on path corners ## +# setStrokeMiter # sets Miter_Limit, angles with sharp corners ## +# setStrokeWidth # sets thickness of the stroke ## +# setStyle # sets Style: stroke, fill, or both ## +# setSubpixelText # sets or clears Subpixel_Text ## +# setTextAlign # sets Align: left, center, or right ## +# setTextEncoding # sets character or glyph encoded size ## +# setTextScaleX # sets the text horizontal scale; condensed text ## +# setTextSize # sets text size in points ## +# setTextSkewX # sets the text horizontal skew; oblique text ## +# setTypeface # sets Typeface, font description ## +# setVerticalText # sets or clears Vertical_Text ## +# textToGlyphs # converts text into glyph indices ## +# toString # converts Paint to machine readable form ## +# unflatten() # populates from a serialized stream ## #Table ## #Subtopic ## @@ -582,7 +594,7 @@ by the client. #Param buffer serialized data describing Paint content ## -#Return false if the buffer contained invalid data for initializing the paint. ## +#Return false if the buffer contains invalid data ## # why is unflatten() public? #Bug 6172 ## diff --git a/docs/SkPath_Reference.bmh b/docs/SkPath_Reference.bmh index 7f77b8b914..17232fd528 100644 --- a/docs/SkPath_Reference.bmh +++ b/docs/SkPath_Reference.bmh @@ -75,25 +75,6 @@ Path contents are never shared. Copying Path by value effectively creates a new Path independent of the original. Internally, the copy does not duplicate its contents until it is edited, to reduce memory use and improve performance. -#Subtopic Subtopics -#ToDo not all methods are in topics ## -#ToDo subtopics are not in topics ## -#Table -#Legend -# topics # description ## -#Legend ## -#Table ## -# Contour # A loop of lines and curves. ## -# Convexity # Whether Path contains simple loop. ## -# Last_Point # Final Point in Contour. ## -# Point_Array # All Points in Path. ## -# Verb # How Points and Contours are defined. ## -# Verb_Array # All Verbs in Path. ## -# Verb # How Points and Contours are defined. ## -# Conic_Weight # Strength of control Point in Conic. ## -#Subtopic ## - - #Subtopic Contour #Alias Contours Contour contains one or more Verbs, and as many Points as @@ -203,134 +184,171 @@ SkPath::updateBoundsCache to make Path thread safe. #Topic Overview +#Subtopic Subtopics +#Table +#Legend +# name # description ## +#Legend ## +# Classes_and_Structs # embedded struct and class members ## +# Constants # enum and enum class, const values ## +# Constructors # functions that construct SkPath ## +# Member_Functions # static functions and member methods ## +# Operators # operator overloading methods ## +# Related_Functions # similar methods grouped together ## +#Table ## +#Subtopic ## + + +#Subtopic Related_Functions +#Table +#Legend +# name # description ## +#Legend ## +# Conic # conic section defined by three points and a weight ## +# Conic_Weight # strength of control Point in Conic ## +# Contour # loop of lines and curves ## +# Convexity # if Path is concave or convex ## +# Cubic_Bezier # third order curve defined by four points ## +# Direction # Path contour orientation ## +# Fill_Type # Path fill rule, normal and inverted ## +# Last_Point # final Point in Contour ## +# Point_Array # end points and control points for lines and curves ## +# Quadratic_Bezier # parabolic section defined by three points ## +# Verb_Array # line and curve type for points ## +# Verbs # Path line and curve type ## +# Zero_Length_Contour # consideration when contour has no length ## +#Table ## +#Subtopic ## + #Subtopic Constants #Table #Legend -# constants # description ## +# name # description ## #Legend ## -# AddPathMode # Sets addPath options. ## -# ArcSize # Used by arcTo(SkScalar rx, SkScalar ry, SkScalar xAxisRotate, ArcSize largeArc, Direction sweep, SkScalar x, SkScalar y).## -# Convexity # Returns if Path is convex or concave. ## -# Direction # Sets Contour clockwise or counterclockwise. ## -# FillType # Sets winding rule and inverse fill. ## -# SegmentMask # Returns Verb types in Path. ## -# Verb # Controls how Path Points are interpreted. ## +# AddPathMode # sets addPath options ## +# ArcSize # used by arcTo variation ## +# Convexity # returns if Path is convex or concave ## +# Direction # sets Contour clockwise or counterclockwise ## +# FillType # sets winding rule and inverse fill ## +# SegmentMask # returns Verb types in Path ## +# Verb # controls how Path Points are interpreted ## #Table ## #Subtopic ## #Subtopic Classes_and_Structs #Table #Legend -# class or struct # description ## +# name # description ## #Legend ## -# Iter # Iterates through lines and curves, skipping degenerates. ## -# RawIter # Iterates through lines and curves, including degenerates. ## +# Iter # iterates through lines and curves, skipping degenerates ## +# RawIter # iterates through lines and curves, including degenerates ## #Table ## #Subtopic ## #Subtopic Constructors #Table #Legend -# # description ## +# name # description ## #Legend ## -# SkPath() # Constructs with default values. ## -# SkPath(const SkPath& path) # Makes a shallow copy. ## -# ~SkPath() # Decreases Reference_Count of owned objects. ## +# SkPath() # constructs with default values ## +# SkPath(const SkPath& path) # makes a shallow copy ## +# ~SkPath() # decreases Reference_Count of owned objects ## #Table ## #Subtopic ## #Subtopic Operators #Table #Legend -# operator # description ## +# name # description ## #Legend ## -# operator=(const SkPath& path) # Makes a shallow copy. ## -# operator==(const SkPath& a, const SkPath& b) # Compares paths for equality. ## -# operator!=(const SkPath& a, const SkPath& b) # Compares paths for inequality. ## +# operator!=(const SkPath& a, const SkPath& b) # compares paths for inequality ## +# operator=(const SkPath& path) # makes a shallow copy ## +# operator==(const SkPath& a, const SkPath& b) # compares paths for equality ## #Table ## #Subtopic ## #Subtopic Member_Functions #Table #Legend -# function # description ## +# name # description ## #Legend ## -# ConvertConicToQuads # Approximates Conic with Quad array. ## -# ConvertToNonInverseFillType # Returns Fill_Type representing inside geometry. ## -# IsCubicDegenerate # Returns if Cubic is very small. ## -# IsInverseFillType # Returns if Fill_Type represents outside geometry. ## -# IsLineDegenerate # Returns if Line is very small. ## -# IsQuadDegenerate # Returns if Quad is very small. ## -# addArc # Adds one Contour containing Arc. ## -# addCircle # Adds one Contour containing Circle. ## -# addOval # Adds one Contour containing Oval. ## -# addPath # Adds contents of Path. ## -# addPoly # Adds one Contour containing connected lines. ## -# addRRect # Adds one Contour containing Round_Rect. ## -# addRect # Adds one Contour containing Rect. ## -# addRoundRect # Adds one Contour containing Round_Rect with common corner radii. ## -# arcTo # Appends Arc. ## -# close() # Makes last Contour a loop. ## -# computeTightBounds # Returns extent of geometry. ## -# conicTo # Appends Conic. ## -# conservativelyContainsRect # Returns true if Rect may be inside. ## -# contains() # Returns if Point is in fill area. ## -# countPoints # Returns Point_Array length. ## -# countVerbs # Returns Verb_Array length. ## -# cubicTo # Appends Cubic. ## -# dump() # Sends text representation using floats to standard output. ## -# dumpHex # Sends text representation using hexadecimal to standard output. ## -# getBounds # Returns maximum and minimum of Point_Array. ## -# getConvexity # Returns geometry convexity, computing if necessary. ## -# getConvexityOrUnknown # Returns geometry convexity if known. ## -# getFillType # Returns Fill_Type: winding, even-odd, inverse. ## -# getGenerationID # Returns unique ID. ## -# getLastPt # Returns Last_Point. ## -# getPoint # Returns entry from Point_Array. ## -# getPoints # Returns Point_Array. ## -# getSegmentMasks # Returns types in Verb_Array. ## -# getVerbs # Returns Verb_Array. ## -# incReserve # Hint to reserve space for additional data. ## -# interpolate() # Interpolates between Path pair. ## -# isConvex # Returns if geometry is convex. ## -# isEmpty # Returns if verb count is zero. ## -# isFinite # Returns if all Point values are finite. ## -# isInterpolatable # Returns if pair contains equal counts of Verb_Array and Weights. ## -# isInverseFillType # Returns if Fill_Type fills outside geometry. ## -# isLastContourClosed # Returns if final Contour forms a loop. ## -# isLine # Returns if describes Line. ## -# isNestedFillRects # Returns if describes Rect pair, one inside the other. ## -# isOval # Returns if describes Oval. ## -# isRRect # Returns if describes Round_Rect. ## -# isRect # Returns if describes Rect. ## -# isValid # Returns if data is internally consistent. ## -# isVolatile # Returns if Device should not cache. ## -# lineTo # Appends Line. ## -# moveTo # Starts Contour. ## -# offset() # Translates Point_Array. ## -# quadTo # Appends Quad. ## -# rArcTo # Appends Arc relative to Last_Point. ## -# rConicTo # Appends Conic relative to Last_Point. ## -# rCubicTo # Appends Cubic relative to Last_Point. ## -# rLineTo # Appends Line relative to Last_Point. ## -# rMoveTo # Starts Contour relative to Last_Point. ## -# rQuadTo # Appends Quad relative to Last_Point. ## -# readFromMemory # Initializes from buffer. ## -# reset() # Removes Verb_Array, Point_Array, and Weights; frees memory. ## -# reverseAddPath # Adds contents of Path back to front. ## -# rewind() # Removes Verb_Array, Point_Array, and Weights; leaves memory allocated. ## -# serialize() # Copies data to buffer. ## -# setConvexity # Sets if geometry is convex to avoid future computation. ## -# setFillType # Sets Fill_Type: winding, even-odd, inverse. ## -# setIsConvex # Deprecated. ## -# setIsVolatile # Sets if Device should not cache. ## -# setLastPt # Replaces Last_Point. ## -# swap() # Exchanges Path pair. ## -# toggleInverseFillType # Toggles Fill_Type between inside and outside geometry. ## -# transform() # Applies Matrix to Point_Array and Weights. ## -# unique() # Returns if data has single owner. ## -# updateBoundsCache # Refreshes result of getBounds. ## -# writeToMemory # Copies data to buffer. ## +# ConvertConicToQuads # approximates Conic with Quad array ## +# ConvertToNonInverseFillType # returns Fill_Type representing inside geometry ## +# IsCubicDegenerate # returns if Cubic is very small ## +# IsInverseFillType # returns if Fill_Type represents outside geometry ## +# IsLineDegenerate # returns if Line is very small ## +# IsQuadDegenerate # returns if Quad is very small ## +# addArc # adds one Contour containing Arc ## +# addCircle # adds one Contour containing Circle ## +# addOval # adds one Contour containing Oval ## +# addPath # adds contents of Path ## +# addPoly # adds one Contour containing connected lines ## +# addRRect # adds one Contour containing Round_Rect ## +# addRect # adds one Contour containing Rect ## +# addRoundRect # adds one Contour containing Round_Rect with common corner radii ## +# arcTo # appends Arc ## +# close() # makes last Contour a loop ## +# computeTightBounds # returns extent of geometry ## +# conicTo # appends Conic ## +# conservativelyContainsRect # returns true if Rect may be inside ## +# contains() # returns if Point is in fill area ## +# countPoints # returns Point_Array length ## +# countVerbs # returns Verb_Array length ## +# cubicTo # appends Cubic ## +# dump() # sends text representation using floats to standard output ## +# dumpHex # sends text representation using hexadecimal to standard output ## +# getBounds # returns maximum and minimum of Point_Array ## +# getConvexity # returns geometry convexity, computing if necessary ## +# getConvexityOrUnknown # returns geometry convexity if known ## +# getFillType # returns Fill_Type: winding, even-odd, inverse ## +# getGenerationID # returns unique ID ## +# getLastPt # returns Last_Point ## +# getPoint # returns entry from Point_Array ## +# getPoints # returns Point_Array ## +# getSegmentMasks # returns types in Verb_Array ## +# getVerbs # returns Verb_Array ## +# incReserve # reserves space for additional data ## +# interpolate() # interpolates between Path pair ## +# isConvex # returns if geometry is convex ## +# isEmpty # returns if verb count is zero ## +# isFinite # returns if all Point values are finite ## +# isInterpolatable # returns if pair contains equal counts of Verb_Array and Weights ## +# isInverseFillType # returns if Fill_Type fills outside geometry ## +# isLastContourClosed # returns if final Contour forms a loop ## +# isLine # returns if describes Line ## +# isNestedFillRects # returns if describes Rect pair, one inside the other ## +# isOval # returns if describes Oval ## +# isRRect # returns if describes Round_Rect ## +# isRect # returns if describes Rect ## +# isValid # returns if data is internally consistent ## +# isVolatile # returns if Device should not cache ## +# lineTo # appends Line ## +# moveTo # starts Contour ## +# offset() # translates Point_Array ## +# pathRefIsValid # to be deprecated ## +# quadTo # appends Quad ## +# rArcTo # appends Arc relative to Last_Point ## +# rConicTo # appends Conic relative to Last_Point ## +# rCubicTo # appends Cubic relative to Last_Point ## +# rLineTo # appends Line relative to Last_Point ## +# rMoveTo # starts Contour relative to Last_Point ## +# rQuadTo # appends Quad relative to Last_Point ## +# readFromMemory # Initializes from buffer ## +# reset() # removes Verb_Array, Point_Array, and Weights; frees memory ## +# reverseAddPath # adds contents of Path back to front ## +# rewind() # removes Verb_Array, Point_Array, and Weights, keeping memory ## +# serialize() # copies data to buffer ## +# setConvexity # sets if geometry is convex to avoid future computation ## +# setFillType # sets Fill_Type: winding, even-odd, inverse ## +# setIsConvex # deprecated ## +# setIsVolatile # sets if Device should not cache ## +# setLastPt # replaces Last_Point ## +# swap() # exchanges Path pair ## +# toggleInverseFillType # toggles Fill_Type between inside and outside geometry ## +# transform() # applies Matrix to Point_Array and Weights ## +# unique() # returns if data has single owner ## +# updateBoundsCache # refreshes result of getBounds ## +# writeToMemory # copies data to buffer ## #Table ## #Subtopic Path_Member_Functions ## #Topic Overview ## @@ -3050,7 +3068,7 @@ constructions are converted to Conic data when added to Path. #List # <sup>1</sup> arcTo(const SkRect& oval, SkScalar startAngle, SkScalar sweepAngle, bool forceMoveTo) ## # <sup>2</sup> parameter sets force MoveTo ## -# <sup>3</sup> start angle must be multiple of 90 degrees. ## +# <sup>3</sup> start angle must be multiple of 90 degrees ## # <sup>4</sup> arcTo(SkScalar x1, SkScalar y1, SkScalar x2, SkScalar y2, SkScalar radius) ## # <sup>5</sup> arcTo(SkScalar rx, SkScalar ry, SkScalar xAxisRotate, ArcSize largeArc, Direction sweep, SkScalar x, SkScalar y) ## diff --git a/docs/SkPixmap_Reference.bmh b/docs/SkPixmap_Reference.bmh index c2b98663f6..74881545d0 100644 --- a/docs/SkPixmap_Reference.bmh +++ b/docs/SkPixmap_Reference.bmh @@ -19,14 +19,25 @@ to manage pixel memory; Pixel_Ref is safe across threads. #Subtopic Subtopics #Table #Legend -# topics # description ## +# name # description ## #Legend ## -# Image_Info_Access # Returns all or part of Image_Info. ## -# Initialization # Sets fields for use. ## -# Reader # Examine pixel value. ## -# Writer # Copy to pixel values. ## -# Readable_Address # Returns read only pixels. ## -# Writable_Address # Returns writable pixels. ## +# Constructors # list of functions that construct SkPath ## +# Member_Functions # list of static functions and member methods ## +# Related_Functions # similar methods grouped together ## +#Table ## +## + +#Subtopic Related_Functions +#Table +#Legend +# name # description ## +#Legend ## +# Image_Info_Access # returns all or part of Image_Info ## +# Initialization # sets fields for use ## +# Readable_Address # returns read only pixels ## +# Reader # examine pixel value ## +# Writable_Address # returns writable pixels ## +# Writer # copy to pixel values ## #Table ## #Subtopic ## @@ -35,48 +46,48 @@ to manage pixel memory; Pixel_Ref is safe across threads. #Legend # # description ## #Legend ## -# SkPixmap() # Constructs with default values. ## -# SkPixmap(const SkImageInfo& info, const void* addr, size_t rowBytes) # Constructs from Image_Info, pixels. ## +# SkPixmap() # constructs with default values ## +# SkPixmap(const SkImageInfo& info, const void* addr, size_t rowBytes) # constructs from Image_Info, pixels ## #Table ## #Subtopic ## #Subtopic Member_Functions #Table #Legend -# function # description ## +# name # description ## #Legend ## -# addr() # Returns readable pixel address as void pointer. ## -# addr16 # Returns readable pixel address as 16-bit pointer. ## -# addr32 # Returns readable pixel address as 32-bit pointer. ## -# addr64 # Returns readable pixel address as 64-bit pointer. ## -# addr8 # Returns readable pixel address as 8-bit pointer. ## -# addrF16 # Returns readable pixel component address as 16-bit pointer. ## -# alphaType # Returns Image_Info Alpha_Type. ## -# bounds() # Returns width and height as Rectangle. ## -# colorSpace # Returns Image_Info Color_Space. ## -# colorType # Returns Image_Info Color_Type. ## -# computeByteSize # Returns size required for pixels. ## -# computeIsOpaque # Returns true if all pixels are opaque. ## -# erase() # Writes Color to pixels. ## -# extractSubset # Sets pointer to portion of original. ## -# getColor # Returns one pixel as Unpremultiplied Color. ## -# height() # Returns pixel row count. ## -# info() # Returns Image_Info. ## -# isOpaque # Returns true if Image_Info describes opaque pixels. ## -# readPixels # Copies and converts pixels. ## -# reset() # Reuses existing Pixmap with replacement values. ## -# rowBytes # Returns interval between rows in bytes. ## -# rowBytesAsPixels # Returns interval between rows in pixels. ## -# scalePixels # Scales and converts pixels. ## -# setColorSpace # Sets Image_Info Color_Space. ## -# shiftPerPixel # Returns bit shift from pixels to bytes. ## -# width() # Returns pixel column count. ## -# writable_addr # Returns writable pixel address as void pointer. ## -# writable_addr16 # Returns writable pixel address as 16-bit pointer. ## -# writable_addr32 # Returns writable pixel address as 32-bit pointer. ## -# writable_addr64 # Returns writable pixel address as 64-bit pointer. ## -# writable_addr8 # Returns writable pixel address as 8-bit pointer. ## -# writable_addrF16 # Returns writable pixel component address as 16-bit pointer. ## +# addr() # returns readable pixel address as void pointer ## +# addr16 # returns readable pixel address as 16-bit pointer ## +# addr32 # returns readable pixel address as 32-bit pointer ## +# addr64 # returns readable pixel address as 64-bit pointer ## +# addr8 # returns readable pixel address as 8-bit pointer ## +# addrF16 # returns readable pixel component address as 16-bit pointer ## +# alphaType # returns Image_Info Alpha_Type ## +# bounds() # returns width and height as Rectangle ## +# colorSpace # returns Image_Info Color_Space ## +# colorType # returns Image_Info Color_Type ## +# computeByteSize # returns size required for pixels ## +# computeIsOpaque # returns true if all pixels are opaque ## +# erase() # writes Color to pixels ## +# extractSubset # sets pointer to portion of original ## +# getColor # returns one pixel as Unpremultiplied Color ## +# height() # returns pixel row count ## +# info() # returns Image_Info ## +# isOpaque # returns true if Image_Info describes opaque pixels ## +# readPixels # copies and converts pixels ## +# reset() # reuses existing Pixmap with replacement values ## +# rowBytes # returns interval between rows in bytes ## +# rowBytesAsPixels # returns interval between rows in pixels ## +# scalePixels # scales and converts pixels ## +# setColorSpace # sets Image_Info Color_Space ## +# shiftPerPixel # returns bit shift from pixels to bytes ## +# width() # returns pixel column count ## +# writable_addr # returns writable pixel address as void pointer ## +# writable_addr16 # returns writable pixel address as 16-bit pointer ## +# writable_addr32 # returns writable pixel address as 32-bit pointer ## +# writable_addr64 # returns writable pixel address as 64-bit pointer ## +# writable_addr8 # returns writable pixel address as 8-bit pointer ## +# writable_addrF16 # returns writable pixel component address as 16-bit pointer ## #Table ## #Subtopic ## diff --git a/docs/SkPoint_Reference.bmh b/docs/SkPoint_Reference.bmh index 6eeb1a5703..72c73e49a4 100644 --- a/docs/SkPoint_Reference.bmh +++ b/docs/SkPoint_Reference.bmh @@ -15,15 +15,24 @@ #Table ## ## +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# Make # Constructs from SkScalar inputs. ## +#Table ## +#Subtopic ## + #Subtopic Operators #Table #Legend -# description # function ## +# name # description ## #Legend ## # SkPoint operator*(SkScalar scale)_const # Returns Point multiplied by scale. ## +# SkPoint operator+(const SkPoint& a, const SkVector& b) # Returns Point offset by Vector. ## # SkPoint operator-()_const # Reverses sign of Point. ## # SkPoint& operator*=(SkScalar scale) # Multiplies Point by scale factor. ## -# SkPoint operator+(const SkPoint& a, const SkVector& b) # Returns Point offset by Vector. ## # SkVector operator-(const SkPoint& a, const SkPoint& b) # Returns Vector between Points. ## # bool operator!=(const SkPoint& a, const SkPoint& b) # Returns true if Point are unequal. ## # bool operator==(const SkPoint& a, const SkPoint& b) # Returns true if Point are equal. ## @@ -35,7 +44,7 @@ #Subtopic Member_Functions #Table #Legend -# description # function ## +# name # description ## #Legend ## # CrossProduct # Returns cross product. ## # Distance # Returns straight-line distance between points. ## diff --git a/docs/SkRect_Reference.bmh b/docs/SkRect_Reference.bmh index 7aeb90eb52..0df650b668 100644 --- a/docs/SkRect_Reference.bmh +++ b/docs/SkRect_Reference.bmh @@ -22,16 +22,40 @@ integer input cannot convert to SkScalar without loss of precision. #Legend # topics # description ## #Legend ## +# Constructors # functions that construct SkPath ## +# Member_Functions # static functions and member methods ## +# Operators # operator overloading methods ## #Table ## ## +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# Make # constructs from ISize returning (0, 0, width, height) ## +# MakeEmpty # constructs from bounds of (0, 0, 0, 0) ## +# MakeFromIRect # deprecated ## +# MakeIWH # constructs from int input returning (0, 0, width, height) ## +# MakeLTRB # constructs from SkScalar left, top, right, bottom ## +# MakeLargest # deprecated ## +# MakeSize # constructs from Size returning (0, 0, width, height) ## +# MakeWH # constructs from SkScalar input returning (0, 0, width, height) ## +# MakeXYWH # constructs from SkScalar input returning (x, y, width, height) ## +# makeInset # constructs from sides moved symmetrically about the center ## +# makeOffset # constructs from translated sides ## +# makeOutset # constructs from sides moved symmetrically about the center ## +# makeSorted # constructs, ordering sides from smaller to larger ## +#Table ## +#Subtopic ## + #Subtopic Operators #Table #Legend # description # function ## #Legend ## -# bool operator!=(const SkRect& a, const SkRect& b) # Returns true if members are unequal. ## -# bool operator==(const SkRect& a, const SkRect& b) # Returns true if members are equal. ## +# bool operator!=(const SkRect& a, const SkRect& b) # returns true if members are unequal ## +# bool operator==(const SkRect& a, const SkRect& b) # returns true if members are equal ## #Table ## #Subtopic ## @@ -40,59 +64,60 @@ integer input cannot convert to SkScalar without loss of precision. #Legend # description # function ## #Legend ## -# Intersects # Returns true if areas overlap. ## -# Make # Constructs from ISize returning (0, 0, width, height). ## -# MakeEmpty # Constructs from bounds of (0, 0, 0, 0). ## -# MakeFromIRect # Deprecated. ## -# MakeIWH # Constructs from int input returning (0, 0, width, height). ## -# MakeLTRB # Constructs from SkScalar left, top, right, bottom. ## -# MakeSize # Constructs from Size returning (0, 0, width, height). ## -# MakeWH # Constructs from SkScalar input returning (0, 0, width, height). ## -# MakeXYWH # Constructs from SkScalar input returning (x, y, width, height). ## -# asScalars # Returns pointer to members as array. ## -# bottom() # Returns larger bounds in y, if sorted. ## -# centerX # Returns midpoint in x. ## -# centerY # Returns midpoint in y. ## -# contains() # Returns true if points are equal or inside. ## -# dump() # Sends text representation using floats to standard output. ## -# dumpHex # Sends text representation using hexadecimal to standard output. ## -# height # Returns span in y. ## -# inset() # Moves the sides symmetrically about the center. ## -# intersect() # Sets to shared area; returns true if not empty. ## -# intersects() # Returns true if areas overlap. ## -# isEmpty # Returns true if width or height are zero or negative. ## -# isFinite # Returns true if no member is infinite or NaN. ## -# isSorted # Returns true if width or height are zero or positive. ## -# iset() # Sets to int input (left, top, right, bottom). ## -# isetWH # Sets to int input (0, 0, width, height). ## -# join() # Sets to union of bounds. ## -# joinNonEmptyArg # Sets to union of bounds, asserting that argument is not empty. ## -# joinPossiblyEmptyRect # Sets to union of bounds. Skips empty check for both. ## -# left() # Returns smaller bounds in x, if sorted. ## -# makeInset # Constructs from sides moved symmetrically about the center. ## -# makeOffset # Constructs from translated sides. ## -# makeOutset # Constructs from sides moved symmetrically about the center. ## -# makeSorted # Constructs, ordering sides from smaller to larger. ## -# offset() # Translates sides without changing width and height. ## -# offsetTo # Translates to (x, y) without changing width and height. ## -# outset() # Moves the sides symmetrically about the center. ## -# right() # Returns larger bounds in x, if sorted. ## -# round() # Sets members to nearest integer value. ## -# roundIn # Sets members to nearest integer value towards opposite. ## -# roundOut # Sets members to nearest integer value away from opposite. ## -# set() # Sets to SkScalar input (left, top, right, bottom) and others. ## -# setBounds # Sets to upper and lower limits of Point array. ## -# setBoundsCheck # Sets to upper and lower limits of Point array. ## -# setEmpty # Sets to (0, 0, 0, 0). ## -# setLTRB # Sets to SkScalar input (left, top, right, bottom). ## -# setWH # Sets to SkScalar input (0, 0, width, height). ## -# setXYWH # Sets to SkScalar input (x, y, width, height). ## -# sort() # Orders sides from smaller to larger. ## -# toQuad # Returns four corners as Point. ## -# top() # Returns smaller bounds in y, if sorted. ## -# width() # Returns span in x. ## -# x() # Returns bounds left. ## -# y() # Returns bounds top. ## +# Intersects # returns true if areas overlap ## +# Make # constructs from ISize returning (0, 0, width, height) ## +# MakeEmpty # constructs from bounds of (0, 0, 0, 0) ## +# MakeFromIRect # deprecated ## +# MakeIWH # constructs from int input returning (0, 0, width, height) ## +# MakeLTRB # constructs from SkScalar left, top, right, bottom ## +# MakeLargest # deprecated ## +# MakeSize # constructs from Size returning (0, 0, width, height) ## +# MakeWH # constructs from SkScalar input returning (0, 0, width, height) ## +# MakeXYWH # constructs from SkScalar input returning (x, y, width, height) ## +# asScalars # returns pointer to members as array ## +# bottom() # returns larger bounds in y, if sorted ## +# centerX # returns midpoint in x ## +# centerY # returns midpoint in y ## +# contains() # returns true if points are equal or inside ## +# dump() # sends text representation to standard output using floats ## +# dumpHex # sends text representation to standard output using hexadecimal ## +# height() # returns span in y ## +# inset() # moves the sides symmetrically about the center ## +# intersect() # sets to shared area; returns true if not empty ## +# intersects() # returns true if areas overlap ## +# isEmpty # returns true if width or height are zero or negative ## +# isFinite # returns true if no member is infinite or NaN ## +# isSorted # returns true if width or height are zero or positive ## +# iset() # sets to int input (left, top, right, bottom) ## +# isetWH # sets to int input (0, 0, width, height) ## +# join() # sets to union of bounds ## +# joinNonEmptyArg # sets to union of bounds, asserting that argument is not empty ## +# joinPossiblyEmptyRect # sets to union of bounds. Skips empty check for both ## +# left() # returns smaller bounds in x, if sorted ## +# makeInset # constructs from sides moved symmetrically about the center ## +# makeOffset # constructs from translated sides ## +# makeOutset # constructs from sides moved symmetrically about the center ## +# makeSorted # constructs, ordering sides from smaller to larger ## +# offset() # translates sides without changing width and height ## +# offsetTo # translates to (x, y) without changing width and height ## +# outset() # moves the sides symmetrically about the center ## +# right() # returns larger bounds in x, if sorted ## +# round() # sets members to nearest integer value ## +# roundIn # sets members to nearest integer value towards opposite ## +# roundOut # sets members to nearest integer value away from opposite ## +# set() # sets to SkScalar input (left, top, right, bottom) and others ## +# setBounds # sets to upper and lower limits of Point array ## +# setBoundsCheck # sets to upper and lower limits of Point array ## +# setEmpty # sets to (0, 0, 0, 0) ## +# setLTRB # sets to SkScalar input (left, top, right, bottom) ## +# setWH # sets to SkScalar input (0, 0, width, height) ## +# setXYWH # sets to SkScalar input (x, y, width, height) ## +# sort() # orders sides from smaller to larger ## +# toQuad # returns four corners as Point ## +# top() # returns smaller bounds in y, if sorted ## +# width() # returns span in x ## +# x() # returns bounds left ## +# y() # returns bounds top ## #Table ## #Subtopic ## diff --git a/docs/SkSurface_Reference.bmh b/docs/SkSurface_Reference.bmh index 3ab33c7d22..164570d422 100644 --- a/docs/SkSurface_Reference.bmh +++ b/docs/SkSurface_Reference.bmh @@ -18,41 +18,62 @@ of the requested dimensions are zero, then nullptr will be returned. #Legend # topics # description ## #Legend ## +# Constructors # functions that construct SkIPoint16 ## +# Member_Functions # static functions and member methods ## #Table ## ## +#Subtopic Constructors +#Table +#Legend +# name # description ## +#Legend ## +# MakeFromBackendRenderTarget # creates Surface from GPU memory buffer ## +# MakeFromBackendTexture # creates Surface from GPU-backed texture ## +# MakeFromBackendTextureAsRenderTarget # creates Surface from GPU-backed texture ## +# MakeNull # creates Surface without backing pixels ## +# MakeRaster # creates Surface from SkImageInfo ## +# MakeRasterDirect # creates Surface from SkImageInfo and Pixel_Storage ## +# MakeRasterDirectReleaseProc # creates Surface from SkImageInfo and Pixel_Storage ## +# MakeRasterN32Premul # creates Surface from width, height matching output ## +# MakeRenderTarget # creates Surface pointing to new GPU memory buffer ## +# SkCanvas::makeSurface # creates Surface matching Canvas Image_Info, Surface_Properties ## +# makeSurface # creates a compatible Surface ## +#Table ## +#Subtopic ## + #Subtopic Member_Functions #Table #Legend # description # function ## #Legend ## -# MakeFromBackendRenderTarget # Creates Surface from GPU memory buffer. ## -# MakeFromBackendTexture # Creates Surface from GPU-backed texture. ## -# MakeFromBackendTextureAsRenderTarget # Creates Surface from GPU-backed texture. ## -# MakeNull # Creates Surface without backing pixels. ## -# MakeRaster # Creates Surface from SkImageInfo. ## -# MakeRasterDirect # Creates Surface from SkImageInfo and Pixel_Storage. ## -# MakeRasterDirectReleaseProc # Creates Surface from SkImageInfo and Pixel_Storage. ## -# MakeRasterN32Premul # Creates Surface from width, height matching output. ## -# MakeRenderTarget # Creates Surface pointing to new GPU memory buffer. ## -# characterize() # Set up Surface_Characterization for threaded pre-processing. ## -# draw() # Draws Surface contents to canvas. ## -# flush() # Resolve pending I/O. ## -# flushAndSignalSemaphores # Resolve pending I/O, and signal. ## -# generationID # Returns unique ID. ## -# getCanvas # Returns Canvas that draws into Surface. ## -# getRenderTargetHandle # Returns the GPU reference to render target. ## -# getTextureHandle # Returns the GPU reference to texture. ## -# height() # Returns pixel row count. ## -# makeImageSnapshot # Returns Image capturing Surface contents. ## -# makeSurface # Returns a compatible Surface. ## -# notifyContentWillChange # Notifies that contents will be changed outside of Skia. ## -# peekPixels # Copies Surface parameters to Pixmap. ## -# prepareForExternalIO # To be deprecated. ## -# props() # Returns Surface_Properties. ## -# readPixels # Copies Rect of pixels. ## -# wait() # Pause commands until signaled. ## -# width() # Returns pixel column count. ## +# MakeFromBackendRenderTarget # creates Surface from GPU memory buffer ## +# MakeFromBackendTexture # creates Surface from GPU-backed texture ## +# MakeFromBackendTextureAsRenderTarget # creates Surface from GPU-backed texture ## +# MakeNull # creates Surface without backing pixels ## +# MakeRaster # creates Surface from SkImageInfo ## +# MakeRasterDirect # creates Surface from SkImageInfo and Pixel_Storage ## +# MakeRasterDirectReleaseProc # creates Surface from SkImageInfo and Pixel_Storage ## +# MakeRasterN32Premul # creates Surface from width, height matching output ## +# MakeRenderTarget # creates Surface pointing to new GPU memory buffer ## +# characterize() # sets Surface_Characterization for threaded pre-processing ## +# draw() # draws Surface contents to canvas ## +# flush() # resolve pending I/O ## +# flushAndSignalSemaphores # resolve pending I/O, and signal ## +# generationID # returns unique ID ## +# getCanvas # returns Canvas that draws into Surface ## +# getRenderTargetHandle # returns the GPU reference to render target ## +# getTextureHandle # returns the GPU reference to texture ## +# height() # returns pixel row count ## +# makeImageSnapshot # creates Image capturing Surface contents ## +# makeSurface # creates a compatible Surface ## +# notifyContentWillChange # notifies that contents will be changed outside of Skia ## +# peekPixels # copies Surface parameters to Pixmap ## +# prepareForExternalIO # to be deprecated ## +# props() # returns Surface_Properties ## +# readPixels # copies Rect of pixels ## +# wait() # rause commands until signaled ## +# width() # returns pixel column count ## #Table ## #Subtopic ## diff --git a/docs/status.json b/docs/status.json index 43be98cdf3..3aeea76992 100644 --- a/docs/status.json +++ b/docs/status.json @@ -14,6 +14,7 @@ ]
},
"docs": [
+ "SkAutoCanvasRestore_Reference.bmh",
"SkCanvas_Reference.bmh",
"SkIPoint16_Reference.bmh",
"SkPaint_Reference.bmh",
diff --git a/site/user/api/SkAutoCanvasRestore_Reference.md b/site/user/api/SkAutoCanvasRestore_Reference.md new file mode 100644 index 0000000000..8e39b36c85 --- /dev/null +++ b/site/user/api/SkAutoCanvasRestore_Reference.md @@ -0,0 +1,113 @@ +SkAutoCanvasRestore Reference +=== + +# <a name="Automatic_Canvas_Restore"></a> Automatic Canvas Restore + +# <a name="SkAutoCanvasRestore"></a> Class SkAutoCanvasRestore +Stack helper class calls + +# <a name="Overview"></a> Overview + +## <a name="Subtopics"></a> Subtopics + +| name | description | +| --- | --- | +| <a href="SkAutoCanvasRestore_Reference#Automatic_Canvas_Restore_Overview_Constructors">Constructors</a> | functions that construct <a href="#SkAutoCanvasRestore">SkAutoCanvasRestore</a> | +| <a href="SkAutoCanvasRestore_Reference#Automatic_Canvas_Restore_Overview_Member_Functions">Member Functions</a> | static functions and member methods | + +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkAutoCanvasRestore_SkCanvas_star">SkAutoCanvasRestore(SkCanvas* canvas, bool doSave)</a> | Preserves <a href="SkCanvas_Reference#Canvas">Canvas</a> save count. | +| | Restores <a href="SkCanvas_Reference#Canvas">Canvas</a> to saved state. | + +## <a name="Member_Functions"></a> Member Functions + +| name | description | +| --- | --- | +| <a href="#SkAutoCanvasRestore_restore">restore</a> | Restores <a href="SkCanvas_Reference#Canvas">Canvas</a> to saved state. | + +<a name="SkAutoCanvasRestore_SkCanvas_star"></a> +## SkAutoCanvasRestore + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +SkAutoCanvasRestore(SkCanvas* canvas, bool doSave) +</pre> + +Preserves <a href="SkCanvas_Reference#Canvas">Canvas</a> save count. Optionally saves <a href="#Clip">Canvas Clip</a> and <a href="#Matrix">Canvas Matrix</a>. + +### Parameters + +<table> <tr> <td><a name="SkAutoCanvasRestore_SkCanvas_star_canvas"> <code><strong>canvas </strong></code> </a></td> <td> +<a href="SkCanvas_Reference#Canvas">Canvas</a> to guard</td> + </tr> <tr> <td><a name="SkAutoCanvasRestore_SkCanvas_star_doSave"> <code><strong>doSave </strong></code> </a></td> <td> +call <a href="#SkCanvas_save">SkCanvas::save()</a></td> + </tr> +</table> + +### Return Value + +utility to <a href="#SkAutoCanvasRestore_restore">restore</a> <a href="SkCanvas_Reference#Canvas">Canvas</a> state on destructor + +### Example + +<div><fiddle-embed name="466ef576b88e29d7252422db7adeed1c"></fiddle-embed></div> + +### See Also + +<a href="#SkCanvas_save">SkCanvas::save</a> <a href="#SkCanvas_restore">SkCanvas::restore</a> + +--- + +<a name="SkAutoCanvasRestore_destructor"></a> +## ~SkAutoCanvasRestore + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +~SkAutoCanvasRestore() +</pre> + +Restores <a href="SkCanvas_Reference#Canvas">Canvas</a> to saved state. Destructor is called when container goes out of +scope. + +### See Also + +<a href="#SkCanvas_save">SkCanvas::save</a> <a href="#SkCanvas_restore">SkCanvas::restore</a> + +--- + +<a name="SkAutoCanvasRestore_restore"></a> +## restore + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +void restore() +</pre> + +Restores <a href="SkCanvas_Reference#Canvas">Canvas</a> to saved state immediately. Subsequent calls and + +### Example + +<div><fiddle-embed name="9f459b218ec079c1ada23f4412968f9a"> + +#### Example Output + +~~~~ +saveCanvas: false before restore: 2 +saveCanvas: false after restore: 2 +saveCanvas: true before restore: 2 +saveCanvas: true after restore: 2 +saveCanvas: false before restore: 2 +saveCanvas: false after restore: 1 +saveCanvas: true before restore: 2 +saveCanvas: true after restore: 1 +final count: 1 +~~~~ + +</fiddle-embed></div> + +### See Also + +<a href="#SkCanvas_save">SkCanvas::save</a> <a href="#SkCanvas_restore">SkCanvas::restore</a> + +--- + diff --git a/site/user/api/SkBitmap_Reference.md b/site/user/api/SkBitmap_Reference.md index 4de5c7b6ac..a624fb1f55 100644 --- a/site/user/api/SkBitmap_Reference.md +++ b/site/user/api/SkBitmap_Reference.md @@ -35,101 +35,105 @@ is useful to position one or more <a href="#Bitmap">Bitmaps</a> within a shared ## <a name="Subtopics"></a> Subtopics -| topics | description | +| name | description | | --- | --- | +| <a href="#Overview_Classes_and_Structs">Classes and Structs</a> | embedded struct and class members | +| <a href="#Overview_Constructors">Constructors</a> | functions that construct <a href="SkPath_Reference#SkPath">SkPath</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | static functions and member methods | +| <a href="#Overview_Operators">Operators</a> | operator overloading methods | -## <a name="Structs"></a> Structs +## <a name="Classes_and_Structs"></a> Classes and Structs -| description | struct | +| name | description | | --- | --- | | <a href="#SkBitmap_Allocator">Allocator</a> | | | <a href="#SkBitmap_HeapAllocator">HeapAllocator</a> | | ## <a name="Constructors"></a> Constructors -| description | function | +| name | description | | --- | --- | -| <a href="#SkBitmap_empty_constructor">SkBitmap()</a> | Constructs with default values. | -| <a href="#SkBitmap_move_SkBitmap">SkBitmap(SkBitmap&& src)</a> | Takes ownership of pixels. | -| <a href="#SkBitmap_copy_const_SkBitmap">SkBitmap(const SkBitmap& src)</a> | Shares ownership of pixels. | -| | Releases ownership of pixels. | +| <a href="#SkBitmap_empty_constructor">SkBitmap()</a> | constructs with default values | +| <a href="#SkBitmap_move_SkBitmap">SkBitmap(SkBitmap&& src)</a> | takes ownership of pixels | +| <a href="#SkBitmap_copy_const_SkBitmap">SkBitmap(const SkBitmap& src)</a> | shares ownership of pixels | +| | releases ownership of pixels | ## <a name="Operators"></a> Operators -| description | function | +| name | description | | --- | --- | -| <a href="#SkBitmap">SkBitmap</a>& <a href="#SkBitmap_move_operator">operator=(SkBitmap&& src)</a> | Takes ownership of pixels. | -| <a href="#SkBitmap">SkBitmap</a>& <a href="#SkBitmap_copy_operator">operator=(const SkBitmap& src)</a> | Shares ownership of pixels. | +| <a href="#SkBitmap">SkBitmap</a>& <a href="#SkBitmap_move_operator">operator=(SkBitmap&& src)</a> | takes ownership of pixels | +| <a href="#SkBitmap">SkBitmap</a>& <a href="#SkBitmap_copy_operator">operator=(const SkBitmap& src)</a> | shares ownership of pixels | ## <a name="Member_Functions"></a> Member Functions -| description | function | +| name | description | | --- | --- | -| <a href="#SkBitmap_ComputeIsOpaque">ComputeIsOpaque</a> | Returns true if all pixels are opaque. | -| <a href="#SkBitmap_allocN32Pixels">allocN32Pixels</a> | Allocates compatible <a href="#ARGB">Color ARGB</a> pixels, or aborts. | -| <a href="#SkBitmap_allocPixels">allocPixels</a> | Allocates pixels from <a href="undocumented#Image_Info">Image Info</a>, or aborts. | -| <a href="#SkBitmap_allocPixelsFlags">allocPixelsFlags</a> | Allocates pixels from <a href="undocumented#Image_Info">Image Info</a> with options, or aborts. | -| <a href="#SkBitmap_alphaType">alphaType</a> | Returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Image_Alpha_Type">Alpha Type</a>. | -| <a href="#SkBitmap_bounds">bounds</a> | Returns <a href="#SkBitmap_width">width</a> and <a href="#SkBitmap_height">height</a> as Rectangle. | -| <a href="#SkBitmap_bytesPerPixel">bytesPerPixel</a> | Returns number of bytes in pixel based on <a href="undocumented#Image_Color_Type">Color Type</a>. | -| <a href="#SkBitmap_colorSpace">colorSpace</a> | Returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Color_Space">Color Space</a>. | -| <a href="#SkBitmap_colorType">colorType</a> | Returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Image_Color_Type">Color Type</a>. | -| <a href="#SkBitmap_computeByteSize">computeByteSize</a> | Returns size required for pixels. | -| <a href="#SkBitmap_dimensions">dimensions</a> | Returns <a href="#SkBitmap_width">width</a> and <a href="#SkBitmap_height">height</a>. | -| <a href="#SkBitmap_drawsNothing">drawsNothing</a> | Returns true if no <a href="#SkBitmap_width">width</a>, no <a href="#SkBitmap_height">height</a>, or no <a href="undocumented#Pixel_Ref">Pixel Ref</a>. | -| <a href="#SkBitmap_empty">empty</a> | Returns true if <a href="undocumented#Image_Info">Image Info</a> has zero <a href="#SkBitmap_width">width</a> or <a href="#SkBitmap_height">height</a>. | -| <a href="#SkBitmap_erase">erase</a> | Writes <a href="undocumented#Color">Color</a> to rectangle of pixels. | -| <a href="#SkBitmap_eraseARGB">eraseARGB</a> | Writes <a href="undocumented#Color">Color</a> to pixels. | -| <a href="#SkBitmap_eraseArea">eraseArea</a> | Deprecated | -| <a href="#SkBitmap_eraseColor">eraseColor</a> | Writes <a href="undocumented#Color">Color</a> to pixels. | -| <a href="#SkBitmap_eraseRGB">eraseRGB</a> | Deprecated | -| <a href="#SkBitmap_extractAlpha">extractAlpha</a> | Creates <a href="#Bitmap">Bitmap</a> containing <a href="#Alpha">Alpha</a> of pixels. | -| <a href="#SkBitmap_extractSubset">extractSubset</a> | Creates <a href="#Bitmap">Bitmap</a>, sharing pixels if possible. | -| <a href="#SkBitmap_getAddr">getAddr</a> | Returns readable pixel address as void pointer. | -| <a href="#SkBitmap_getAddr16">getAddr16</a> | Returns readable pixel address as 16-bit pointer. | -| <a href="#SkBitmap_getAddr32">getAddr32</a> | Returns readable pixel address as 32-bit pointer. | -| <a href="#SkBitmap_getAddr8">getAddr8</a> | Returns readable pixel address as 8-bit pointer. | -| <a href="#SkBitmap_getBounds">getBounds</a> | Returns <a href="#SkBitmap_width">width</a> and <a href="#SkBitmap_height">height</a> as Rectangle. | -| <a href="#SkBitmap_getColor">getColor</a> | Returns one pixel as <a href="#Unpremultiply">Unpremultiplied</a> <a href="undocumented#Color">Color</a>. | -| <a href="#SkBitmap_getGenerationID">getGenerationID</a> | Returns unique ID. | -| <a href="#SkBitmap_getPixels">getPixels</a> | Returns address of pixels. | -| <a href="#SkBitmap_getSubset">getSubset</a> | Returns <a href="#SkBitmap_bounds">bounds</a> offset by origin. | -| <a href="#SkBitmap_hasHardwareMipMap">hasHardwareMipMap</a> | Returns <a href="undocumented#Mip_Map">Mip Map</a> support present; Android only. | -| <a href="#SkBitmap_height">height</a> | Returns pixel row count. | -| <a href="#SkBitmap_info">info</a> | Returns <a href="undocumented#Image_Info">Image Info</a>. | -| <a href="#SkBitmap_installMaskPixels">installMaskPixels</a> | Creates <a href="undocumented#Pixel_Ref">Pixel Ref</a> from <a href="undocumented#Mask">Mask</a>. | -| <a href="#SkBitmap_installPixels">installPixels</a> | Creates <a href="undocumented#Pixel_Ref">Pixel Ref</a>, with optional release function. | -| <a href="#SkBitmap_isImmutable">isImmutable</a> | Returns true if pixels will not change. | -| <a href="#SkBitmap_isNull">isNull</a> | Returns true if <a href="undocumented#Pixel_Ref">Pixel Ref</a> is nullptr. | -| <a href="#SkBitmap_isOpaque">isOpaque</a> | Returns true if <a href="undocumented#Image_Info">Image Info</a> describes opaque pixels. | -| <a href="#SkBitmap_isVolatile">isVolatile</a> | Returns true if pixels should not be cached. | -| <a href="#SkBitmap_notifyPixelsChanged">notifyPixelsChanged</a> | Marks pixels as changed, altering the unique ID. | -| <a href="#SkBitmap_peekPixels">peekPixels</a> | Returns <a href="SkPixmap_Reference#Pixmap">Pixmap</a> if possible. | -| <a href="#SkBitmap_pixelRef">pixelRef</a> | Returns <a href="undocumented#Pixel_Ref">Pixel Ref</a>, or nullptr. | -| <a href="#SkBitmap_pixelRefOrigin">pixelRefOrigin</a> | Returns offset within <a href="undocumented#Pixel_Ref">Pixel Ref</a>. | -| <a href="#SkBitmap_pixmap">pixmap</a> | Returns <a href="SkPixmap_Reference#Pixmap">Pixmap</a>. | -| <a href="#SkBitmap_readPixels">readPixels</a> | Copies and converts pixels. | -| <a href="#SkBitmap_readyToDraw">readyToDraw</a> | Returns true if address of pixels is not nullptr. | -| <a href="#SkBitmap_refColorSpace">refColorSpace</a> | Returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Color_Space">Color Space</a>. | -| <a href="#SkBitmap_reset">reset</a> | Sets to default values, releases pixel ownership. | -| <a href="#SkBitmap_rowBytes">rowBytes</a> | Returns interval between rows in bytes. | -| <a href="#SkBitmap_rowBytesAsPixels">rowBytesAsPixels</a> | Returns interval between rows in pixels. | -| <a href="#SkBitmap_setAlphaType">setAlphaType</a> | Sets <a href="undocumented#Image_Alpha_Type">Alpha Type</a> of shared pixels. | -| <a href="#SkBitmap_setHasHardwareMipMap">setHasHardwareMipMap</a> | Sets <a href="undocumented#Mip_Map">Mip Map</a> support present; Android only. | -| <a href="#SkBitmap_setImmutable">setImmutable</a> | Marks that pixels will not change. | -| <a href="#SkBitmap_setInfo">setInfo</a> | Sets <a href="#SkBitmap_height">height</a>, <a href="#SkBitmap_width">width</a>, <a href="undocumented#Image_Color_Type">Color Type</a>, and so on, releasing pixels. | -| <a href="#SkBitmap_setIsVolatile">setIsVolatile</a> | Marks if pixels should not be cached. | -| <a href="#SkBitmap_setPixelRef">setPixelRef</a> | Sets <a href="undocumented#Pixel_Ref">Pixel Ref</a> and offset. | -| <a href="#SkBitmap_setPixels">setPixels</a> | Sets <a href="undocumented#Pixel_Ref">Pixel Ref</a> without an offset. | -| <a href="#SkBitmap_shiftPerPixel">shiftPerPixel</a> | Returns bit shift from pixels to bytes. | -| <a href="#SkBitmap_swap">swap</a> | Exchanges <a href="#Bitmap">Bitmap</a> pair. | -| <a href="#SkBitmap_toString">toString</a> | Converts <a href="#Bitmap">Bitmap</a> to machine readable form. | -| <a href="#SkBitmap_tryAllocN32Pixels">tryAllocN32Pixels</a> | Allocates compatible <a href="#ARGB">Color ARGB</a> pixels if possible. | -| <a href="#SkBitmap_tryAllocPixels">tryAllocPixels</a> | Allocates pixels from <a href="undocumented#Image_Info">Image Info</a> if possible. | -| <a href="#SkBitmap_tryAllocPixelsFlags">tryAllocPixelsFlags</a> | Allocates pixels from <a href="undocumented#Image_Info">Image Info</a> with options if possible. | -| <a href="#SkBitmap_validate">validate</a> | Asserts if <a href="#Bitmap">Bitmap</a> is invalid (debug only). | -| <a href="#SkBitmap_width">width</a> | Returns pixel column count. | -| <a href="#SkBitmap_writePixels">writePixels</a> | Copies and converts pixels. | +| <a href="#SkBitmap_ComputeIsOpaque">ComputeIsOpaque</a> | returns true if all pixels are opaque | +| <a href="#SkBitmap_allocN32Pixels">allocN32Pixels</a> | allocates compatible <a href="#ARGB">Color ARGB</a> pixels, or aborts | +| <a href="#SkBitmap_allocPixels">allocPixels</a> | allocates pixels from <a href="undocumented#Image_Info">Image Info</a>, or aborts | +| <a href="#SkBitmap_allocPixelsFlags">allocPixelsFlags</a> | allocates pixels from <a href="undocumented#Image_Info">Image Info</a> with options, or aborts | +| <a href="#SkBitmap_alphaType">alphaType</a> | returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Image_Alpha_Type">Alpha Type</a> | +| <a href="#SkBitmap_bounds">bounds</a> | returns <a href="#SkBitmap_width">width</a> and <a href="#SkBitmap_height">height</a> as Rectangle | +| <a href="#SkBitmap_bytesPerPixel">bytesPerPixel</a> | returns number of bytes in pixel based on <a href="undocumented#Image_Color_Type">Color Type</a> | +| <a href="#SkBitmap_colorSpace">colorSpace</a> | returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Color_Space">Color Space</a> | +| <a href="#SkBitmap_colorType">colorType</a> | returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Image_Color_Type">Color Type</a> | +| <a href="#SkBitmap_computeByteSize">computeByteSize</a> | returns size required for pixels | +| <a href="#SkBitmap_dimensions">dimensions</a> | returns <a href="#SkBitmap_width">width</a> and <a href="#SkBitmap_height">height</a> | +| <a href="#SkBitmap_drawsNothing">drawsNothing</a> | returns true if no <a href="#SkBitmap_width">width</a>, no <a href="#SkBitmap_height">height</a>, or no <a href="undocumented#Pixel_Ref">Pixel Ref</a> | +| <a href="#SkBitmap_empty">empty</a> | returns true if <a href="undocumented#Image_Info">Image Info</a> has zero <a href="#SkBitmap_width">width</a> or <a href="#SkBitmap_height">height</a> | +| <a href="#SkBitmap_erase">erase</a> | writes <a href="undocumented#Color">Color</a> to rectangle of pixels | +| <a href="#SkBitmap_eraseARGB">eraseARGB</a> | writes <a href="undocumented#Color">Color</a> to pixels | +| <a href="#SkBitmap_eraseArea">eraseArea</a> | deprecated | +| <a href="#SkBitmap_eraseColor">eraseColor</a> | writes <a href="undocumented#Color">Color</a> to pixels | +| <a href="#SkBitmap_eraseRGB">eraseRGB</a> | deprecated | +| <a href="#SkBitmap_extractAlpha">extractAlpha</a> | creates <a href="#Bitmap">Bitmap</a> containing <a href="#Alpha">Alpha</a> of pixels | +| <a href="#SkBitmap_extractSubset">extractSubset</a> | creates <a href="#Bitmap">Bitmap</a>, sharing pixels if possible | +| <a href="#SkBitmap_getAddr">getAddr</a> | returns readable pixel address as void pointer | +| <a href="#SkBitmap_getAddr16">getAddr16</a> | returns readable pixel address as 16-bit pointer | +| <a href="#SkBitmap_getAddr32">getAddr32</a> | returns readable pixel address as 32-bit pointer | +| <a href="#SkBitmap_getAddr8">getAddr8</a> | returns readable pixel address as 8-bit pointer | +| <a href="#SkBitmap_getBounds">getBounds</a> | returns <a href="#SkBitmap_width">width</a> and <a href="#SkBitmap_height">height</a> as Rectangle | +| <a href="#SkBitmap_getColor">getColor</a> | returns one pixel as <a href="#Unpremultiply">Unpremultiplied</a> <a href="undocumented#Color">Color</a> | +| <a href="#SkBitmap_getGenerationID">getGenerationID</a> | returns unique ID | +| <a href="#SkBitmap_getPixels">getPixels</a> | returns address of pixels | +| <a href="#SkBitmap_getSubset">getSubset</a> | returns <a href="#SkBitmap_bounds">bounds</a> offset by origin | +| <a href="#SkBitmap_hasHardwareMipMap">hasHardwareMipMap</a> | returns <a href="undocumented#Mip_Map">Mip Map</a> support present; Android only | +| <a href="#SkBitmap_height">height</a> | returns pixel row count | +| <a href="#SkBitmap_info">info</a> | returns <a href="undocumented#Image_Info">Image Info</a> | +| <a href="#SkBitmap_installMaskPixels">installMaskPixels</a> | creates <a href="undocumented#Pixel_Ref">Pixel Ref</a> from <a href="undocumented#Mask">Mask</a> | +| <a href="#SkBitmap_installPixels">installPixels</a> | creates <a href="undocumented#Pixel_Ref">Pixel Ref</a>, with optional release function | +| <a href="#SkBitmap_isImmutable">isImmutable</a> | returns true if pixels will not change | +| <a href="#SkBitmap_isNull">isNull</a> | returns true if <a href="undocumented#Pixel_Ref">Pixel Ref</a> is nullptr | +| <a href="#SkBitmap_isOpaque">isOpaque</a> | returns true if <a href="undocumented#Image_Info">Image Info</a> describes opaque pixels | +| <a href="#SkBitmap_isVolatile">isVolatile</a> | returns true if pixels should not be cached | +| <a href="#SkBitmap_notifyPixelsChanged">notifyPixelsChanged</a> | marks pixels as changed, altering the unique ID | +| <a href="#SkBitmap_peekPixels">peekPixels</a> | returns <a href="SkPixmap_Reference#Pixmap">Pixmap</a> if possible | +| <a href="#SkBitmap_pixelRef">pixelRef</a> | returns <a href="undocumented#Pixel_Ref">Pixel Ref</a>, or nullptr | +| <a href="#SkBitmap_pixelRefOrigin">pixelRefOrigin</a> | returns offset within <a href="undocumented#Pixel_Ref">Pixel Ref</a> | +| <a href="#SkBitmap_pixmap">pixmap</a> | returns <a href="SkPixmap_Reference#Pixmap">Pixmap</a> | +| <a href="#SkBitmap_readPixels">readPixels</a> | copies and converts pixels | +| <a href="#SkBitmap_readyToDraw">readyToDraw</a> | returns true if address of pixels is not nullptr | +| <a href="#SkBitmap_refColorSpace">refColorSpace</a> | returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Color_Space">Color Space</a> | +| <a href="#SkBitmap_reset">reset</a> | sets to default values, releases pixel ownership | +| <a href="#SkBitmap_rowBytes">rowBytes</a> | returns interval between rows in bytes | +| <a href="#SkBitmap_rowBytesAsPixels">rowBytesAsPixels</a> | returns interval between rows in pixels | +| <a href="#SkBitmap_setAlphaType">setAlphaType</a> | sets <a href="undocumented#Image_Alpha_Type">Alpha Type</a> of shared pixels | +| <a href="#SkBitmap_setHasHardwareMipMap">setHasHardwareMipMap</a> | sets <a href="undocumented#Mip_Map">Mip Map</a> support present; Android only | +| <a href="#SkBitmap_setImmutable">setImmutable</a> | marks that pixels will not change | +| <a href="#SkBitmap_setInfo">setInfo</a> | sets <a href="#SkBitmap_height">height</a>, <a href="#SkBitmap_width">width</a>, <a href="undocumented#Image_Color_Type">Color Type</a>, and so on, releasing pixels | +| <a href="#SkBitmap_setIsVolatile">setIsVolatile</a> | marks if pixels should not be cached | +| <a href="#SkBitmap_setPixelRef">setPixelRef</a> | sets <a href="undocumented#Pixel_Ref">Pixel Ref</a> and offset | +| <a href="#SkBitmap_setPixels">setPixels</a> | sets <a href="undocumented#Pixel_Ref">Pixel Ref</a> without an offset | +| <a href="#SkBitmap_shiftPerPixel">shiftPerPixel</a> | returns bit shift from pixels to bytes | +| <a href="#SkBitmap_swap">swap</a> | exchanges <a href="#Bitmap">Bitmap</a> pair | +| <a href="#SkBitmap_toString">toString</a> | converts <a href="#Bitmap">Bitmap</a> to machine readable form | +| <a href="#SkBitmap_tryAllocN32Pixels">tryAllocN32Pixels</a> | allocates compatible <a href="#ARGB">Color ARGB</a> pixels if possible | +| <a href="#SkBitmap_tryAllocPixels">tryAllocPixels</a> | allocates pixels from <a href="undocumented#Image_Info">Image Info</a> if possible | +| <a href="#SkBitmap_tryAllocPixelsFlags">tryAllocPixelsFlags</a> | allocates pixels from <a href="undocumented#Image_Info">Image Info</a> with options if possible | +| <a href="#SkBitmap_validate">validate</a> | asserts if <a href="#Bitmap">Bitmap</a> is invalid (debug only) | +| <a href="#SkBitmap_width">width</a> | returns pixel column count | +| <a href="#SkBitmap_writePixels">writePixels</a> | copies and converts pixels | # <a name="SkBitmap::Allocator"></a> Class SkBitmap::Allocator diff --git a/site/user/api/SkCanvas_Reference.md b/site/user/api/SkCanvas_Reference.md index 76506fb4cb..9576df1d6c 100644 --- a/site/user/api/SkCanvas_Reference.md +++ b/site/user/api/SkCanvas_Reference.md @@ -29,123 +29,130 @@ This approach may be deprecated in the future. ## <a name="Subtopics"></a> Subtopics -| topics | description | +| name | description | | --- | --- | +| <a href="#Overview_Classes_and_Structs">Classes and Structs</a> | embedded struct and class members | +| <a href="#Overview_Constants">Constants</a> | enum and enum class, const values | +| <a href="#Overview_Constructors">Constructors</a> | functions that construct <a href="SkPath_Reference#SkPath">SkPath</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | static functions and member methods | +| Operators | operator overloading methods | ## <a name="Constants"></a> Constants -| constants | description | +| name | description | | --- | --- | -| Lattice::Flags | Controls <a href="#SkCanvas_Lattice">Lattice</a> transparency. | -| <a href="#SkCanvas_PointMode">PointMode</a> | Sets <a href="#SkCanvas_drawPoints">drawPoints</a> options. | -| <a href="#SkCanvas_SaveLayerFlags">SaveLayerFlags</a> | Sets <a href="#SkCanvas_SaveLayerRec">SaveLayerRec</a> options. | -| <a href="#SkCanvas_SrcRectConstraint">SrcRectConstraint</a> | Sets <a href="#SkCanvas_drawImageRect">drawImageRect</a> options. | +| Lattice::Flags | controls <a href="#SkCanvas_Lattice">Lattice</a> transparency | +| <a href="#SkCanvas_PointMode">PointMode</a> | sets <a href="#SkCanvas_drawPoints">drawPoints</a> options | +| <a href="#SkCanvas_SaveLayerFlags">SaveLayerFlags</a> | sets <a href="#SkCanvas_SaveLayerRec">SaveLayerRec</a> options | +| <a href="#SkCanvas_SrcRectConstraint">SrcRectConstraint</a> | sets <a href="#SkCanvas_drawImageRect">drawImageRect</a> options | -## <a name="Structs"></a> Structs +## <a name="Classes_and_Structs"></a> Classes and Structs -| struct | description | +| name | description | | --- | --- | -| <a href="#SkCanvas_Lattice">Lattice</a> | Divides <a href="SkBitmap_Reference#Bitmap">Bitmap</a>, <a href="SkImage_Reference#Image">Image</a> into a rectangular grid. | -| <a href="#SkCanvas_SaveLayerRec">SaveLayerRec</a> | Contains state to create <a href="#Layer">Layer</a>. | +| <a href="#SkCanvas_Lattice">Lattice</a> | divides <a href="SkBitmap_Reference#Bitmap">Bitmap</a>, <a href="SkImage_Reference#Image">Image</a> into a rectangular grid | +| <a href="#SkCanvas_SaveLayerRec">SaveLayerRec</a> | contains state to create <a href="#Layer">Layer</a> | ## <a name="Constructors"></a> Constructors Create the desired type of <a href="SkSurface_Reference#Surface">Surface</a> to obtain its <a href="#Canvas">Canvas</a> when possible. <a href="#Overview_Constructors">Constructors</a> are useful when no <a href="SkSurface_Reference#Surface">Surface</a> is required, and some helpers implicitly create <a href="undocumented#Raster_Surface">Raster Surface</a>. -| | description | +| name | description | | --- | --- | -| <a href="#SkCanvas_empty_constructor">SkCanvas()</a> | No <a href="SkSurface_Reference#Surface">Surface</a>, no dimensions. | -| <a href="#SkCanvas_int_int_const_SkSurfaceProps_star">SkCanvas(int width, int height, const SkSurfaceProps* props = nullptr)</a> | No <a href="SkSurface_Reference#Surface">Surface</a>, set dimensions, <a href="undocumented#Surface_Properties">Surface Properties</a>. | -| <a href="#SkCanvas_copy_SkBaseDevice_star">SkCanvas(SkBaseDevice* device)</a> | Existing <a href="undocumented#Device">Device</a>. (<a href="undocumented#SkBaseDevice">SkBaseDevice</a> is private.) | -| <a href="#SkCanvas_copy_const_SkBitmap">SkCanvas(const SkBitmap& bitmap)</a> | Uses existing <a href="SkBitmap_Reference#Bitmap">Bitmap</a>. | -| <a href="#SkCanvas_const_SkBitmap_const_SkSurfaceProps">SkCanvas(const SkBitmap& bitmap, const SkSurfaceProps& props)</a> | Uses existing <a href="SkBitmap_Reference#Bitmap">Bitmap</a> and <a href="undocumented#Surface_Properties">Surface Properties</a>. | -| <a href="#SkCanvas_MakeRasterDirect">MakeRasterDirect</a> | Creates from <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="#Storage">Pixel Storage</a>. | -| <a href="#SkCanvas_MakeRasterDirectN32">MakeRasterDirectN32</a> | Creates from image data and <a href="#Storage">Pixel Storage</a>. | +| <a href="#SkCanvas_MakeRasterDirect">MakeRasterDirect</a> | creates from <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="#Storage">Pixel Storage</a> | +| <a href="#SkCanvas_MakeRasterDirectN32">MakeRasterDirectN32</a> | creates from image data and <a href="#Storage">Pixel Storage</a> | +| <a href="#SkCanvas_empty_constructor">SkCanvas()</a> | creates with no <a href="SkSurface_Reference#Surface">Surface</a>, no dimensions | +| <a href="#SkCanvas_copy_SkBaseDevice_star">SkCanvas(SkBaseDevice* device)</a> | to be deprecated | +| <a href="#SkCanvas_copy_const_SkBitmap">SkCanvas(const SkBitmap& bitmap)</a> | uses existing <a href="SkBitmap_Reference#Bitmap">Bitmap</a> | +| <a href="#SkCanvas_const_SkBitmap">SkCanvas(const SkBitmap& bitmap, ColorBehavior behavior)</a> | Android framework only | +| <a href="#SkCanvas_const_SkBitmap_const_SkSurfaceProps">SkCanvas(const SkBitmap& bitmap, const SkSurfaceProps& props)</a> | uses existing <a href="SkBitmap_Reference#Bitmap">Bitmap</a> and <a href="undocumented#Surface_Properties">Surface Properties</a> | +| <a href="#SkCanvas_int_int_const_SkSurfaceProps_star">SkCanvas(int width, int height, const SkSurfaceProps* props = nullptr)</a> | no <a href="SkSurface_Reference#Surface">Surface</a>, set dimensions, <a href="undocumented#Surface_Properties">Surface Properties</a> | +| | draws saved <a href="#Layer">Layers</a>, frees resources | ## <a name="Member_Functions"></a> Member Functions -| function | description | +| name | description | | --- | --- | -| <a href="#SkCanvas_accessTopLayerPixels">accessTopLayerPixels</a> | Returns writable pixel access if available. | -| <a href="#SkCanvas_accessTopRasterHandle">accessTopRasterHandle</a> | Returns context that tracks <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_clear">clear</a> | Fills <a href="#Clip">Clip</a> with <a href="undocumented#Color">Color</a>. | -| <a href="#SkCanvas_clipPath">clipPath</a> | Combines <a href="#Clip">Clip</a> with <a href="SkPath_Reference#Path">Path</a>. | -| <a href="#SkCanvas_clipRRect">clipRRect</a> | Combines <a href="#Clip">Clip</a> with <a href="undocumented#Round_Rect">Round Rect</a>. | -| <a href="#SkCanvas_clipRect">clipRect</a> | Combines <a href="#Clip">Clip</a> with <a href="SkRect_Reference#Rect">Rect</a>. | -| <a href="#SkCanvas_clipRegion">clipRegion</a> | Combines <a href="#Clip">Clip</a> with <a href="undocumented#Region">Region</a>. | -| <a href="#SkCanvas_concat">concat</a> | Multiplies <a href="#Matrix">Matrix</a> by <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_discard">discard</a> | Makes <a href="#Canvas">Canvas</a> contents undefined. | -| <a href="#SkCanvas_drawAnnotation">drawAnnotation</a> | Associates a <a href="SkRect_Reference#Rect">Rect</a> with a key-value pair. | -| <a href="#SkCanvas_drawArc">drawArc</a> | Draws <a href="undocumented#Arc">Arc</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawAtlas">drawAtlas</a> | Draws sprites using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawBitmap">drawBitmap</a> | Draws <a href="SkBitmap_Reference#Bitmap">Bitmap</a> at (x, y) position. | -| <a href="#SkCanvas_drawBitmapLattice">drawBitmapLattice</a> | Draws proportionally stretched <a href="SkBitmap_Reference#Bitmap">Bitmap</a>. | -| <a href="#SkCanvas_drawBitmapNine">drawBitmapNine</a> | Draws <a href="undocumented#Nine_Patch">Nine Patch</a> <a href="SkBitmap_Reference#Bitmap">Bitmap</a>. | -| <a href="#SkCanvas_drawBitmapRect">drawBitmapRect</a> | Draws <a href="SkBitmap_Reference#Bitmap">Bitmap</a>, source <a href="SkRect_Reference#Rect">Rect</a> to destination <a href="SkRect_Reference#Rect">Rect</a>. | -| <a href="#SkCanvas_drawCircle">drawCircle</a> | Draws <a href="undocumented#Circle">Circle</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawColor">drawColor</a> | Fills <a href="#Clip">Clip</a> with <a href="undocumented#Color">Color</a> and <a href="undocumented#Blend_Mode">Blend Mode</a>. | -| <a href="#SkCanvas_drawDRRect">drawDRRect</a> | Draws double <a href="undocumented#Round_Rect">Round Rect</a> stroked or filled. | -| <a href="#SkCanvas_drawDrawable">drawDrawable</a> | Draws <a href="undocumented#Drawable">Drawable</a>, encapsulated drawing commands. | -| <a href="#SkCanvas_drawIRect">drawIRect</a> | Draws <a href="SkIRect_Reference#IRect">IRect</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawImage">drawImage</a> | Draws <a href="SkImage_Reference#Image">Image</a> at (x, y) position. | -| <a href="#SkCanvas_drawImageLattice">drawImageLattice</a> | Draws proportionally stretched <a href="SkImage_Reference#Image">Image</a>. | -| <a href="#SkCanvas_drawImageNine">drawImageNine</a> | Draws <a href="undocumented#Nine_Patch">Nine Patch</a> <a href="SkImage_Reference#Image">Image</a>. | -| <a href="#SkCanvas_drawImageRect">drawImageRect</a> | Draws <a href="SkImage_Reference#Image">Image</a>, source <a href="SkRect_Reference#Rect">Rect</a> to destination <a href="SkRect_Reference#Rect">Rect</a>. | -| <a href="#SkCanvas_drawLine">drawLine</a> | Draws line segment between two points. | -| <a href="#SkCanvas_drawOval">drawOval</a> | Draws <a href="undocumented#Oval">Oval</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawPaint">drawPaint</a> | Fills <a href="#Clip">Clip</a> with <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawPatch">drawPatch</a> | Draws Coons_Patch. | -| <a href="#SkCanvas_drawPath">drawPath</a> | Draws <a href="SkPath_Reference#Path">Path</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawPicture">drawPicture</a> | Draws <a href="undocumented#Picture">Picture</a> using <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_drawPoint">drawPoint</a> | Draws point at (x, y) position. | -| <a href="#SkCanvas_drawPoints">drawPoints</a> | Draws array as points, lines, polygon. | -| <a href="#SkCanvas_drawPosText">drawPosText</a> | Draws text at array of (x, y) positions. | -| <a href="#SkCanvas_drawPosTextH">drawPosTextH</a> | Draws text at x positions with common baseline. | -| <a href="#SkCanvas_drawRRect">drawRRect</a> | Draws <a href="undocumented#Round_Rect">Round Rect</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawRect">drawRect</a> | Draws <a href="SkRect_Reference#Rect">Rect</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawRegion">drawRegion</a> | Draws <a href="undocumented#Region">Region</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawRoundRect">drawRoundRect</a> | Draws <a href="undocumented#Round_Rect">Round Rect</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawText">drawText</a> | Draws text at (x, y), using font advance. | -| <a href="#SkCanvas_drawTextBlob">drawTextBlob</a> | Draws text with arrays of positions and <a href="SkPaint_Reference#Paint">Paint</a>. | -| <a href="#SkCanvas_drawTextOnPath">drawTextOnPath</a> | Draws text following <a href="SkPath_Reference#Path">Path</a> contour. | -| <a href="#SkCanvas_drawTextOnPathHV">drawTextOnPathHV</a> | Draws text following <a href="SkPath_Reference#Path">Path</a> with offsets. | -| <a href="#SkCanvas_drawTextRSXform">drawTextRSXform</a> | Draws text with array of <a href="undocumented#RSXform">RSXform</a>. | -| <a href="#SkCanvas_drawString">drawString</a> | Draws null terminated string at (x, y) using font advance. | -| <a href="#SkCanvas_drawVertices">drawVertices</a> | Draws <a href="undocumented#Vertices">Vertices</a>, a triangle mesh. | -| <a href="#SkCanvas_flush">flush</a> | Triggers execution of all pending draw operations. | -| <a href="#SkCanvas_getBaseLayerSize">getBaseLayerSize</a> | Gets size of base <a href="#Layer">Layer</a> in global coordinates. | -| <a href="#SkCanvas_getDeviceClipBounds">getDeviceClipBounds</a> | Returns <a href="SkIRect_Reference#IRect">IRect</a> bounds of <a href="#Clip">Clip</a>. | -| <a href="#SkCanvas_getDrawFilter">getDrawFilter</a> | Legacy; to be deprecated. | -| <a href="#SkCanvas_getGrContext">getGrContext</a> | Returns <a href="undocumented#GPU_Context">GPU Context</a> of the <a href="undocumented#GPU_Surface">GPU Surface</a>. | -| <a href="#SkCanvas_getLocalClipBounds">getLocalClipBounds</a> | Returns <a href="#Clip">Clip</a> bounds in source coordinates. | -| <a href="#SkCanvas_getMetaData">getMetaData</a> | Associates additional data with the canvas. | -| <a href="#SkCanvas_getProps">getProps</a> | Copies <a href="undocumented#Surface_Properties">Surface Properties</a> if available. | -| <a href="#SkCanvas_getSaveCount">getSaveCount</a> | Returns depth of stack containing <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_getTotalMatrix">getTotalMatrix</a> | Returns <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_imageInfo">imageInfo</a> | Returns <a href="undocumented#Image_Info">Image Info</a> for <a href="#Canvas">Canvas</a>. | -| <a href="#SkCanvas_isClipEmpty">isClipEmpty</a> | Returns if <a href="#Clip">Clip</a> is empty. | -| <a href="#SkCanvas_isClipRect">isClipRect</a> | Returns if <a href="#Clip">Clip</a> is <a href="SkRect_Reference#Rect">Rect</a> and not empty. | -| <a href="#SkCanvas_MakeRasterDirect">MakeRasterDirect</a> | Creates <a href="#Canvas">Canvas</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> and pixel data. | -| <a href="#SkCanvas_MakeRasterDirectN32">MakeRasterDirectN32</a> | Creates <a href="#Canvas">Canvas</a> from image specifications and pixel data. | -| <a href="#SkCanvas_makeSurface">makeSurface</a> | Creates <a href="SkSurface_Reference#Surface">Surface</a> matching <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="undocumented#SkSurfaceProps">SkSurfaceProps</a>. | -| <a href="#SkCanvas_peekPixels">peekPixels</a> | Returns if <a href="#Canvas">Canvas</a> has direct access to its pixels. | -| <a href="#SkCanvas_quickReject">quickReject</a> | Returns if <a href="SkRect_Reference#Rect">Rect</a> is outside <a href="#Clip">Clip</a>. | -| <a href="#SkCanvas_readPixels">readPixels</a> | Copies and converts rectangle of pixels from <a href="#Canvas">Canvas</a>. | -| <a href="#SkCanvas_resetMatrix">resetMatrix</a> | Resets <a href="#Matrix">Matrix</a> to identity. | -| <a href="#SkCanvas_restore">restore</a> | Restores changes to <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a>, pops <a href="#SkCanvas_save">save</a> stack. | -| <a href="#SkCanvas_restoreToCount">restoreToCount</a> | Restores changes to <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> to given depth. | -| <a href="#SkCanvas_rotate">rotate</a> | Rotates <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_save">save</a> | Saves <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> on stack. | -| <a href="#SkCanvas_saveLayer">saveLayer</a> | Saves <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> on stack; creates <a href="#Layer">Layer</a>. | -| <a href="#SkCanvas_saveLayerAlpha">saveLayerAlpha</a> | Saves <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> on stack; creates <a href="#Layer">Layer</a>; sets opacity. | -| <a href="#SkCanvas_saveLayerPreserveLCDTextRequests">saveLayerPreserveLCDTextRequests</a> | Saves <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> on stack; creates <a href="#Layer">Layer</a> for LCD text. | -| <a href="#SkCanvas_scale">scale</a> | Scales <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_setAllowSimplifyClip">setAllowSimplifyClip</a> | Experimental. | -| <a href="#SkCanvas_setDrawFilter">setDrawFilter</a> | Legacy; to be deprecated. | -| <a href="#SkCanvas_setMatrix">setMatrix</a> | Sets <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_skew">skew</a> | Skews <a href="#Matrix">Matrix</a>. | <a href="#SkCanvas_translate">translate</a> | Translates <a href="#Matrix">Matrix</a>. | -| <a href="#SkCanvas_writePixels">writePixels</a> | Copies and converts rectangle of pixels to <a href="#Canvas">Canvas</a>. | +| <a href="#SkCanvas_MakeRasterDirect">MakeRasterDirect</a> | creates <a href="#Canvas">Canvas</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> and pixel data | +| <a href="#SkCanvas_MakeRasterDirectN32">MakeRasterDirectN32</a> | creates <a href="#Canvas">Canvas</a> from image specifications and pixel data | +| <a href="#SkCanvas_accessTopLayerPixels">accessTopLayerPixels</a> | returns writable pixel access if available | +| <a href="#SkCanvas_accessTopRasterHandle">accessTopRasterHandle</a> | returns context that tracks <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_clear">clear</a> | fills <a href="#Clip">Clip</a> with <a href="undocumented#Color">Color</a> | +| <a href="#SkCanvas_clipPath">clipPath</a> | combines <a href="#Clip">Clip</a> with <a href="SkPath_Reference#Path">Path</a> | +| <a href="#SkCanvas_clipRRect">clipRRect</a> | combines <a href="#Clip">Clip</a> with <a href="undocumented#Round_Rect">Round Rect</a> | +| <a href="#SkCanvas_clipRect">clipRect</a> | combines <a href="#Clip">Clip</a> with <a href="SkRect_Reference#Rect">Rect</a> | +| <a href="#SkCanvas_clipRegion">clipRegion</a> | combines <a href="#Clip">Clip</a> with <a href="undocumented#Region">Region</a> | +| <a href="#SkCanvas_concat">concat</a> | multiplies <a href="#Matrix">Matrix</a> by <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_discard">discard</a> | makes <a href="#Canvas">Canvas</a> contents undefined | +| <a href="#SkCanvas_drawAnnotation">drawAnnotation</a> | associates a <a href="SkRect_Reference#Rect">Rect</a> with a key-value pair | +| <a href="#SkCanvas_drawArc">drawArc</a> | draws <a href="undocumented#Arc">Arc</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawAtlas">drawAtlas</a> | draws sprites using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawBitmap">drawBitmap</a> | draws <a href="SkBitmap_Reference#Bitmap">Bitmap</a> at (x, y) position | +| <a href="#SkCanvas_drawBitmapLattice">drawBitmapLattice</a> | draws proportionally stretched <a href="SkBitmap_Reference#Bitmap">Bitmap</a> | +| <a href="#SkCanvas_drawBitmapNine">drawBitmapNine</a> | draws <a href="undocumented#Nine_Patch">Nine Patch</a> <a href="SkBitmap_Reference#Bitmap">Bitmap</a> | +| <a href="#SkCanvas_drawBitmapRect">drawBitmapRect</a> | draws <a href="SkBitmap_Reference#Bitmap">Bitmap</a>, source <a href="SkRect_Reference#Rect">Rect</a> to destination <a href="SkRect_Reference#Rect">Rect</a> | +| <a href="#SkCanvas_drawCircle">drawCircle</a> | draws <a href="undocumented#Circle">Circle</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawColor">drawColor</a> | fills <a href="#Clip">Clip</a> with <a href="undocumented#Color">Color</a> and <a href="undocumented#Blend_Mode">Blend Mode</a> | +| <a href="#SkCanvas_drawDRRect">drawDRRect</a> | draws double <a href="undocumented#Round_Rect">Round Rect</a> stroked or filled | +| <a href="#SkCanvas_drawDrawable">drawDrawable</a> | draws <a href="undocumented#Drawable">Drawable</a>, encapsulated drawing commands | +| <a href="#SkCanvas_drawIRect">drawIRect</a> | draws <a href="SkIRect_Reference#IRect">IRect</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawImage">drawImage</a> | draws <a href="SkImage_Reference#Image">Image</a> at (x, y) position | +| <a href="#SkCanvas_drawImageLattice">drawImageLattice</a> | draws proportionally stretched <a href="SkImage_Reference#Image">Image</a> | +| <a href="#SkCanvas_drawImageNine">drawImageNine</a> | draws <a href="undocumented#Nine_Patch">Nine Patch</a> <a href="SkImage_Reference#Image">Image</a> | +| <a href="#SkCanvas_drawImageRect">drawImageRect</a> | draws <a href="SkImage_Reference#Image">Image</a>, source <a href="SkRect_Reference#Rect">Rect</a> to destination <a href="SkRect_Reference#Rect">Rect</a> | +| <a href="#SkCanvas_drawLine">drawLine</a> | draws line segment between two points | +| <a href="#SkCanvas_drawOval">drawOval</a> | draws <a href="undocumented#Oval">Oval</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawPaint">drawPaint</a> | fills <a href="#Clip">Clip</a> with <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawPatch">drawPatch</a> | draws Coons_Patch | +| <a href="#SkCanvas_drawPath">drawPath</a> | draws <a href="SkPath_Reference#Path">Path</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawPicture">drawPicture</a> | draws <a href="undocumented#Picture">Picture</a> using <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_drawPoint">drawPoint</a> | draws point at (x, y) position | +| <a href="#SkCanvas_drawPoints">drawPoints</a> | draws array as points, lines, polygon | +| <a href="#SkCanvas_drawPosText">drawPosText</a> | draws text at array of (x, y) positions | +| <a href="#SkCanvas_drawPosTextH">drawPosTextH</a> | draws text at x positions with common baseline | +| <a href="#SkCanvas_drawRRect">drawRRect</a> | draws <a href="undocumented#Round_Rect">Round Rect</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawRect">drawRect</a> | draws <a href="SkRect_Reference#Rect">Rect</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawRegion">drawRegion</a> | draws <a href="undocumented#Region">Region</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawRoundRect">drawRoundRect</a> | draws <a href="undocumented#Round_Rect">Round Rect</a> using <a href="#Clip">Clip</a>, <a href="#Matrix">Matrix</a>, and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawString">drawString</a> | draws null terminated string at (x, y) using font advance | +| <a href="#SkCanvas_drawText">drawText</a> | draws text at (x, y), using font advance | +| <a href="#SkCanvas_drawTextBlob">drawTextBlob</a> | draws text with arrays of positions and <a href="SkPaint_Reference#Paint">Paint</a> | +| <a href="#SkCanvas_drawTextOnPath">drawTextOnPath</a> | draws text following <a href="SkPath_Reference#Path">Path</a> contour | +| <a href="#SkCanvas_drawTextOnPathHV">drawTextOnPathHV</a> | draws text following <a href="SkPath_Reference#Path">Path</a> with offsets | +| <a href="#SkCanvas_drawTextRSXform">drawTextRSXform</a> | draws text with array of <a href="undocumented#RSXform">RSXform</a> | +| <a href="#SkCanvas_drawVertices">drawVertices</a> | draws <a href="undocumented#Vertices">Vertices</a>, a triangle mesh | +| <a href="#SkCanvas_flush">flush</a> | triggers execution of all pending draw operations | +| <a href="#SkCanvas_getBaseLayerSize">getBaseLayerSize</a> | returns size of base <a href="#Layer">Layer</a> in global coordinates | +| <a href="#SkCanvas_getDeviceClipBounds">getDeviceClipBounds</a> | returns <a href="SkIRect_Reference#IRect">IRect</a> bounds of <a href="#Clip">Clip</a> | +| <a href="#SkCanvas_getDrawFilter">getDrawFilter</a> | legacy; to be deprecated | +| <a href="#SkCanvas_getGrContext">getGrContext</a> | returns <a href="undocumented#GPU_Context">GPU Context</a> of the <a href="undocumented#GPU_Surface">GPU Surface</a> | +| <a href="#SkCanvas_getLocalClipBounds">getLocalClipBounds</a> | returns <a href="#Clip">Clip</a> bounds in source coordinates | +| <a href="#SkCanvas_getMetaData">getMetaData</a> | associates additional data with the canvas | +| <a href="#SkCanvas_getProps">getProps</a> | copies <a href="undocumented#Surface_Properties">Surface Properties</a> if available | +| <a href="#SkCanvas_getSaveCount">getSaveCount</a> | returns depth of stack containing <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_getTotalMatrix">getTotalMatrix</a> | returns <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_imageInfo">imageInfo</a> | returns <a href="undocumented#Image_Info">Image Info</a> for <a href="#Canvas">Canvas</a> | +| <a href="#SkCanvas_isClipEmpty">isClipEmpty</a> | returns if <a href="#Clip">Clip</a> is empty | +| <a href="#SkCanvas_isClipRect">isClipRect</a> | returns if <a href="#Clip">Clip</a> is <a href="SkRect_Reference#Rect">Rect</a> and not empty | +| <a href="#SkCanvas_makeSurface">makeSurface</a> | creates <a href="SkSurface_Reference#Surface">Surface</a> matching <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="undocumented#SkSurfaceProps">SkSurfaceProps</a> | +| <a href="#SkCanvas_peekPixels">peekPixels</a> | returns if <a href="#Canvas">Canvas</a> has direct access to its pixels | +| <a href="#SkCanvas_quickReject">quickReject</a> | returns if <a href="SkRect_Reference#Rect">Rect</a> is outside <a href="#Clip">Clip</a> | +| <a href="#SkCanvas_readPixels">readPixels</a> | copies and converts rectangle of pixels from <a href="#Canvas">Canvas</a> | +| <a href="#SkCanvas_resetMatrix">resetMatrix</a> | resets <a href="#Matrix">Matrix</a> to identity | +| <a href="#SkCanvas_restore">restore</a> | restores changes to <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a>, pops <a href="#SkCanvas_save">save</a> stack | +| <a href="#SkCanvas_restoreToCount">restoreToCount</a> | restores changes to <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> to given depth | +| <a href="#SkCanvas_rotate">rotate</a> | rotates <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_save">save</a> | saves <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> on stack | +| <a href="#SkCanvas_saveLayer">saveLayer</a> | saves <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> on stack; creates <a href="#Layer">Layer</a> | +| <a href="#SkCanvas_saveLayerAlpha">saveLayerAlpha</a> | saves <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> on stack; creates <a href="#Layer">Layer</a>; sets opacity | +| <a href="#SkCanvas_saveLayerPreserveLCDTextRequests">saveLayerPreserveLCDTextRequests</a> | saves <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a> on stack; creates <a href="#Layer">Layer</a> for LCD text | +| <a href="#SkCanvas_scale">scale</a> | scales <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_setAllowSimplifyClip">setAllowSimplifyClip</a> | experimental | +| <a href="#SkCanvas_setDrawFilter">setDrawFilter</a> | legacy; to be deprecated | +| <a href="#SkCanvas_setMatrix">setMatrix</a> | sets <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_skew">skew</a> | skews <a href="#Matrix">Matrix</a>. | <a href="#SkCanvas_translate">translate</a> | translates <a href="#Matrix">Matrix</a> | +| <a href="#SkCanvas_writePixels">writePixels</a> | copies and converts rectangle of pixels to <a href="#Canvas">Canvas</a> | <a name="SkCanvas_MakeRasterDirect"></a> ## MakeRasterDirect @@ -550,8 +557,8 @@ device independent fonts</td> virtual ~SkCanvas() </pre> -Draw saved <a href="#Layer">Layers</a>, if any. -Free up resources used by <a href="#Canvas">Canvas</a>. +Draws saved <a href="#Layer">Layers</a>, if any. +Frees up resources used by <a href="#Canvas">Canvas</a>. ### Example @@ -5717,90 +5724,3 @@ clip is not rect --- -# <a name="SkAutoCanvasRestore"></a> Class SkAutoCanvasRestore -Stack helper class calls - -<a name="SkAutoCanvasRestore_SkCanvas_star"></a> -## SkAutoCanvasRestore - -<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> -SkAutoCanvasRestore(SkCanvas* canvas, bool doSave) -</pre> - -Preserves <a href="#Canvas">Canvas</a> save count. Optionally saves <a href="#Canvas">Canvas</a> <a href="#Clip">Clip</a> and <a href="#Matrix">Matrix</a>. - -### Parameters - -<table> <tr> <td><a name="SkAutoCanvasRestore_SkCanvas_star_canvas"> <code><strong>canvas </strong></code> </a></td> <td> -<a href="#Canvas">Canvas</a> to guard</td> - </tr> <tr> <td><a name="SkAutoCanvasRestore_SkCanvas_star_doSave"> <code><strong>doSave </strong></code> </a></td> <td> -call <a href="#SkCanvas_save">SkCanvas::save()</a></td> - </tr> -</table> - -### Return Value - -utility to <a href="#SkAutoCanvasRestore_restore">restore</a> <a href="#Canvas">Canvas</a> state on destructor - -### Example - -<div><fiddle-embed name="466ef576b88e29d7252422db7adeed1c"></fiddle-embed></div> - -### See Also - -<a href="#SkCanvas_save">SkCanvas::save</a> <a href="#SkCanvas_restore">SkCanvas::restore</a> - ---- - -<a name="SkAutoCanvasRestore_destructor"></a> -## ~SkAutoCanvasRestore - -<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> -~SkAutoCanvasRestore() -</pre> - -Restores <a href="#Canvas">Canvas</a> to saved state. Destructor is called when container goes out of -scope. - -### See Also - -<a href="#SkCanvas_save">SkCanvas::save</a> <a href="#SkCanvas_restore">SkCanvas::restore</a> - ---- - -<a name="SkAutoCanvasRestore_restore"></a> -## restore - -<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> -void restore() -</pre> - -Restores <a href="#Canvas">Canvas</a> to saved state immediately. Subsequent calls and -<a href="#SkAutoCanvasRestore_destructor">~SkAutoCanvasRestore</a> have no effect. - -### Example - -<div><fiddle-embed name="9f459b218ec079c1ada23f4412968f9a"> - -#### Example Output - -~~~~ -saveCanvas: false before restore: 2 -saveCanvas: false after restore: 2 -saveCanvas: true before restore: 2 -saveCanvas: true after restore: 2 -saveCanvas: false before restore: 2 -saveCanvas: false after restore: 1 -saveCanvas: true before restore: 2 -saveCanvas: true after restore: 1 -final count: 1 -~~~~ - -</fiddle-embed></div> - -### See Also - -<a href="#SkCanvas_save">SkCanvas::save</a> <a href="#SkCanvas_restore">SkCanvas::restore</a> - ---- - diff --git a/site/user/api/SkIPoint16_Reference.md b/site/user/api/SkIPoint16_Reference.md index f534e9d4e7..b067a2b5d3 100644 --- a/site/user/api/SkIPoint16_Reference.md +++ b/site/user/api/SkIPoint16_Reference.md @@ -4,31 +4,39 @@ SkIPoint16 Reference # <a name="IPoint16"></a> IPoint16 # <a name="SkIPoint16"></a> Struct SkIPoint16 -<a href="SkIPoint_Reference#SkIPoint">SkIPoint</a> holds two 16 bit integer coordinates +<a href="SkIPoint_Reference#SkIPoint">SkIPoint</a> holds two 16 bit integer coordinates. # <a name="Overview"></a> Overview ## <a name="Subtopics"></a> Subtopics -| topics | description | +| name | description | | --- | --- | +| <a href="#Overview_Constructors">Constructors</a> | functions that construct <a href="#SkIPoint16">SkIPoint16</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | static functions and member methods | + +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkIPoint16_Make">Make</a> | constructs from integer inputs | ## <a name="Member_Functions"></a> Member Functions -| description | function | +| name | description | | --- | --- | -| <a href="#SkIPoint16_Make">Make</a> | Constructs from integer inputs. | -| <a href="#SkIPoint16_set">set</a> | Sets to integer input. | -| <a href="#SkIPoint16_x">x</a> | Returns <a href="#SkIPoint16_fX">fX</a>. | -| <a href="#SkIPoint16_y">y</a> | Returns <a href="#SkIPoint16_fY">fY</a>. | +| <a href="#SkIPoint16_Make">Make</a> | constructs from integer inputs | +| <a href="#SkIPoint16_set">set</a> | sets to integer input | +| <a href="#SkIPoint16_x">x</a> | returns <a href="#SkIPoint16_fX">fX</a> | +| <a href="#SkIPoint16_y">y</a> | returns <a href="#SkIPoint16_fY">fY</a> | <a name="SkIPoint16_fX"> <code><strong>int16_t fX</strong></code> </a> -<a href="#SkIPoint16_x">x</a>-axis value used by <a href="#IPoint16">IPoint16</a>. +<a href="#SkIPoint16_x">x</a>-axis value used by <a href="#IPoint16">IPoint16</a> <a name="SkIPoint16_fY"> <code><strong>int16_t fY</strong></code> </a> -<a href="#SkIPoint16_y">y</a>-axis value used by <a href="#IPoint16">IPoint16</a>. +<a href="#SkIPoint16_y">y</a>-axis value used by <a href="#IPoint16">IPoint16</a> <a name="SkIPoint16_Make"></a> ## Make diff --git a/site/user/api/SkIPoint_Reference.md b/site/user/api/SkIPoint_Reference.md index fa55436ecc..0089478b1b 100644 --- a/site/user/api/SkIPoint_Reference.md +++ b/site/user/api/SkIPoint_Reference.md @@ -4,37 +4,46 @@ SkIPoint Reference # <a name="IPoint"></a> IPoint # <a name="SkIPoint"></a> Struct SkIPoint -<a href="#SkIPoint">SkIPoint</a> holds two 32 bit integer coordinates +<a href="#SkIPoint">SkIPoint</a> holds two 32 bit integer coordinates. # <a name="Overview"></a> Overview ## <a name="Subtopics"></a> Subtopics -| topics | description | +| name | description | | --- | --- | +| <a href="#Overview_Constructors">Constructors</a> | functions that construct <a href="SkIPoint16_Reference#SkIPoint16">SkIPoint16</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | static functions and member methods | +| <a href="#Overview_Operators">Operators</a> | operator overloading methods | + +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkIPoint_Make">Make</a> | constructs from integer inputs | ## <a name="Operators"></a> Operators -| description | function | +| name | description | | --- | --- | -| <a href="#SkIPoint">SkIPoint</a> <a href="#SkIPoint_minus_operator">operator-() const</a> | Reverses sign of <a href="#IPoint">IPoint</a>. | -| <a href="#SkIPoint">SkIPoint</a> <a href="#SkIPoint_add_operator">operator+(const SkIPoint& a, const SkIVector& b)</a> | Returns <a href="#IPoint">IPoint</a> offset by <a href="SkIPoint_Reference#IVector">IVector</a>. | -| <a href="SkIPoint_Reference#SkIVector">SkIVector</a> <a href="#SkIPoint_subtract_operator">operator-(const SkIPoint& a, const SkIPoint& b)</a> | Returns <a href="SkIPoint_Reference#IVector">IVector</a> between <a href="#IPoint">IPoints</a>. | -| bool <a href="#SkIPoint_notequal_operator">operator!=(const SkIPoint& a, const SkIPoint& b)</a> | Returns true if <a href="#IPoint">IPoints</a> are unequal. | -| bool <a href="#SkIPoint_equal_operator">operator==(const SkIPoint& a, const SkIPoint& b)</a> | Returns true if <a href="#IPoint">IPoints</a> are equal. | -| void <a href="#SkIPoint_addto_operator">operator+=(const SkIVector& v)</a> | Adds <a href="SkIPoint_Reference#IVector">IVector</a> to <a href="#IPoint">IPoint</a>. | -| void <a href="#SkIPoint_subtractfrom_operator">operator-=(const SkIVector& v)</a> | Subtracts <a href="SkIPoint_Reference#IVector">IVector</a> from <a href="#IPoint">IPoint</a>. | +| <a href="#SkIPoint">SkIPoint</a> <a href="#SkIPoint_add_operator">operator+(const SkIPoint& a, const SkIVector& b)</a> | returns <a href="#IPoint">IPoint</a> offset by <a href="SkIPoint_Reference#IVector">IVector</a> | +| <a href="#SkIPoint">SkIPoint</a> <a href="#SkIPoint_minus_operator">operator-() const</a> | reverses sign of <a href="#IPoint">IPoint</a> | +| <a href="SkIPoint_Reference#SkIVector">SkIVector</a> <a href="#SkIPoint_subtract_operator">operator-(const SkIPoint& a, const SkIPoint& b)</a> | returns <a href="SkIPoint_Reference#IVector">IVector</a> between <a href="#IPoint">IPoints</a> | +| bool <a href="#SkIPoint_notequal_operator">operator!=(const SkIPoint& a, const SkIPoint& b)</a> | returns true if <a href="#IPoint">IPoints</a> are unequal | +| bool <a href="#SkIPoint_equal_operator">operator==(const SkIPoint& a, const SkIPoint& b)</a> | returns true if <a href="#IPoint">IPoints</a> are equal | +| void <a href="#SkIPoint_addto_operator">operator+=(const SkIVector& v)</a> | adds <a href="SkIPoint_Reference#IVector">IVector</a> to <a href="#IPoint">IPoint</a> | +| void <a href="#SkIPoint_subtractfrom_operator">operator-=(const SkIVector& v)</a> | subtracts <a href="SkIPoint_Reference#IVector">IVector</a> from <a href="#IPoint">IPoint</a> | ## <a name="Member_Functions"></a> Member Functions -| description | function | +| name | description | | --- | --- | -| <a href="#SkIPoint_Make">Make</a> | Constructs from integer inputs. | -| <a href="#SkIPoint_equals">equals</a> | Returns true if members are equal. | -| <a href="#SkIPoint_isZero">isZero</a> | Returns true if both members equal zero. | -| <a href="#SkIPoint_set">set</a> | Sets to integer input. | -| <a href="#SkIPoint_x">x</a> | Returns <a href="#SkIPoint_fX">fX</a>. | -| <a href="#SkIPoint_y">y</a> | Returns <a href="#SkIPoint_fY">fY</a>. | +| <a href="#SkIPoint_Make">Make</a> | constructs from integer inputs | +| <a href="#SkIPoint_equals">equals</a> | returns true if members are equal | +| <a href="#SkIPoint_isZero">isZero</a> | returns true if both members equal zero | +| <a href="#SkIPoint_set">set</a> | sets to integer input | +| <a href="#SkIPoint_x">x</a> | returns <a href="#SkIPoint_fX">fX</a> | +| <a href="#SkIPoint_y">y</a> | returns <a href="#SkIPoint_fY">fY</a> | <a name="SkIPoint_fX"> <code><strong>int32_t fX</strong></code> </a> diff --git a/site/user/api/SkIRect_Reference.md b/site/user/api/SkIRect_Reference.md index 7afb05edaa..6d351cd194 100644 --- a/site/user/api/SkIRect_Reference.md +++ b/site/user/api/SkIRect_Reference.md @@ -14,63 +14,82 @@ its <a href="#SkIRect_top">top</a>, it is considered empty. ## <a name="Subtopics"></a> Subtopics -| topics | description | +| name | description | | --- | --- | +| <a href="#Overview_Constructors">Constructors</a> | list of functions that construct <a href="SkPath_Reference#SkPath">SkPath</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | list of static functions and member methods | +| <a href="#Overview_Operators">Operators</a> | operator overloading methods | + +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkIRect_MakeEmpty">MakeEmpty</a> | returns bounds of (0, 0, 0, 0) | +| <a href="#SkIRect_MakeLTRB">MakeLTRB</a> | constructs from int <a href="#SkIRect_left">left</a>, <a href="#SkIRect_top">top</a>, <a href="#SkIRect_right">right</a>, <a href="#SkIRect_bottom">bottom</a> | +| <a href="#SkIRect_MakeLargest">MakeLargest</a> | deprecated | +| <a href="#SkIRect_MakeSize">MakeSize</a> | constructs from <a href="undocumented#ISize">ISize</a> returning (0, 0, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>) | +| <a href="#SkIRect_MakeWH">MakeWH</a> | constructs from int input returning (0, 0, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>) | +| <a href="#SkIRect_MakeXYWH">MakeXYWH</a> | constructs from int input returning (<a href="#SkIRect_x">x</a>, <a href="#SkIRect_y">y</a>, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>) | +| <a href="#SkIRect_makeInset">makeInset</a> | constructs from sides moved symmetrically about the center | +| <a href="#SkIRect_makeOffset">makeOffset</a> | constructs from translated sides | +| <a href="#SkIRect_makeOutset">makeOutset</a> | constructs from sides moved symmetrically about the center | +| <a href="#SkIRect_makeSorted">makeSorted</a> | constructs, ordering sides from smaller to larger | ## <a name="Operators"></a> Operators -| description | function | +| name | description | | --- | --- | -| bool <a href="#SkIRect_notequal_operator">operator!=(const SkIRect& a, const SkIRect& b)</a> | Returns true if members are unequal. | -| bool <a href="#SkIRect_equal_operator">operator==(const SkIRect& a, const SkIRect& b)</a> | Returns true if members are equal. | +| bool <a href="#SkIRect_notequal_operator">operator!=(const SkIRect& a, const SkIRect& b)</a> | returns true if members are unequal | +| bool <a href="#SkIRect_equal_operator">operator==(const SkIRect& a, const SkIRect& b)</a> | returns true if members are equal | ## <a name="Member_Functions"></a> Member Functions -| description | function | +| name | description | | --- | --- | -| <a href="#SkIRect_EmptyIRect">EmptyIRect</a> | Returns immutable bounds of (0, 0, 0, 0). | -| <a href="#SkIRect_Intersects">Intersects</a> | Returns true if areas overlap. | -| <a href="#SkIRect_IntersectsNoEmptyCheck">IntersectsNoEmptyCheck</a> | Returns true if areas overlap. Skips empty check. | -| <a href="#SkIRect_MakeEmpty">MakeEmpty</a> | Returns bounds of (0, 0, 0, 0). | -| <a href="#SkIRect_MakeLTRB">MakeLTRB</a> | Constructs from int <a href="#SkIRect_left">left</a>, <a href="#SkIRect_top">top</a>, <a href="#SkIRect_right">right</a>, <a href="#SkIRect_bottom">bottom</a>. | -| <a href="#SkIRect_MakeSize">MakeSize</a> | Constructs from <a href="undocumented#ISize">ISize</a> returning (0, 0, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>). | -| <a href="#SkIRect_MakeWH">MakeWH</a> | Constructs from int input returning (0, 0, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>). | -| <a href="#SkIRect_MakeXYWH">MakeXYWH</a> | Constructs from int input returning (<a href="#SkIRect_x">x</a>, <a href="#SkIRect_y">y</a>, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>). | -| <a href="#SkIRect_bottom">bottom</a> | Returns larger bounds in <a href="#SkIRect_y">y</a>, if sorted. | -| <a href="#SkIRect_centerX">centerX</a> | Returns midpoint in <a href="#SkIRect_x">x</a>. | -| <a href="#SkIRect_centerY">centerY</a> | Returns midpoint in <a href="#SkIRect_y">y</a>. | -| <a href="#SkIRect_contains">contains</a> | Returns true if points are equal or inside. | -| <a href="#SkIRect_containsNoEmptyCheck">containsNoEmptyCheck</a> | Returns true if points are equal or inside. Skips empty check. | -| <a href="#SkIRect_height">height</a> | Returns span in <a href="#SkIRect_y">y</a>. | -| <a href="#SkIRect_height64">height64</a> | Returns span in <a href="#SkIRect_y">y</a> as int64_t. | -| <a href="#SkIRect_inset">inset</a> | Moves the sides symmetrically about the center. | -| <a href="#SkIRect_intersect">intersect</a> | Sets to shared area; returns true if not empty. | -| <a href="#SkIRect_intersectNoEmptyCheck">intersectNoEmptyCheck</a> | Sets to shared area; returns true if not empty. Skips empty check. | -| <a href="#SkIRect_is16Bit">is16Bit</a> | Returns true if members fit in 16-bit word. | -| <a href="#SkIRect_isEmpty">isEmpty</a> | Returns true if <a href="#SkIRect_width">width</a> or <a href="#SkIRect_height">height</a> are zero or negative or they exceed int32_t. | -| <a href="#SkIRect_isEmpty64">isEmpty64</a> | Returns true if <a href="#SkIRect_width">width</a> or <a href="#SkIRect_height">height</a> are zero or negative. | -| <a href="#SkIRect_join">join</a> | Sets to union of bounds. | -| <a href="#SkIRect_left">left</a> | Returns smaller bounds in <a href="#SkIRect_x">x</a>, if sorted. | -| <a href="#SkIRect_makeInset">makeInset</a> | Constructs from sides moved symmetrically about the center. | -| <a href="#SkIRect_makeOffset">makeOffset</a> | Constructs from translated sides. | -| <a href="#SkIRect_makeOutset">makeOutset</a> | Constructs from sides moved symmetrically about the center. | -| <a href="#SkIRect_makeSorted">makeSorted</a> | Constructs, ordering sides from smaller to larger. | -| <a href="#SkIRect_offset">offset</a> | Translates sides without changing <a href="#SkIRect_width">width</a> and <a href="#SkIRect_height">height</a>. | -| <a href="#SkIRect_offsetTo">offsetTo</a> | Translates to (<a href="#SkIRect_x">x</a>, <a href="#SkIRect_y">y</a>) without changing <a href="#SkIRect_width">width</a> and <a href="#SkIRect_height">height</a>. | -| <a href="#SkIRect_outset">outset</a> | Moves the sides symmetrically about the center. | -| <a href="#SkIRect_quickReject">quickReject</a> | Returns true if rectangles do not <a href="#SkIRect_intersect">intersect</a>. | -| <a href="#SkIRect_right">right</a> | Returns larger bounds in <a href="#SkIRect_x">x</a>, if sorted. | -| <a href="#SkIRect_set">set</a> | Sets to (<a href="#SkIRect_left">left</a>, <a href="#SkIRect_top">top</a>, <a href="#SkIRect_right">right</a>, <a href="#SkIRect_bottom">bottom</a>). | -| <a href="#SkIRect_setEmpty">setEmpty</a> | Sets to (0, 0, 0, 0). | -| <a href="#SkIRect_setLTRB">setLTRB</a> | Sets to <a href="undocumented#SkScalar">SkScalar</a> input (<a href="#SkIRect_left">left</a>, <a href="#SkIRect_top">top</a>, <a href="#SkIRect_right">right</a>, <a href="#SkIRect_bottom">bottom</a>). | -| <a href="#SkIRect_setXYWH">setXYWH</a> | Sets to (<a href="#SkIRect_x">x</a>, <a href="#SkIRect_y">y</a>, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>). | -| <a href="#SkIRect_size">size</a> | Returns <a href="undocumented#ISize">ISize</a> (<a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>). | -| <a href="#SkIRect_sort">sort</a> | Orders sides from smaller to larger. | -| <a href="#SkIRect_top">top</a> | Returns smaller bounds in <a href="#SkIRect_y">y</a>, if sorted. | -| <a href="#SkIRect_width">width</a> | Returns span in <a href="#SkIRect_x">x</a>. | -| <a href="#SkIRect_width64">width64</a> | Returns span in <a href="#SkIRect_y">y</a> as int64_t. | -| <a href="#SkIRect_x">x</a> | Returns bounds <a href="#SkIRect_left">left</a>. | -| <a href="#SkIRect_y">y</a> | Returns bounds <a href="#SkIRect_top">top</a>. | +| <a href="#SkIRect_EmptyIRect">EmptyIRect</a> | returns immutable bounds of (0, 0, 0, 0) | +| <a href="#SkIRect_Intersects">Intersects</a> | returns true if areas overlap | +| <a href="#SkIRect_IntersectsNoEmptyCheck">IntersectsNoEmptyCheck</a> | returns true if areas overlap skips empty check | +| <a href="#SkIRect_MakeEmpty">MakeEmpty</a> | returns bounds of (0, 0, 0, 0) | +| <a href="#SkIRect_MakeLTRB">MakeLTRB</a> | constructs from int <a href="#SkIRect_left">left</a>, <a href="#SkIRect_top">top</a>, <a href="#SkIRect_right">right</a>, <a href="#SkIRect_bottom">bottom</a> | +| <a href="#SkIRect_MakeLargest">MakeLargest</a> | deprecated | +| <a href="#SkIRect_MakeSize">MakeSize</a> | constructs from <a href="undocumented#ISize">ISize</a> returning (0, 0, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>) | +| <a href="#SkIRect_MakeWH">MakeWH</a> | constructs from int input returning (0, 0, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>) | +| <a href="#SkIRect_MakeXYWH">MakeXYWH</a> | constructs from int input returning (<a href="#SkIRect_x">x</a>, <a href="#SkIRect_y">y</a>, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>) | +| <a href="#SkIRect_bottom">bottom</a> | returns larger bounds in <a href="#SkIRect_y">y</a>, if sorted | +| <a href="#SkIRect_centerX">centerX</a> | returns midpoint in <a href="#SkIRect_x">x</a> | +| <a href="#SkIRect_centerY">centerY</a> | returns midpoint in <a href="#SkIRect_y">y</a> | +| <a href="#SkIRect_contains">contains</a> | returns true if points are equal or inside | +| <a href="#SkIRect_containsNoEmptyCheck">containsNoEmptyCheck</a> | returns true if points are equal or inside skips empty check | +| <a href="#SkIRect_height">height</a> | returns span in <a href="#SkIRect_y">y</a> | +| <a href="#SkIRect_height64">height64</a> | returns span in <a href="#SkIRect_y">y</a> as int64_t | +| <a href="#SkIRect_inset">inset</a> | moves the sides symmetrically about the center | +| <a href="#SkIRect_intersect">intersect</a> | sets to shared area; returns true if not empty | +| <a href="#SkIRect_intersectNoEmptyCheck">intersectNoEmptyCheck</a> | sets to shared area; returns true if not empty skips empty check | +| <a href="#SkIRect_is16Bit">is16Bit</a> | returns true if members fit in 16-bit word | +| <a href="#SkIRect_isEmpty">isEmpty</a> | returns true if <a href="#SkIRect_width">width</a> or <a href="#SkIRect_height">height</a> are zero or negative or they exceed int32_t | +| <a href="#SkIRect_isEmpty64">isEmpty64</a> | returns true if <a href="#SkIRect_width">width</a> or <a href="#SkIRect_height">height</a> are zero or negative | +| <a href="#SkIRect_join">join</a> | sets to union of bounds | +| <a href="#SkIRect_left">left</a> | returns smaller bounds in <a href="#SkIRect_x">x</a>, if sorted | +| <a href="#SkIRect_makeInset">makeInset</a> | constructs from sides moved symmetrically about the center | +| <a href="#SkIRect_makeOffset">makeOffset</a> | constructs from translated sides | +| <a href="#SkIRect_makeOutset">makeOutset</a> | constructs from sides moved symmetrically about the center | +| <a href="#SkIRect_makeSorted">makeSorted</a> | constructs, ordering sides from smaller to larger | +| <a href="#SkIRect_offset">offset</a> | translates sides without changing <a href="#SkIRect_width">width</a> and <a href="#SkIRect_height">height</a> | +| <a href="#SkIRect_offsetTo">offsetTo</a> | translates to (<a href="#SkIRect_x">x</a>, <a href="#SkIRect_y">y</a>) without changing <a href="#SkIRect_width">width</a> and <a href="#SkIRect_height">height</a> | +| <a href="#SkIRect_outset">outset</a> | moves the sides symmetrically about the center | +| <a href="#SkIRect_quickReject">quickReject</a> | returns true if rectangles do not <a href="#SkIRect_intersect">intersect</a> | +| <a href="#SkIRect_right">right</a> | returns larger bounds in <a href="#SkIRect_x">x</a>, if sorted | +| <a href="#SkIRect_set">set</a> | sets to (<a href="#SkIRect_left">left</a>, <a href="#SkIRect_top">top</a>, <a href="#SkIRect_right">right</a>, <a href="#SkIRect_bottom">bottom</a>) | +| <a href="#SkIRect_setEmpty">setEmpty</a> | sets to (0, 0, 0, 0) | +| <a href="#SkIRect_setLTRB">setLTRB</a> | sets to <a href="undocumented#SkScalar">SkScalar</a> input (<a href="#SkIRect_left">left</a>, <a href="#SkIRect_top">top</a>, <a href="#SkIRect_right">right</a>, <a href="#SkIRect_bottom">bottom</a>) | +| <a href="#SkIRect_setXYWH">setXYWH</a> | sets to (<a href="#SkIRect_x">x</a>, <a href="#SkIRect_y">y</a>, <a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>) | +| <a href="#SkIRect_size">size</a> | returns <a href="undocumented#ISize">ISize</a> (<a href="#SkIRect_width">width</a>, <a href="#SkIRect_height">height</a>) | +| <a href="#SkIRect_sort">sort</a> | orders sides from smaller to larger | +| <a href="#SkIRect_top">top</a> | returns smaller bounds in <a href="#SkIRect_y">y</a>, if sorted | +| <a href="#SkIRect_width">width</a> | returns span in <a href="#SkIRect_x">x</a> | +| <a href="#SkIRect_width64">width64</a> | returns span in <a href="#SkIRect_y">y</a> as int64_t | +| <a href="#SkIRect_x">x</a> | returns bounds <a href="#SkIRect_left">left</a> | +| <a href="#SkIRect_y">y</a> | returns bounds <a href="#SkIRect_top">top</a> | <a name="SkIRect_fLeft"> <code><strong>int32_t fLeft</strong></code> </a> diff --git a/site/user/api/SkImage_Reference.md b/site/user/api/SkImage_Reference.md index f0c9b302f5..c40c478068 100644 --- a/site/user/api/SkImage_Reference.md +++ b/site/user/api/SkImage_Reference.md @@ -42,16 +42,45 @@ drawing. | topics | description | | --- | --- | +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkImage_MakeBackendTextureFromSkImage">MakeBackendTextureFromSkImage</a> | Creates <a href="undocumented#GPU_Texture">GPU Texture</a> from <a href="#Image">Image</a>. | +| <a href="#SkImage_MakeCrossContextFromEncoded">MakeCrossContextFromEncoded</a> | Creates <a href="#Image">Image</a> from encoded data, and uploads to GPU. | +| <a href="#SkImage_MakeCrossContextFromPixmap">MakeCrossContextFromPixmap</a> | Creates <a href="#Image">Image</a> from <a href="SkPixmap_Reference#Pixmap">Pixmap</a>, and uploads to GPU. | +| <a href="#SkImage_MakeFromAHardwareBuffer">MakeFromAHardwareBuffer</a> | Creates <a href="#Image">Image</a> from Android hardware buffer. | +| <a href="#SkImage_MakeFromAdoptedTexture">MakeFromAdoptedTexture</a> | Creates <a href="#Image">Image</a> from <a href="undocumented#GPU_Texture">GPU Texture</a>, managed internally. | +| <a href="#SkImage_MakeFromBitmap">MakeFromBitmap</a> | Creates <a href="#Image">Image</a> from <a href="SkBitmap_Reference#Bitmap">Bitmap</a>, sharing or copying pixels. | +| <a href="#SkImage_MakeFromDeferredTextureImageData">MakeFromDeferredTextureImageData</a> | To be deprecated. | +| <a href="#SkImage_MakeFromEncoded">MakeFromEncoded</a> | Creates <a href="#Image">Image</a> from encoded data. | +| <a href="#SkImage_MakeFromGenerator">MakeFromGenerator</a> | Creates <a href="#Image">Image</a> from a stream of data. | +| <a href="#SkImage_MakeFromNV12TexturesCopy">MakeFromNV12TexturesCopy</a> | Creates <a href="#Image">Image</a> from <a href="undocumented#YUV_ColorSpace">YUV ColorSpace</a> data in two planes. | +| <a href="#SkImage_MakeFromPicture">MakeFromPicture</a> | Creates <a href="#Image">Image</a> from <a href="undocumented#Picture">Picture</a>. | +| <a href="#SkImage_MakeFromRaster">MakeFromRaster</a> | Creates <a href="#Image">Image</a> from <a href="SkPixmap_Reference#Pixmap">Pixmap</a>, with release. | +| <a href="#SkImage_MakeFromTexture">MakeFromTexture</a> | Creates <a href="#Image">Image</a> from <a href="undocumented#GPU_Texture">GPU Texture</a>, managed externally. | +| <a href="#SkImage_MakeFromYUVTexturesCopy">MakeFromYUVTexturesCopy</a> | Creates <a href="#Image">Image</a> from <a href="undocumented#YUV_ColorSpace">YUV ColorSpace</a> data in three planes. | +| <a href="#SkImage_MakeRasterCopy">MakeRasterCopy</a> | Creates <a href="#Image">Image</a> from <a href="SkPixmap_Reference#Pixmap">Pixmap</a> and copied pixels. | +| <a href="#SkImage_MakeRasterData">MakeRasterData</a> | Creates <a href="#Image">Image</a> from <a href="#Info">Image Info</a> and shared pixels. | +| <a href="#SkSurface_makeImageSnapshot">SkSurface::makeImageSnapshot</a> | Creates <a href="#Image">Image</a> capturing <a href="SkSurface_Reference#Surface">Surface</a> contents. | +| <a href="#SkImage_makeColorSpace">makeColorSpace</a> | Creates <a href="#Image">Image</a> matching <a href="undocumented#Color_Space">Color Space</a> if possible. | +| <a href="#SkImage_makeNonTextureImage">makeNonTextureImage</a> | Creates <a href="#Image">Image</a> without dependency on <a href="undocumented#GPU_Texture">GPU Texture</a>. | +| <a href="#SkImage_makeRasterImage">makeRasterImage</a> | Creates <a href="#Image">Image</a> compatible with <a href="undocumented#Raster_Surface">Raster Surface</a> if possible. | +| <a href="#SkImage_makeSubset">makeSubset</a> | Creates <a href="#Image">Image</a> containing part of original. | +| <a href="#SkImage_makeTextureImage">makeTextureImage</a> | Creates <a href="#Image">Image</a> matching <a href="undocumented#Color_Space">Color Space</a> if possible. | +| <a href="#SkImage_makeWithFilter">makeWithFilter</a> | Creates filtered, clipped <a href="#Image">Image</a>. | + ## <a name="Member_Functions"></a> Member Functions | description | function | | --- | --- | | <a href="#SkImage_MakeBackendTextureFromSkImage">MakeBackendTextureFromSkImage</a> | Creates <a href="undocumented#GPU_Texture">GPU Texture</a> from <a href="#Image">Image</a>. | | <a href="#SkImage_MakeCrossContextFromEncoded">MakeCrossContextFromEncoded</a> | Creates <a href="#Image">Image</a> from encoded data, and uploads to GPU. | +| <a href="#SkImage_MakeCrossContextFromPixmap">MakeCrossContextFromPixmap</a> | Creates <a href="#Image">Image</a> from <a href="SkPixmap_Reference#Pixmap">Pixmap</a>, and uploads to GPU. | | <a href="#SkImage_MakeFromAHardwareBuffer">MakeFromAHardwareBuffer</a> | Creates <a href="#Image">Image</a> from Android hardware buffer. | | <a href="#SkImage_MakeFromAdoptedTexture">MakeFromAdoptedTexture</a> | Creates <a href="#Image">Image</a> from <a href="undocumented#GPU_Texture">GPU Texture</a>, managed internally. | | <a href="#SkImage_MakeFromBitmap">MakeFromBitmap</a> | Creates <a href="#Image">Image</a> from <a href="SkBitmap_Reference#Bitmap">Bitmap</a>, sharing or copying pixels. | -| <a href="#SkImage_MakeFromDeferredTextureImageData">MakeFromDeferredTextureImageData</a> | | +| <a href="#SkImage_MakeFromDeferredTextureImageData">MakeFromDeferredTextureImageData</a> | To be deprecated. | | <a href="#SkImage_MakeFromEncoded">MakeFromEncoded</a> | Creates <a href="#Image">Image</a> from encoded data. | | <a href="#SkImage_MakeFromGenerator">MakeFromGenerator</a> | Creates <a href="#Image">Image</a> from a stream of data. | | <a href="#SkImage_MakeFromNV12TexturesCopy">MakeFromNV12TexturesCopy</a> | Creates <a href="#Image">Image</a> from <a href="undocumented#YUV_ColorSpace">YUV ColorSpace</a> data in two planes. | @@ -67,7 +96,7 @@ drawing. | <a href="#SkImage_colorSpace">colorSpace</a> | Returns <a href="undocumented#Color_Space">Color Space</a>. | | <a href="#SkImage_dimensions">dimensions</a> | Returns <a href="#SkImage_width">width</a> and <a href="#SkImage_height">height</a>. | | <a href="#SkImage_encodeToData">encodeToData</a> | Returns encoded <a href="#Image">Image</a> as <a href="undocumented#SkData">SkData</a>. | -| <a href="#SkImage_getDeferredTextureImageData">getDeferredTextureImageData</a> | | +| <a href="#SkImage_getDeferredTextureImageData">getDeferredTextureImageData</a> | To be deprecated. | | <a href="#SkImage_getTexture">getTexture</a> | Deprecated. | | <a href="#SkImage_getTextureHandle">getTextureHandle</a> | Returns GPU reference to <a href="#Image">Image</a> as texture. | | <a href="#SkImage_height">height</a> | Returns pixel row count. | diff --git a/site/user/api/SkMatrix_Reference.md b/site/user/api/SkMatrix_Reference.md index c6479f2fda..1818a39c3e 100644 --- a/site/user/api/SkMatrix_Reference.md +++ b/site/user/api/SkMatrix_Reference.md @@ -23,14 +23,23 @@ improve performance. <a href="#Matrix">Matrix</a> is not thread safe unless <a h | topics | description | | --- | --- | +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkMatrix_MakeAll">MakeAll</a> | Constructs all nine values. | +| <a href="#SkMatrix_MakeRectToRect">MakeRectToRect</a> | Constructs from source <a href="SkRect_Reference#Rect">Rect</a> to destination <a href="SkRect_Reference#Rect">Rect</a>. | +| <a href="#SkMatrix_MakeScale">MakeScale</a> | Constructs from scale in x and y. | +| <a href="#SkMatrix_MakeTrans">MakeTrans</a> | Constructs from translate in x and y. | + ## <a name="Operators"></a> Operators | function | description | | --- | --- | | <a href="#SkMatrix_notequal_operator">operator!=(const SkMatrix& a, const SkMatrix& b)</a> | Returns true if members are unequal. | | <a href="#SkMatrix_equal_operator">operator==(const SkMatrix& a, const SkMatrix& b)</a> | Returns true if members are equal. | -| <a href="#SkMatrix_array_operator">operator[](int index) const</a> | Returns <a href="#Matrix">Matrix</a> value. | | <a href="#SkMatrix_array1_operator">operator[](int index)</a> | Returns writable reference to <a href="#Matrix">Matrix</a> value. | +| <a href="#SkMatrix_array_operator">operator[](int index) const</a> | Returns <a href="#Matrix">Matrix</a> value. | ## <a name="Member_Functions"></a> Member Functions diff --git a/site/user/api/SkPaint_Reference.md b/site/user/api/SkPaint_Reference.md index 7695f98c43..a75c89a4f8 100644 --- a/site/user/api/SkPaint_Reference.md +++ b/site/user/api/SkPaint_Reference.md @@ -34,189 +34,200 @@ Multiple colors are drawn either by using multiple paints or with objects like ## <a name="Subtopics"></a> Subtopics -| topics | description | +| name | description | | --- | --- | -| <a href="#Initializers">Initializers</a> | Constructors and initialization. | -| Destructor | <a href="#Paint">Paint</a> termination. | -| <a href="#Management">Management</a> | <a href="#Paint">Paint</a> copying, moving, comparing. | -| <a href="#SkPaint_Hinting">Hinting</a> | <a href="undocumented#Glyph">Glyph</a> outline adjustment. | -| <a href="#SkPaint_Flags">Flags</a> | Attributes represented by single bits. | -| Anti-alias | Approximating coverage with transparency. | -| <a href="#Dither">Dither</a> | Distributing color error. | -| <a href="#Device_Text">Device Text</a> | Increase precision of glyph position. | -| <a href="SkPaint_Reference#Font_Embedded_Bitmaps">Font Embedded Bitmaps</a> | Custom sized bitmap <a href="#Glyph">Glyphs</a>. | -| <a href="#Automatic_Hinting">Automatic Hinting</a> | Always adjust glyph paths. | -| <a href="#Vertical_Text">Vertical Text</a> | Orient text from top to bottom. | -| <a href="#Fake_Bold">Fake Bold</a> | Approximate font styles. | -| <a href="SkPaint_Reference#Full_Hinting_Spacing">Full Hinting Spacing</a> | <a href="undocumented#Glyph">Glyph</a> spacing affected by hinting. | -| <a href="#Filter_Quality_Methods">Filter Quality Methods</a> | Get and set <a href="undocumented#Filter_Quality">Filter Quality</a>. | -| <a href="#Color_Methods">Color Methods</a> | Get and set <a href="undocumented#Color">Color</a>. | -| <a href="#SkPaint_Style">Style</a> | Geometry filling, stroking. | -| <a href="#Stroke_Width">Stroke Width</a> | Thickness perpendicular to geometry. | -| <a href="#Miter_Limit">Miter Limit</a> | Maximum length of stroked corners. | -| <a href="#Stroke_Cap">Stroke Cap</a> | Decorations at ends of open strokes. | -| <a href="#Stroke_Join">Stroke Join</a> | Decoration at corners of strokes. | -| <a href="#Fill_Path">Fill Path</a> | Make <a href="SkPath_Reference#Path">Path</a> from <a href="undocumented#Path_Effect">Path Effect</a>, stroking. | -| <a href="#Shader_Methods">Shader Methods</a> | Get and set <a href="undocumented#Shader">Shader</a>. | -| <a href="#Color_Filter_Methods">Color Filter Methods</a> | Get and set <a href="undocumented#Color_Filter">Color Filter</a>. | -| <a href="#Blend_Mode_Methods">Blend Mode Methods</a> | Get and set <a href="undocumented#Blend_Mode">Blend Mode</a>. | -| <a href="#Path_Effect_Methods">Path Effect Methods</a> | Get and set <a href="undocumented#Path_Effect">Path Effect</a>. | -| <a href="#Mask_Filter_Methods">Mask Filter Methods</a> | Get and set <a href="undocumented#Mask_Filter">Mask Filter</a>. | -| <a href="#Typeface_Methods">Typeface Methods</a> | Get and set <a href="undocumented#Typeface">Typeface</a>. | -| <a href="#Image_Filter_Methods">Image Filter Methods</a> | Get and set <a href="undocumented#Image_Filter">Image Filter</a>. | -| <a href="#Draw_Looper_Methods">Draw Looper Methods</a> | Get and set <a href="undocumented#Draw_Looper">Draw Looper</a>. | -| <a href="#Text_Align">Text Align</a> | <a href="undocumented#Text">Text</a> placement relative to position. | -| <a href="#Text_Size">Text Size</a> | Overall height in points. | -| <a href="#Text_Scale_X">Text Scale X</a> | <a href="undocumented#Text">Text</a> horizontal scale. | -| <a href="#Text_Skew_X">Text Skew X</a> | <a href="undocumented#Text">Text</a> horizontal slant. | -| <a href="#Text_Encoding">Text Encoding</a> | <a href="undocumented#Text">Text</a> encoded as characters or <a href="#Glyph">Glyphs</a>. | -| <a href="#Font_Metrics">Font Metrics</a> | Common glyph dimensions. | -| <a href="#Measure_Text">Measure Text</a> | Width, height, bounds of text. | -| <a href="#Text_Path">Text Path</a> | Geometry of <a href="#Glyph">Glyphs</a>. | -| <a href="#Text_Intercepts">Text Intercepts</a> | Advanced underline, strike through. | -| <a href="#Fast_Bounds">Fast Bounds</a> | Approximate area required by <a href="#Paint">Paint</a>. | +| <a href="#Overview_Classes_and_Structs">Classes and Structs</a> | embedded struct and class members | +| <a href="#Overview_Constants">Constants</a> | enum and enum class, const values | +| <a href="#Overview_Constructors">Constructors</a> | list of functions that construct <a href="SkPath_Reference#SkPath">SkPath</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | list of static functions and member methods | +| <a href="#Overview_Operators">Operators</a> | operator overloading methods | +| <a href="#Overview_Related_Functions">Related Functions</a> | similar methods grouped together | + +## <a name="Related_Functions"></a> Related Functions + +| name | description | +| --- | --- | +| Anti-alias | approximating coverage with transparency | +| <a href="#Automatic_Hinting">Automatic Hinting</a> | always adjust glyph paths | +| <a href="#Blend_Mode_Methods">Blend Mode Methods</a> | get and set <a href="undocumented#Blend_Mode">Blend Mode</a> | +| <a href="#Color_Filter_Methods">Color Filter Methods</a> | get and set <a href="undocumented#Color_Filter">Color Filter</a> | +| <a href="#Color_Methods">Color Methods</a> | get and set <a href="undocumented#Color">Color</a> | +| Destructor | paint termination | +| <a href="#Device_Text">Device Text</a> | increase precision of glyph position | +| <a href="#Dither">Dither</a> | distributing color error | +| <a href="#Draw_Looper_Methods">Draw Looper Methods</a> | get and set <a href="undocumented#Draw_Looper">Draw Looper</a> | +| <a href="#Fake_Bold">Fake Bold</a> | approximate font styles | +| <a href="#Fast_Bounds">Fast Bounds</a> | approximate area required by <a href="#Paint">Paint</a> | +| <a href="#Fill_Path">Fill Path</a> | make <a href="SkPath_Reference#Path">Path</a> from <a href="undocumented#Path_Effect">Path Effect</a>, stroking | +| <a href="#Filter_Quality_Methods">Filter Quality Methods</a> | get and set <a href="undocumented#Filter_Quality">Filter Quality</a> | +| <a href="#SkPaint_Flags">Flags</a> | attributes represented by single bits | +| <a href="SkPaint_Reference#Font_Embedded_Bitmaps">Font Embedded Bitmaps</a> | custom sized bitmap <a href="#Glyph">Glyphs</a> | +| <a href="#Font_Metrics">Font Metrics</a> | common glyph dimensions | +| <a href="SkPaint_Reference#Full_Hinting_Spacing">Full Hinting Spacing</a> | glyph spacing affected by hinting | +| <a href="#SkPaint_Hinting">Hinting</a> | glyph outline adjustment | +| <a href="#Image_Filter_Methods">Image Filter Methods</a> | get and set <a href="undocumented#Image_Filter">Image Filter</a> | +| <a href="#Initializers">Initializers</a> | constructors and initialization | +| <a href="#Management">Management</a> | paint copying, moving, comparing | +| <a href="#Mask_Filter_Methods">Mask Filter Methods</a> | get and set <a href="undocumented#Mask_Filter">Mask Filter</a> | +| <a href="#Measure_Text">Measure Text</a> | width, height, bounds of text | +| <a href="#Miter_Limit">Miter Limit</a> | maximum length of stroked corners | +| <a href="#Path_Effect_Methods">Path Effect Methods</a> | get and set <a href="undocumented#Path_Effect">Path Effect</a> | +| <a href="#Shader_Methods">Shader Methods</a> | get and set <a href="undocumented#Shader">Shader</a> | +| <a href="#Stroke_Cap">Stroke Cap</a> | decorations at ends of open strokes | +| <a href="#Stroke_Join">Stroke Join</a> | decoration at corners of strokes | +| <a href="#Stroke_Width">Stroke Width</a> | thickness perpendicular to geometry | +| <a href="#SkPaint_Style">Style</a> | geometry filling, stroking | +| <a href="#Text_Align">Text Align</a> | text placement relative to position | +| <a href="#Text_Encoding">Text Encoding</a> | text encoded as characters or <a href="#Glyph">Glyphs</a> | +| <a href="#Text_Intercepts">Text Intercepts</a> | advanced underline, strike through | +| <a href="#Text_Path">Text Path</a> | geometry of <a href="#Glyph">Glyphs</a> | +| <a href="#Text_Scale_X">Text Scale X</a> | text horizontal scale | +| <a href="#Text_Size">Text Size</a> | overall height in points | +| <a href="#Text_Skew_X">Text Skew X</a> | text horizontal slant | +| <a href="#Typeface_Methods">Typeface Methods</a> | get and set <a href="undocumented#Typeface">Typeface</a> | +| <a href="#Vertical_Text">Vertical Text</a> | orient text from top to bottom | ## <a name="Constants"></a> Constants -| constants | description | +| name | description | | --- | --- | -| <a href="#SkPaint_Align">Align</a> | <a href="undocumented#Glyph">Glyph</a> locations relative to text position. | -| <a href="#SkPaint_Cap">Cap</a> | Start and end geometry on stroked shapes. | -| <a href="#SkPaint_Flags">Flags</a> | Values described by bits and masks. | -| <a href="#SkPaint_FontMetrics_FontMetricsFlags">FontMetrics::FontMetricsFlags</a> | Valid <a href="#Font_Metrics">Font Metrics</a>. | -| <a href="#SkPaint_Hinting">Hinting</a> | Level of glyph outline adjustment. | -| <a href="#SkPaint_Join">Join</a> | Corner geometry on stroked shapes. | -| <a href="#SkPaint_Style">Style</a> | Stroke, fill, or both. | -| <a href="#SkPaint_TextEncoding">TextEncoding</a> | Character or glyph encoded size. | - -## <a name="Structs"></a> Structs - -| struct | description | +| <a href="#SkPaint_Align">Align</a> | glyph locations relative to text position | +| <a href="#SkPaint_Cap">Cap</a> | start and end geometry on stroked shapes | +| <a href="#SkPaint_Flags">Flags</a> | values described by bits and masks | +| <a href="#SkPaint_FontMetrics_FontMetricsFlags">FontMetrics::FontMetricsFlags</a> | valid <a href="#Font_Metrics">Font Metrics</a> | +| <a href="#SkPaint_Hinting">Hinting</a> | level of glyph outline adjustment | +| <a href="#SkPaint_Join">Join</a> | corner geometry on stroked shapes | +| <a href="#SkPaint_Style">Style</a> | stroke, fill, or both | +| <a href="#SkPaint_TextEncoding">TextEncoding</a> | character or glyph encoded size | + +## <a name="Classes_and_Structs"></a> Classes and Structs + +| name | description | | --- | --- | -| <a href="#SkPaint_FontMetrics">FontMetrics</a> | <a href="undocumented#Typeface">Typeface</a> values. | +| <a href="#SkPaint_FontMetrics">FontMetrics</a> | typeface values | ## <a name="Constructors"></a> Constructors -| | description | +| name | description | | --- | --- | -| <a href="#SkPaint_empty_constructor">SkPaint()</a> | Constructs with default values. | -| <a href="#SkPaint_copy_const_SkPaint">SkPaint(const SkPaint& paint)</a> | Makes a shallow copy. | -| <a href="#SkPaint_move_SkPaint">SkPaint(SkPaint&& paint)</a> | Moves paint without copying it. | -| | Decreases <a href="undocumented#Reference_Count">Reference Count</a> of owned objects. | +| <a href="#SkPaint_empty_constructor">SkPaint()</a> | constructs with default values | +| <a href="#SkPaint_move_SkPaint">SkPaint(SkPaint&& paint)</a> | moves paint without copying it | +| <a href="#SkPaint_copy_const_SkPaint">SkPaint(const SkPaint& paint)</a> | makes a shallow copy | +| | decreases <a href="undocumented#Reference_Count">Reference Count</a> of owned objects | ## <a name="Operators"></a> Operators -| operator | description | +| name | description | | --- | --- | -| <a href="#SkPaint_copy_operator">operator=(const SkPaint& paint)</a> | Makes a shallow copy. | -| <a href="#SkPaint_move_operator">operator=(SkPaint&& paint)</a> | Moves paint without copying it. | -| <a href="#SkPaint_equal_operator">operator==(const SkPaint& a, const SkPaint& b)</a> | Compares paints for equality. | -| <a href="#SkPaint_notequal_operator">operator!=(const SkPaint& a, const SkPaint& b)</a> | Compares paints for inequality. | +| <a href="#SkPaint_notequal_operator">operator!=(const SkPaint& a, const SkPaint& b)</a> | compares paints for inequality | +| <a href="#SkPaint_move_operator">operator=(SkPaint&& paint)</a> | moves paint without copying it | +| <a href="#SkPaint_copy_operator">operator=(const SkPaint& paint)</a> | makes a shallow copy | +| <a href="#SkPaint_equal_operator">operator==(const SkPaint& a, const SkPaint& b)</a> | compares paints for equality | ## <a name="Member_Functions"></a> Member Functions -| function | description | +| name | description | | --- | --- | -| <a href="#SkPaint_breakText">breakText</a> | Returns text that fits in a width. | -| <a href="#SkPaint_canComputeFastBounds">canComputeFastBounds</a> | Returns true if settings allow for fast bounds computation. | -| <a href="#SkPaint_computeFastBounds">computeFastBounds</a> | Returns fill bounds for quick reject tests. | -| <a href="#SkPaint_computeFastStrokeBounds">computeFastStrokeBounds</a> | Returns stroke bounds for quick reject tests. | -| <a href="#SkPaint_containsText">containsText</a> | Returns if all text corresponds to <a href="#Glyph">Glyphs</a>. | -| <a href="#SkPaint_countText">countText</a> | Returns number of <a href="#Glyph">Glyphs</a> in text. | -| <a href="#SkPaint_doComputeFastBounds">doComputeFastBounds</a> | Returns bounds for quick reject tests. | -| <a href="#SkPaint_flatten">flatten</a> | Serializes into a buffer. | -| <a href="#SkPaint_getAlpha">getAlpha</a> | Returns <a href="#Alpha">Color Alpha</a>, color opacity. | -| <a href="#SkPaint_getBlendMode">getBlendMode</a> | Returns <a href="undocumented#Blend_Mode">Blend Mode</a>, how colors combine with <a href="undocumented#Device">Device</a>. | -| <a href="#SkPaint_getColor">getColor</a> | Returns <a href="#Alpha">Color Alpha</a> and <a href="#RGB">Color RGB</a>, one drawing color. | -| <a href="#SkPaint_getColorFilter">getColorFilter</a> | Returns <a href="undocumented#Color_Filter">Color Filter</a>, how colors are altered. | -| <a href="#SkPaint_getDrawLooper">getDrawLooper</a> | Returns <a href="undocumented#Draw_Looper">Draw Looper</a>, multiple layers. | -| <a href="#SkPaint_getFillPath">getFillPath</a> | Returns fill path equivalent to stroke. | -| <a href="#SkPaint_getFilterQuality">getFilterQuality</a> | Returns <a href="undocumented#Filter_Quality">Filter Quality</a>, image filtering level. | -| <a href="#SkPaint_getFlags">getFlags</a> | Returns <a href="#SkPaint_Flags">Flags</a> stored in a bit field. | -| <a href="#SkPaint_getFontBounds">getFontBounds</a> | Returns union all glyph bounds. | -| <a href="#SkPaint_getFontMetrics">getFontMetrics</a> | Returns <a href="undocumented#Typeface">Typeface</a> metrics scaled by text size. | -| <a href="#SkPaint_getFontSpacing">getFontSpacing</a> | Returns recommended spacing between lines. | -| <a href="#SkPaint_getHash">getHash</a> | Returns a shallow hash for equality checks. | -| <a href="#SkPaint_getHinting">getHinting</a> | Returns <a href="#SkPaint_Hinting">Hinting</a>, glyph outline adjustment level. | -| <a href="#SkPaint_getImageFilter">getImageFilter</a> | Returns <a href="undocumented#Image_Filter">Image Filter</a>, alter pixels; blur. | -| <a href="#SkPaint_getMaskFilter">getMaskFilter</a> | Returns <a href="undocumented#Mask_Filter">Mask Filter</a>, alterations to <a href="undocumented#Mask_Alpha">Mask Alpha</a>. | -| <a href="#SkPaint_getPathEffect">getPathEffect</a> | Returns <a href="undocumented#Path_Effect">Path Effect</a>, modifications to path geometry; dashing. | -| <a href="#SkPaint_getPosTextPath">getPosTextPath</a> | Returns <a href="SkPath_Reference#Path">Path</a> equivalent to positioned text. | -| <a href="#SkPaint_getPosTextIntercepts">getPosTextIntercepts</a> | Returns where lines intersect positioned text; underlines. | -| <a href="#SkPaint_getPosTextHIntercepts">getPosTextHIntercepts</a> | Returns where lines intersect horizontally positioned text; underlines. | -| <a href="#SkPaint_getShader">getShader</a> | Returns <a href="undocumented#Shader">Shader</a>, multiple drawing colors; gradients. | -| <a href="#SkPaint_getStrokeCap">getStrokeCap</a> | Returns <a href="#SkPaint_Cap">Cap</a>, the area drawn at path ends. | -| <a href="#SkPaint_getStrokeJoin">getStrokeJoin</a> | Returns <a href="#SkPaint_Join">Join</a>, geometry on path corners. | -| <a href="#SkPaint_getStrokeMiter">getStrokeMiter</a> | Returns <a href="#Miter_Limit">Miter Limit</a>, angles with sharp corners. | -| <a href="#SkPaint_getStrokeWidth">getStrokeWidth</a> | Returns thickness of the stroke. | -| <a href="#SkPaint_getStyle">getStyle</a> | Returns <a href="#SkPaint_Style">Style</a>: stroke, fill, or both. | -| <a href="#SkPaint_getTextAlign">getTextAlign</a> | Returns <a href="#SkPaint_Align">Align</a>: left, center, or right. | -| <a href="#SkPaint_getTextBlobIntercepts">getTextBlobIntercepts</a> | Returns where lines intersect <a href="undocumented#Text_Blob">Text Blob</a>; underlines. | -| <a href="#SkPaint_getTextEncoding">getTextEncoding</a> | Returns character or glyph encoded size. b | -| <a href="#SkPaint_getTextIntercepts">getTextIntercepts</a> | Returns where lines intersect text; underlines. | -| <a href="#SkPaint_getTextPath">getTextPath</a> | Returns <a href="SkPath_Reference#Path">Path</a> equivalent to text. | -| <a href="#SkPaint_getTextScaleX">getTextScaleX</a> | Returns the text horizontal scale; condensed text. | -| <a href="#SkPaint_getTextSkewX">getTextSkewX</a> | Returns the text horizontal skew; oblique text. | -| <a href="#SkPaint_getTextSize">getTextSize</a> | Returns text size in points. | -| <a href="#SkPaint_getTextWidths">getTextWidths</a> | Returns advance and bounds for each glyph in text. | -| <a href="#SkPaint_getTypeface">getTypeface</a> | Returns <a href="undocumented#Typeface">Typeface</a>, font description. | -| <a href="#SkPaint_glyphsToUnichars">glyphsToUnichars</a> | Converts <a href="#Glyph">Glyphs</a> into text. | -| <a href="#SkPaint_isAntiAlias">isAntiAlias</a> | Returns true if Anti-alias is set. | -| <a href="#SkPaint_isAutohinted">isAutohinted</a> | Returns true if <a href="#Glyph">Glyphs</a> are always hinted. | -| <a href="#SkPaint_isDevKernText">isDevKernText</a> | Returns true if <a href="SkPaint_Reference#Full_Hinting_Spacing">Full Hinting Spacing</a> is set. | -| <a href="#SkPaint_isDither">isDither</a> | Returns true if <a href="#Dither">Dither</a> is set. | -| <a href="#SkPaint_isEmbeddedBitmapText">isEmbeddedBitmapText</a> | Returns true if <a href="SkPaint_Reference#Font_Embedded_Bitmaps">Font Embedded Bitmaps</a> is set. | -| <a href="#SkPaint_isFakeBoldText">isFakeBoldText</a> | Returns true if <a href="#Fake_Bold">Fake Bold</a> is set. | -| <a href="#SkPaint_isLCDRenderText">isLCDRenderText</a> | Returns true if <a href="SkPaint_Reference#LCD_Text">LCD Text</a> is set. | -| <a href="#SkPaint_isSrcOver">isSrcOver</a> | Returns true if <a href="undocumented#Blend_Mode">Blend Mode</a> is <a href="#SkBlendMode_kSrcOver">SkBlendMode::kSrcOver</a>. | -| <a href="#SkPaint_isSubpixelText">isSubpixelText</a> | Returns true if <a href="SkPaint_Reference#Subpixel_Text">Subpixel Text</a> is set. | -| <a href="#SkPaint_isVerticalText">isVerticalText</a> | Returns true if <a href="#Vertical_Text">Vertical Text</a> is set. | -| <a href="#SkPaint_measureText">measureText</a> | Returns advance width and bounds of text. | -| <a href="#SkPaint_nothingToDraw">nothingToDraw</a> | Returns true if <a href="#Paint">Paint</a> prevents all drawing. | -| <a href="#SkPaint_refColorFilter">refColorFilter</a> | References <a href="undocumented#Color_Filter">Color Filter</a>, how colors are altered. | -| <a href="#SkPaint_refDrawLooper">refDrawLooper</a> | References <a href="undocumented#Draw_Looper">Draw Looper</a>, multiple layers. | -| <a href="#SkPaint_refImageFilter">refImageFilter</a> | References <a href="undocumented#Image_Filter">Image Filter</a>, alter pixels; blur. | -| <a href="#SkPaint_refMaskFilter">refMaskFilter</a> | References <a href="undocumented#Mask_Filter">Mask Filter</a>, alterations to <a href="undocumented#Mask_Alpha">Mask Alpha</a>. | -| <a href="#SkPaint_refPathEffect">refPathEffect</a> | References <a href="undocumented#Path_Effect">Path Effect</a>, modifications to path geometry; dashing. | -| <a href="#SkPaint_refShader">refShader</a> | References <a href="undocumented#Shader">Shader</a>, multiple drawing colors; gradients. | -| <a href="#SkPaint_refTypeface">refTypeface</a> | References <a href="undocumented#Typeface">Typeface</a>, font description. | -| <a href="#SkPaint_reset">reset</a> | Sets to default values. | -| <a href="#SkPaint_setAlpha">setAlpha</a> | Sets <a href="#Alpha">Color Alpha</a>, color opacity. | -| <a href="#SkPaint_setAntiAlias">setAntiAlias</a> | Sets or clears Anti-alias. | -| <a href="#SkPaint_setARGB">setARGB</a> | Sets color by component. | -| <a href="#SkPaint_setAutohinted">setAutohinted</a> | Sets <a href="#Glyph">Glyphs</a> to always be hinted. | -| <a href="#SkPaint_setBlendMode">setBlendMode</a> | Sets <a href="undocumented#Blend_Mode">Blend Mode</a>, how colors combine with destination. | -| <a href="#SkPaint_setColor">setColor</a> | Sets <a href="#Alpha">Color Alpha</a> and <a href="#RGB">Color RGB</a>, one drawing color. | -| <a href="#SkPaint_setColorFilter">setColorFilter</a> | Sets <a href="undocumented#Color_Filter">Color Filter</a>, alters color. | -| <a href="#SkPaint_setDevKernText">setDevKernText</a> | Sets or clears <a href="SkPaint_Reference#Full_Hinting_Spacing">Full Hinting Spacing</a>. | -| <a href="#SkPaint_setDither">setDither</a> | Sets or clears <a href="#Dither">Dither</a>. | -| <a href="#SkPaint_setDrawLooper">setDrawLooper</a> | Sets <a href="undocumented#Draw_Looper">Draw Looper</a>, multiple layers. | -| <a href="#SkPaint_setEmbeddedBitmapText">setEmbeddedBitmapText</a> | Sets or clears <a href="SkPaint_Reference#Font_Embedded_Bitmaps">Font Embedded Bitmaps</a>. | -| <a href="#SkPaint_setFakeBoldText">setFakeBoldText</a> | Sets or clears <a href="#Fake_Bold">Fake Bold</a>. | -| <a href="#SkPaint_setFilterQuality">setFilterQuality</a> | Sets <a href="undocumented#Filter_Quality">Filter Quality</a>, the image filtering level. | -| <a href="#SkPaint_setFlags">setFlags</a> | Sets multiple <a href="#SkPaint_Flags">Flags</a> in a bit field. | -| <a href="#SkPaint_setHinting">setHinting</a> | Sets <a href="#SkPaint_Hinting">Hinting</a>, glyph outline adjustment level. | -| <a href="#SkPaint_setLCDRenderText">setLCDRenderText</a> | Sets or clears <a href="SkPaint_Reference#LCD_Text">LCD Text</a>. | -| <a href="#SkPaint_setMaskFilter">setMaskFilter</a> | Sets <a href="undocumented#Mask_Filter">Mask Filter</a>, alterations to <a href="undocumented#Mask_Alpha">Mask Alpha</a>. | -| <a href="#SkPaint_setPathEffect">setPathEffect</a> | Sets <a href="undocumented#Path_Effect">Path Effect</a>, modifications to path geometry; dashing. | -| <a href="#SkPaint_setImageFilter">setImageFilter</a> | Sets <a href="undocumented#Image_Filter">Image Filter</a>, alter pixels; blur. | -| <a href="#SkPaint_setShader">setShader</a> | Sets <a href="undocumented#Shader">Shader</a>, multiple drawing colors; gradients. | -| <a href="#SkPaint_setStrokeCap">setStrokeCap</a> | Sets <a href="#SkPaint_Cap">Cap</a>, the area drawn at path ends. | -| <a href="#SkPaint_setStrokeJoin">setStrokeJoin</a> | Sets <a href="#SkPaint_Join">Join</a>, geometry on path corners. | -| <a href="#SkPaint_setStrokeMiter">setStrokeMiter</a> | Sets <a href="#Miter_Limit">Miter Limit</a>, angles with sharp corners. | -| <a href="#SkPaint_setStrokeWidth">setStrokeWidth</a> | Sets thickness of the stroke. | -| <a href="#SkPaint_setStyle">setStyle</a> | Sets <a href="#SkPaint_Style">Style</a>: stroke, fill, or both. | -| <a href="#SkPaint_setSubpixelText">setSubpixelText</a> | Sets or clears <a href="SkPaint_Reference#Subpixel_Text">Subpixel Text</a>. | -| <a href="#SkPaint_setTextAlign">setTextAlign</a> | Sets <a href="#SkPaint_Align">Align</a>: left, center, or right. | -| <a href="#SkPaint_setTextEncoding">setTextEncoding</a> | Sets character or glyph encoded size. | -| <a href="#SkPaint_setTextScaleX">setTextScaleX</a> | Sets the text horizontal scale; condensed text. | -| <a href="#SkPaint_setTextSkewX">setTextSkewX</a> | Sets the text horizontal skew; oblique text. | -| <a href="#SkPaint_setTextSize">setTextSize</a> | Sets text size in points. | -| <a href="#SkPaint_setTypeface">setTypeface</a> | Sets <a href="undocumented#Typeface">Typeface</a>, font description. | -| <a href="#SkPaint_setVerticalText">setVerticalText</a> | Sets or clears <a href="#Vertical_Text">Vertical Text</a>. | -| <a href="#SkPaint_textToGlyphs">textToGlyphs</a> | Converts text into glyph indices. | -| <a href="#SkPaint_toString">toString</a> | Converts <a href="#Paint">Paint</a> to machine readable form. | -| <a href="#SkPaint_unflatten">unflatten</a> | Populates from a serialized stream. | +| <a href="#SkPaint_breakText">breakText</a> | returns text that fits in a width | +| <a href="#SkPaint_canComputeFastBounds">canComputeFastBounds</a> | returns true if settings allow for fast bounds computation | +| <a href="#SkPaint_computeFastBounds">computeFastBounds</a> | returns fill bounds for quick reject tests | +| <a href="#SkPaint_computeFastStrokeBounds">computeFastStrokeBounds</a> | returns stroke bounds for quick reject tests | +| <a href="#SkPaint_containsText">containsText</a> | returns if all text corresponds to <a href="#Glyph">Glyphs</a> | +| <a href="#SkPaint_countText">countText</a> | returns number of <a href="#Glyph">Glyphs</a> in text | +| <a href="#SkPaint_doComputeFastBounds">doComputeFastBounds</a> | returns bounds for quick reject tests | +| <a href="#SkPaint_flatten">flatten</a> | serializes into a buffer | +| <a href="#SkPaint_getAlpha">getAlpha</a> | returns <a href="#Alpha">Color Alpha</a>, color opacity | +| <a href="#SkPaint_getBlendMode">getBlendMode</a> | returns <a href="undocumented#Blend_Mode">Blend Mode</a>, how colors combine with <a href="undocumented#Device">Device</a> | +| <a href="#SkPaint_getColor">getColor</a> | returns <a href="#Alpha">Color Alpha</a> and <a href="#RGB">Color RGB</a>, one drawing color | +| <a href="#SkPaint_getColorFilter">getColorFilter</a> | returns <a href="undocumented#Color_Filter">Color Filter</a>, how colors are altered | +| <a href="#SkPaint_getDrawLooper">getDrawLooper</a> | returns <a href="undocumented#Draw_Looper">Draw Looper</a>, multiple layers | +| <a href="#SkPaint_getFillPath">getFillPath</a> | returns fill path equivalent to stroke | +| <a href="#SkPaint_getFilterQuality">getFilterQuality</a> | returns <a href="undocumented#Filter_Quality">Filter Quality</a>, image filtering level | +| <a href="#SkPaint_getFlags">getFlags</a> | returns <a href="#SkPaint_Flags">Flags</a> stored in a bit field | +| <a href="#SkPaint_getFontBounds">getFontBounds</a> | returns union all glyph bounds | +| <a href="#SkPaint_getFontMetrics">getFontMetrics</a> | returns <a href="undocumented#Typeface">Typeface</a> metrics scaled by text size | +| <a href="#SkPaint_getFontSpacing">getFontSpacing</a> | returns recommended spacing between lines | +| <a href="#SkPaint_getHash">getHash</a> | returns a shallow hash for equality checks | +| <a href="#SkPaint_getHinting">getHinting</a> | returns <a href="#SkPaint_Hinting">Hinting</a>, glyph outline adjustment level | +| <a href="#SkPaint_getImageFilter">getImageFilter</a> | returns <a href="undocumented#Image_Filter">Image Filter</a>, alter pixels; blur | +| <a href="#SkPaint_getMaskFilter">getMaskFilter</a> | returns <a href="undocumented#Mask_Filter">Mask Filter</a>, alterations to <a href="undocumented#Mask_Alpha">Mask Alpha</a> | +| <a href="#SkPaint_getPathEffect">getPathEffect</a> | returns <a href="undocumented#Path_Effect">Path Effect</a>, modifications to path geometry; dashing | +| <a href="#SkPaint_getPosTextHIntercepts">getPosTextHIntercepts</a> | returns where lines intersect horizontally positioned text; underlines | +| <a href="#SkPaint_getPosTextIntercepts">getPosTextIntercepts</a> | returns where lines intersect positioned text; underlines | +| <a href="#SkPaint_getPosTextPath">getPosTextPath</a> | returns <a href="SkPath_Reference#Path">Path</a> equivalent to positioned text | +| <a href="#SkPaint_getShader">getShader</a> | returns <a href="undocumented#Shader">Shader</a>, multiple drawing colors; gradients | +| <a href="#SkPaint_getStrokeCap">getStrokeCap</a> | returns <a href="#SkPaint_Cap">Cap</a>, the area drawn at path ends | +| <a href="#SkPaint_getStrokeJoin">getStrokeJoin</a> | returns <a href="#SkPaint_Join">Join</a>, geometry on path corners | +| <a href="#SkPaint_getStrokeMiter">getStrokeMiter</a> | returns <a href="#Miter_Limit">Miter Limit</a>, angles with sharp corners | +| <a href="#SkPaint_getStrokeWidth">getStrokeWidth</a> | returns thickness of the stroke | +| <a href="#SkPaint_getStyle">getStyle</a> | returns <a href="#SkPaint_Style">Style</a>: stroke, fill, or both | +| <a href="#SkPaint_getTextAlign">getTextAlign</a> | returns <a href="#SkPaint_Align">Align</a>: left, center, or right | +| <a href="#SkPaint_getTextBlobIntercepts">getTextBlobIntercepts</a> | returns where lines intersect <a href="undocumented#Text_Blob">Text Blob</a>; underlines | +| <a href="#SkPaint_getTextEncoding">getTextEncoding</a> | returns character or glyph encoded size | +| <a href="#SkPaint_getTextIntercepts">getTextIntercepts</a> | returns where lines intersect text; underlines | +| <a href="#SkPaint_getTextPath">getTextPath</a> | returns <a href="SkPath_Reference#Path">Path</a> equivalent to text | +| <a href="#SkPaint_getTextScaleX">getTextScaleX</a> | returns the text horizontal scale; condensed text | +| <a href="#SkPaint_getTextSize">getTextSize</a> | returns text size in points | +| <a href="#SkPaint_getTextSkewX">getTextSkewX</a> | returns the text horizontal skew; oblique text | +| <a href="#SkPaint_getTextWidths">getTextWidths</a> | returns advance and bounds for each glyph in text | +| <a href="#SkPaint_getTypeface">getTypeface</a> | returns <a href="undocumented#Typeface">Typeface</a>, font description | +| <a href="#SkPaint_glyphsToUnichars">glyphsToUnichars</a> | converts <a href="#Glyph">Glyphs</a> into text | +| <a href="#SkPaint_isAntiAlias">isAntiAlias</a> | returns true if Anti-alias is set | +| <a href="#SkPaint_isAutohinted">isAutohinted</a> | returns true if <a href="#Glyph">Glyphs</a> are always hinted | +| <a href="#SkPaint_isDevKernText">isDevKernText</a> | returns true if <a href="SkPaint_Reference#Full_Hinting_Spacing">Full Hinting Spacing</a> is set | +| <a href="#SkPaint_isDither">isDither</a> | returns true if <a href="#Dither">Dither</a> is set | +| <a href="#SkPaint_isEmbeddedBitmapText">isEmbeddedBitmapText</a> | returns true if <a href="SkPaint_Reference#Font_Embedded_Bitmaps">Font Embedded Bitmaps</a> is set | +| <a href="#SkPaint_isFakeBoldText">isFakeBoldText</a> | returns true if <a href="#Fake_Bold">Fake Bold</a> is set | +| <a href="#SkPaint_isLCDRenderText">isLCDRenderText</a> | returns true if <a href="SkPaint_Reference#LCD_Text">LCD Text</a> is set | +| <a href="#SkPaint_isSrcOver">isSrcOver</a> | returns true if <a href="undocumented#Blend_Mode">Blend Mode</a> is <a href="#SkBlendMode_kSrcOver">SkBlendMode::kSrcOver</a> | +| <a href="#SkPaint_isSubpixelText">isSubpixelText</a> | returns true if <a href="SkPaint_Reference#Subpixel_Text">Subpixel Text</a> is set | +| <a href="#SkPaint_isVerticalText">isVerticalText</a> | returns true if <a href="#Vertical_Text">Vertical Text</a> is set | +| <a href="#SkPaint_measureText">measureText</a> | returns advance width and bounds of text | +| <a href="#SkPaint_nothingToDraw">nothingToDraw</a> | returns true if <a href="#Paint">Paint</a> prevents all drawing | +| <a href="#SkPaint_refColorFilter">refColorFilter</a> | references <a href="undocumented#Color_Filter">Color Filter</a>, how colors are altered | +| <a href="#SkPaint_refDrawLooper">refDrawLooper</a> | references <a href="undocumented#Draw_Looper">Draw Looper</a>, multiple layers | +| <a href="#SkPaint_refImageFilter">refImageFilter</a> | references <a href="undocumented#Image_Filter">Image Filter</a>, alter pixels; blur | +| <a href="#SkPaint_refMaskFilter">refMaskFilter</a> | references <a href="undocumented#Mask_Filter">Mask Filter</a>, alterations to <a href="undocumented#Mask_Alpha">Mask Alpha</a> | +| <a href="#SkPaint_refPathEffect">refPathEffect</a> | references <a href="undocumented#Path_Effect">Path Effect</a>, modifications to path geometry; dashing | +| <a href="#SkPaint_refShader">refShader</a> | references <a href="undocumented#Shader">Shader</a>, multiple drawing colors; gradients | +| <a href="#SkPaint_refTypeface">refTypeface</a> | references <a href="undocumented#Typeface">Typeface</a>, font description | +| <a href="#SkPaint_reset">reset</a> | sets to default values | +| <a href="#SkPaint_setARGB">setARGB</a> | sets color by component | +| <a href="#SkPaint_setAlpha">setAlpha</a> | sets <a href="#Alpha">Color Alpha</a>, color opacity | +| <a href="#SkPaint_setAntiAlias">setAntiAlias</a> | sets or clears Anti-alias | +| <a href="#SkPaint_setAutohinted">setAutohinted</a> | sets <a href="#Glyph">Glyphs</a> to always be hinted | +| <a href="#SkPaint_setBlendMode">setBlendMode</a> | sets <a href="undocumented#Blend_Mode">Blend Mode</a>, how colors combine with destination | +| <a href="#SkPaint_setColor">setColor</a> | sets <a href="#Alpha">Color Alpha</a> and <a href="#RGB">Color RGB</a>, one drawing color | +| <a href="#SkPaint_setColorFilter">setColorFilter</a> | sets <a href="undocumented#Color_Filter">Color Filter</a>, alters color | +| <a href="#SkPaint_setDevKernText">setDevKernText</a> | sets or clears <a href="SkPaint_Reference#Full_Hinting_Spacing">Full Hinting Spacing</a> | +| <a href="#SkPaint_setDither">setDither</a> | sets or clears <a href="#Dither">Dither</a> | +| <a href="#SkPaint_setDrawLooper">setDrawLooper</a> | sets <a href="undocumented#Draw_Looper">Draw Looper</a>, multiple layers | +| <a href="#SkPaint_setEmbeddedBitmapText">setEmbeddedBitmapText</a> | sets or clears <a href="SkPaint_Reference#Font_Embedded_Bitmaps">Font Embedded Bitmaps</a> | +| <a href="#SkPaint_setFakeBoldText">setFakeBoldText</a> | sets or clears <a href="#Fake_Bold">Fake Bold</a> | +| <a href="#SkPaint_setFilterQuality">setFilterQuality</a> | sets <a href="undocumented#Filter_Quality">Filter Quality</a>, the image filtering level | +| <a href="#SkPaint_setFlags">setFlags</a> | sets multiple <a href="#SkPaint_Flags">Flags</a> in a bit field | +| <a href="#SkPaint_setHinting">setHinting</a> | sets <a href="#SkPaint_Hinting">Hinting</a>, glyph outline adjustment level | +| <a href="#SkPaint_setImageFilter">setImageFilter</a> | sets <a href="undocumented#Image_Filter">Image Filter</a>, alter pixels; blur | +| <a href="#SkPaint_setLCDRenderText">setLCDRenderText</a> | sets or clears <a href="SkPaint_Reference#LCD_Text">LCD Text</a> | +| <a href="#SkPaint_setMaskFilter">setMaskFilter</a> | sets <a href="undocumented#Mask_Filter">Mask Filter</a>, alterations to <a href="undocumented#Mask_Alpha">Mask Alpha</a> | +| <a href="#SkPaint_setPathEffect">setPathEffect</a> | sets <a href="undocumented#Path_Effect">Path Effect</a>, modifications to path geometry; dashing | +| <a href="#SkPaint_setShader">setShader</a> | sets <a href="undocumented#Shader">Shader</a>, multiple drawing colors; gradients | +| <a href="#SkPaint_setStrokeCap">setStrokeCap</a> | sets <a href="#SkPaint_Cap">Cap</a>, the area drawn at path ends | +| <a href="#SkPaint_setStrokeJoin">setStrokeJoin</a> | sets <a href="#SkPaint_Join">Join</a>, geometry on path corners | +| <a href="#SkPaint_setStrokeMiter">setStrokeMiter</a> | sets <a href="#Miter_Limit">Miter Limit</a>, angles with sharp corners | +| <a href="#SkPaint_setStrokeWidth">setStrokeWidth</a> | sets thickness of the stroke | +| <a href="#SkPaint_setStyle">setStyle</a> | sets <a href="#SkPaint_Style">Style</a>: stroke, fill, or both | +| <a href="#SkPaint_setSubpixelText">setSubpixelText</a> | sets or clears <a href="SkPaint_Reference#Subpixel_Text">Subpixel Text</a> | +| <a href="#SkPaint_setTextAlign">setTextAlign</a> | sets <a href="#SkPaint_Align">Align</a>: left, center, or right | +| <a href="#SkPaint_setTextEncoding">setTextEncoding</a> | sets character or glyph encoded size | +| <a href="#SkPaint_setTextScaleX">setTextScaleX</a> | sets the text horizontal scale; condensed text | +| <a href="#SkPaint_setTextSize">setTextSize</a> | sets text size in points | +| <a href="#SkPaint_setTextSkewX">setTextSkewX</a> | sets the text horizontal skew; oblique text | +| <a href="#SkPaint_setTypeface">setTypeface</a> | sets <a href="undocumented#Typeface">Typeface</a>, font description | +| <a href="#SkPaint_setVerticalText">setVerticalText</a> | sets or clears <a href="#Vertical_Text">Vertical Text</a> | +| <a href="#SkPaint_textToGlyphs">textToGlyphs</a> | converts text into glyph indices | +| <a href="#SkPaint_toString">toString</a> | converts <a href="#Paint">Paint</a> to machine readable form | +| <a href="#SkPaint_unflatten">unflatten</a> | populates from a serialized stream | # <a name="Initializers"></a> Initializers @@ -632,6 +643,8 @@ serialized data describing <a href="#Paint">Paint</a> content</td> ### Return Value +false if the <a href="#SkPaint_unflatten_buffer">buffer</a> contains invalid data + ### See Also <a href="undocumented#SkReadBuffer">SkReadBuffer</a> diff --git a/site/user/api/SkPath_Reference.md b/site/user/api/SkPath_Reference.md index e5900b364a..0924a80ff7 100644 --- a/site/user/api/SkPath_Reference.md +++ b/site/user/api/SkPath_Reference.md @@ -37,11 +37,6 @@ form fills or holes. <a href="#Fill_Type">Fill Type</a> also determines whether a new <a href="#Path">Path</a> independent of the original. Internally, the copy does not duplicate its contents until it is edited, to reduce memory use and improve performance. -## <a name="Subtopics"></a> Subtopics - -| topics | description | -| --- | --- | - ## <a name="Contour"></a> Contour <a href="#Contour">Contour</a> contains one or more <a href="#Verb">Verbs</a>, and as many <a href="#Point">Points</a> as @@ -97,121 +92,151 @@ Internally, <a href="#Path">Path</a> lazily computes metrics likes bounds and co # <a name="Overview"></a> Overview +## <a name="Subtopics"></a> Subtopics + +| name | description | +| --- | --- | +| <a href="#Overview_Classes_and_Structs">Classes and Structs</a> | embedded struct and class members | +| <a href="#Overview_Constants">Constants</a> | enum and enum class, const values | +| <a href="#Overview_Constructors">Constructors</a> | functions that construct <a href="#SkPath">SkPath</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | static functions and member methods | +| <a href="#Overview_Operators">Operators</a> | operator overloading methods | +| <a href="#Overview_Related_Functions">Related Functions</a> | similar methods grouped together | + +## <a name="Related_Functions"></a> Related Functions + +| name | description | +| --- | --- | +| <a href="#Conic">Conic</a> | conic section defined by three points and a weight | +| <a href="#Conic_Weight">Conic Weight</a> | strength of control <a href="SkPoint_Reference#Point">Point</a> in <a href="#Conic">Conic</a> | +| <a href="#Contour">Contour</a> | loop of lines and curves | +| <a href="#SkPath_Convexity">Convexity</a> | if <a href="#Path">Path</a> is concave or convex | +| <a href="#Cubic">Cubic Bezier</a> | third order curve defined by four points | +| <a href="#SkPath_Direction">Direction</a> | <a href="#Path">Path</a> contour orientation | +| <a href="#Fill_Type">Fill Type</a> | <a href="#Path">Path</a> fill rule, normal and inverted | +| <a href="#Last_Point">Last Point</a> | final <a href="SkPoint_Reference#Point">Point</a> in <a href="#Contour">Contour</a> | +| <a href="#Point_Array">Point Array</a> | end points and control points for lines and curves | +| <a href="#Quad">Quadratic Bezier</a> | parabolic section defined by three points | +| <a href="#Verb_Array">Verb Array</a> | line and curve type for points | +| <a href="#Verb">Verbs</a> | <a href="#Path">Path</a> line and curve type | +| <a href="SkPath_Reference#Zero_Length">Zero Length Contour</a> | consideration when contour has no length | + ## <a name="Constants"></a> Constants -| constants | description | +| name | description | | --- | --- | -| <a href="#SkPath_AddPathMode">AddPathMode</a> | Sets <a href="#SkPath_addPath">addPath</a> options. | -| <a href="#SkPath_ArcSize">ArcSize</a> | Used by <a href="#SkPath_arcTo_4">arcTo(SkScalar rx, SkScalar ry, SkScalar xAxisRotate, ArcSize largeArc, Direction sweep, SkScalar x, SkScalar y)</a>. | -| <a href="#SkPath_Convexity">Convexity</a> | Returns if <a href="#Path">Path</a> is convex or concave. | -| <a href="#SkPath_Direction">Direction</a> | Sets <a href="#Contour">Contour</a> clockwise or counterclockwise. | -| <a href="#SkPath_FillType">FillType</a> | Sets winding rule and inverse fill. | -| <a href="#SkPath_SegmentMask">SegmentMask</a> | Returns <a href="#SkPath_Verb">Verb</a> types in <a href="#Path">Path</a>. | -| <a href="#SkPath_Verb">Verb</a> | Controls how <a href="#Path">Path</a> <a href="#Point">Points</a> are interpreted. | +| <a href="#SkPath_AddPathMode">AddPathMode</a> | sets <a href="#SkPath_addPath">addPath</a> options | +| <a href="#SkPath_ArcSize">ArcSize</a> | used by <a href="#SkPath_arcTo">arcTo</a> variation | +| <a href="#SkPath_Convexity">Convexity</a> | returns if <a href="#Path">Path</a> is convex or concave | +| <a href="#SkPath_Direction">Direction</a> | sets <a href="#Contour">Contour</a> clockwise or counterclockwise | +| <a href="#SkPath_FillType">FillType</a> | sets winding rule and inverse fill | +| <a href="#SkPath_SegmentMask">SegmentMask</a> | returns <a href="#SkPath_Verb">Verb</a> types in <a href="#Path">Path</a> | +| <a href="#SkPath_Verb">Verb</a> | controls how <a href="#Path">Path</a> <a href="#Point">Points</a> are interpreted | ## <a name="Classes_and_Structs"></a> Classes and Structs -| class or struct | description | +| name | description | | --- | --- | -| <a href="#SkPath_Iter">Iter</a> | Iterates through lines and curves, skipping degenerates. | -| <a href="#SkPath_RawIter">RawIter</a> | Iterates through lines and curves, including degenerates. | +| <a href="#SkPath_Iter">Iter</a> | iterates through lines and curves, skipping degenerates | +| <a href="#SkPath_RawIter">RawIter</a> | iterates through lines and curves, including degenerates | ## <a name="Constructors"></a> Constructors -| | description | +| name | description | | --- | --- | -| <a href="#SkPath_empty_constructor">SkPath()</a> | Constructs with default values. | -| <a href="#SkPath_copy_const_SkPath">SkPath(const SkPath& path)</a> | Makes a shallow copy. | -| | Decreases <a href="undocumented#Reference_Count">Reference Count</a> of owned objects. | +| <a href="#SkPath_empty_constructor">SkPath()</a> | constructs with default values | +| <a href="#SkPath_copy_const_SkPath">SkPath(const SkPath& path)</a> | makes a shallow copy | +| | decreases <a href="undocumented#Reference_Count">Reference Count</a> of owned objects | ## <a name="Operators"></a> Operators -| operator | description | +| name | description | | --- | --- | -| <a href="#SkPath_copy_operator">operator=(const SkPath& path)</a> | Makes a shallow copy. | -| <a href="#SkPath_equal_operator">operator==(const SkPath& a, const SkPath& b)</a> | Compares paths for equality. | -| <a href="#SkPath_notequal_operator">operator!=(const SkPath& a, const SkPath& b)</a> | Compares paths for inequality. | +| <a href="#SkPath_notequal_operator">operator!=(const SkPath& a, const SkPath& b)</a> | compares paths for inequality | +| <a href="#SkPath_copy_operator">operator=(const SkPath& path)</a> | makes a shallow copy | +| <a href="#SkPath_equal_operator">operator==(const SkPath& a, const SkPath& b)</a> | compares paths for equality | ## <a name="Member_Functions"></a> Member Functions -| function | description | +| name | description | | --- | --- | -| <a href="#SkPath_ConvertConicToQuads">ConvertConicToQuads</a> | Approximates <a href="#Conic">Conic</a> with <a href="#Quad">Quad</a> array. | -| <a href="#SkPath_ConvertToNonInverseFillType">ConvertToNonInverseFillType</a> | Returns <a href="#Fill_Type">Fill Type</a> representing inside geometry. | -| <a href="#SkPath_IsCubicDegenerate">IsCubicDegenerate</a> | Returns if <a href="#Cubic">Cubic</a> is very small. | -| <a href="#SkPath_IsInverseFillType">IsInverseFillType</a> | Returns if <a href="#Fill_Type">Fill Type</a> represents outside geometry. | -| <a href="#SkPath_IsLineDegenerate">IsLineDegenerate</a> | Returns if <a href="undocumented#Line">Line</a> is very small. | -| <a href="#SkPath_IsQuadDegenerate">IsQuadDegenerate</a> | Returns if <a href="#Quad">Quad</a> is very small. | -| <a href="#SkPath_addArc">addArc</a> | Adds one <a href="#Contour">Contour</a> containing <a href="#Arc">Arc</a>. | -| <a href="#SkPath_addCircle">addCircle</a> | Adds one <a href="#Contour">Contour</a> containing <a href="undocumented#Circle">Circle</a>. | -| <a href="#SkPath_addOval">addOval</a> | Adds one <a href="#Contour">Contour</a> containing <a href="undocumented#Oval">Oval</a>. | -| <a href="#SkPath_addPath">addPath</a> | Adds contents of <a href="#Path">Path</a>. | -| <a href="#SkPath_addPoly">addPoly</a> | Adds one <a href="#Contour">Contour</a> containing connected lines. | -| <a href="#SkPath_addRRect">addRRect</a> | Adds one <a href="#Contour">Contour</a> containing <a href="undocumented#Round_Rect">Round Rect</a>. | -| <a href="#SkPath_addRect">addRect</a> | Adds one <a href="#Contour">Contour</a> containing <a href="SkRect_Reference#Rect">Rect</a>. | -| <a href="#SkPath_addRoundRect">addRoundRect</a> | Adds one <a href="#Contour">Contour</a> containing <a href="undocumented#Round_Rect">Round Rect</a> with common corner radii. | -| <a href="#SkPath_arcTo">arcTo</a> | Appends <a href="#Arc">Arc</a>. | -| <a href="#SkPath_close">close</a> | Makes last <a href="#Contour">Contour</a> a loop. | -| <a href="#SkPath_computeTightBounds">computeTightBounds</a> | Returns extent of geometry. | -| <a href="#SkPath_conicTo">conicTo</a> | Appends <a href="#Conic">Conic</a>. | -| <a href="#SkPath_conservativelyContainsRect">conservativelyContainsRect</a> | Returns true if <a href="SkRect_Reference#Rect">Rect</a> may be inside. | -| <a href="#SkPath_contains">contains</a> | Returns if <a href="SkPoint_Reference#Point">Point</a> is in fill area. | -| <a href="#SkPath_countPoints">countPoints</a> | Returns <a href="#Point_Array">Point Array</a> length. | -| <a href="#SkPath_countVerbs">countVerbs</a> | Returns <a href="#Verb_Array">Verb Array</a> length. | -| <a href="#SkPath_cubicTo">cubicTo</a> | Appends <a href="#Cubic">Cubic</a>. | -| <a href="#SkPath_dump_2">dump</a> | Sends text representation using floats to standard output. | -| <a href="#SkPath_dumpHex">dumpHex</a> | Sends text representation using hexadecimal to standard output. | -| <a href="#SkPath_getBounds">getBounds</a> | Returns maximum and minimum of <a href="#Point_Array">Point Array</a>. | -| <a href="#SkPath_getConvexity">getConvexity</a> | Returns geometry convexity, computing if necessary. | -| <a href="#SkPath_getConvexityOrUnknown">getConvexityOrUnknown</a> | Returns geometry convexity if known. | -| <a href="#SkPath_getFillType">getFillType</a> | Returns <a href="#Fill_Type">Fill Type</a>: winding, even-odd, inverse. | -| <a href="#SkPath_getGenerationID">getGenerationID</a> | Returns <a href="#SkPath_unique">unique</a> ID. | -| <a href="#SkPath_getLastPt">getLastPt</a> | Returns <a href="#Last_Point">Last Point</a>. | -| <a href="#SkPath_getPoint">getPoint</a> | Returns entry from <a href="#Point_Array">Point Array</a>. | -| <a href="#SkPath_getPoints">getPoints</a> | Returns <a href="#Point_Array">Point Array</a>. | -| <a href="#SkPath_getSegmentMasks">getSegmentMasks</a> | Returns types in <a href="#Verb_Array">Verb Array</a>. | -| <a href="#SkPath_getVerbs">getVerbs</a> | Returns <a href="#Verb_Array">Verb Array</a>. | -| <a href="#SkPath_incReserve">incReserve</a> | Hint to reserve space for additional data. | -| <a href="#SkPath_interpolate">interpolate</a> | Interpolates between <a href="#Path">Path</a> pair. | -| <a href="#SkPath_isConvex">isConvex</a> | Returns if geometry is convex. | -| <a href="#SkPath_isEmpty">isEmpty</a> | Returns if verb count is zero. | -| <a href="#SkPath_isFinite">isFinite</a> | Returns if all <a href="SkPoint_Reference#Point">Point</a> values are finite. | -| <a href="#SkPath_isInterpolatable">isInterpolatable</a> | Returns if pair <a href="#SkPath_contains">contains</a> equal counts of <a href="#Verb_Array">Verb Array</a> and <a href="#Weight">Weights</a>. | -| <a href="#SkPath_isInverseFillType">isInverseFillType</a> | Returns if <a href="#Fill_Type">Fill Type</a> fills outside geometry. | -| <a href="#SkPath_isLastContourClosed">isLastContourClosed</a> | Returns if final <a href="#Contour">Contour</a> forms a loop. | -| <a href="#SkPath_isLine">isLine</a> | Returns if describes <a href="undocumented#Line">Line</a>. | -| <a href="#SkPath_isNestedFillRects">isNestedFillRects</a> | Returns if describes <a href="SkRect_Reference#Rect">Rect</a> pair, one inside the other. | -| <a href="#SkPath_isOval">isOval</a> | Returns if describes <a href="undocumented#Oval">Oval</a>. | -| <a href="#SkPath_isRRect">isRRect</a> | Returns if describes <a href="undocumented#Round_Rect">Round Rect</a>. | -| <a href="#SkPath_isRect">isRect</a> | Returns if describes <a href="SkRect_Reference#Rect">Rect</a>. | -| <a href="#SkPath_isValid">isValid</a> | Returns if data is internally consistent. | -| <a href="#SkPath_isVolatile">isVolatile</a> | Returns if <a href="undocumented#Device">Device</a> should not cache. | -| <a href="#SkPath_lineTo">lineTo</a> | Appends <a href="undocumented#Line">Line</a>. | -| <a href="#SkPath_moveTo">moveTo</a> | Starts <a href="#Contour">Contour</a>. | -| <a href="#SkPath_offset">offset</a> | Translates <a href="#Point_Array">Point Array</a>. | -| <a href="#SkPath_quadTo">quadTo</a> | Appends <a href="#Quad">Quad</a>. | -| <a href="#SkPath_rArcTo">rArcTo</a> | Appends <a href="#Arc">Arc</a> relative to <a href="#Last_Point">Last Point</a>. | -| <a href="#SkPath_rConicTo">rConicTo</a> | Appends <a href="#Conic">Conic</a> relative to <a href="#Last_Point">Last Point</a>. | -| <a href="#SkPath_rCubicTo">rCubicTo</a> | Appends <a href="#Cubic">Cubic</a> relative to <a href="#Last_Point">Last Point</a>. | -| <a href="#SkPath_rLineTo">rLineTo</a> | Appends <a href="undocumented#Line">Line</a> relative to <a href="#Last_Point">Last Point</a>. | -| <a href="#SkPath_rMoveTo">rMoveTo</a> | Starts <a href="#Contour">Contour</a> relative to <a href="#Last_Point">Last Point</a>. | -| <a href="#SkPath_rQuadTo">rQuadTo</a> | Appends <a href="#Quad">Quad</a> relative to <a href="#Last_Point">Last Point</a>. | -| <a href="#SkPath_readFromMemory">readFromMemory</a> | Initializes from buffer. | -| <a href="#SkPath_reset">reset</a> | Removes <a href="#Verb_Array">Verb Array</a>, <a href="#Point_Array">Point Array</a>, and <a href="#Weight">Weights</a>; frees memory. | -| <a href="#SkPath_reverseAddPath">reverseAddPath</a> | Adds contents of <a href="#Path">Path</a> back to front. | -| <a href="#SkPath_rewind">rewind</a> | Removes <a href="#Verb_Array">Verb Array</a>, <a href="#Point_Array">Point Array</a>, and <a href="#Weight">Weights</a>; leaves memory allocated. | -| <a href="#SkPath_serialize">serialize</a> | Copies data to buffer. | -| <a href="#SkPath_setConvexity">setConvexity</a> | Sets if geometry is convex to avoid future computation. | -| <a href="#SkPath_setFillType">setFillType</a> | Sets <a href="#Fill_Type">Fill Type</a>: winding, even-odd, inverse. | -| <a href="#SkPath_setIsConvex">setIsConvex</a> | Deprecated. | -| <a href="#SkPath_setIsVolatile">setIsVolatile</a> | Sets if <a href="undocumented#Device">Device</a> should not cache. | -| <a href="#SkPath_setLastPt">setLastPt</a> | Replaces <a href="#Last_Point">Last Point</a>. | -| <a href="#SkPath_swap">swap</a> | Exchanges <a href="#Path">Path</a> pair. | -| <a href="#SkPath_toggleInverseFillType">toggleInverseFillType</a> | Toggles <a href="#Fill_Type">Fill Type</a> between inside and outside geometry. | -| <a href="#SkPath_transform">transform</a> | Applies <a href="SkMatrix_Reference#Matrix">Matrix</a> to <a href="#Point_Array">Point Array</a> and <a href="#Weight">Weights</a>. | -| <a href="#SkPath_unique">unique</a> | Returns if data has single owner. | -| <a href="#SkPath_updateBoundsCache">updateBoundsCache</a> | Refreshes result of <a href="#SkPath_getBounds">getBounds</a>. | -| <a href="#SkPath_writeToMemory">writeToMemory</a> | Copies data to buffer. | +| <a href="#SkPath_ConvertConicToQuads">ConvertConicToQuads</a> | approximates <a href="#Conic">Conic</a> with <a href="#Quad">Quad</a> array | +| <a href="#SkPath_ConvertToNonInverseFillType">ConvertToNonInverseFillType</a> | returns <a href="#Fill_Type">Fill Type</a> representing inside geometry | +| <a href="#SkPath_IsCubicDegenerate">IsCubicDegenerate</a> | returns if <a href="#Cubic">Cubic</a> is very small | +| <a href="#SkPath_IsInverseFillType">IsInverseFillType</a> | returns if <a href="#Fill_Type">Fill Type</a> represents outside geometry | +| <a href="#SkPath_IsLineDegenerate">IsLineDegenerate</a> | returns if <a href="undocumented#Line">Line</a> is very small | +| <a href="#SkPath_IsQuadDegenerate">IsQuadDegenerate</a> | returns if <a href="#Quad">Quad</a> is very small | +| <a href="#SkPath_addArc">addArc</a> | adds one <a href="#Contour">Contour</a> containing <a href="#Arc">Arc</a> | +| <a href="#SkPath_addCircle">addCircle</a> | adds one <a href="#Contour">Contour</a> containing <a href="undocumented#Circle">Circle</a> | +| <a href="#SkPath_addOval">addOval</a> | adds one <a href="#Contour">Contour</a> containing <a href="undocumented#Oval">Oval</a> | +| <a href="#SkPath_addPath">addPath</a> | adds contents of <a href="#Path">Path</a> | +| <a href="#SkPath_addPoly">addPoly</a> | adds one <a href="#Contour">Contour</a> containing connected lines | +| <a href="#SkPath_addRRect">addRRect</a> | adds one <a href="#Contour">Contour</a> containing <a href="undocumented#Round_Rect">Round Rect</a> | +| <a href="#SkPath_addRect">addRect</a> | adds one <a href="#Contour">Contour</a> containing <a href="SkRect_Reference#Rect">Rect</a> | +| <a href="#SkPath_addRoundRect">addRoundRect</a> | adds one <a href="#Contour">Contour</a> containing <a href="undocumented#Round_Rect">Round Rect</a> with common corner radii | +| <a href="#SkPath_arcTo">arcTo</a> | appends <a href="#Arc">Arc</a> | +| <a href="#SkPath_close">close</a> | makes last <a href="#Contour">Contour</a> a loop | +| <a href="#SkPath_computeTightBounds">computeTightBounds</a> | returns extent of geometry | +| <a href="#SkPath_conicTo">conicTo</a> | appends <a href="#Conic">Conic</a> | +| <a href="#SkPath_conservativelyContainsRect">conservativelyContainsRect</a> | returns true if <a href="SkRect_Reference#Rect">Rect</a> may be inside | +| <a href="#SkPath_contains">contains</a> | returns if <a href="SkPoint_Reference#Point">Point</a> is in fill area | +| <a href="#SkPath_countPoints">countPoints</a> | returns <a href="#Point_Array">Point Array</a> length | +| <a href="#SkPath_countVerbs">countVerbs</a> | returns <a href="#Verb_Array">Verb Array</a> length | +| <a href="#SkPath_cubicTo">cubicTo</a> | appends <a href="#Cubic">Cubic</a> | +| <a href="#SkPath_dump_2">dump</a> | sends text representation using floats to standard output | +| <a href="#SkPath_dumpHex">dumpHex</a> | sends text representation using hexadecimal to standard output | +| <a href="#SkPath_getBounds">getBounds</a> | returns maximum and minimum of <a href="#Point_Array">Point Array</a> | +| <a href="#SkPath_getConvexity">getConvexity</a> | returns geometry convexity, computing if necessary | +| <a href="#SkPath_getConvexityOrUnknown">getConvexityOrUnknown</a> | returns geometry convexity if known | +| <a href="#SkPath_getFillType">getFillType</a> | returns <a href="#Fill_Type">Fill Type</a>: winding, even-odd, inverse | +| <a href="#SkPath_getGenerationID">getGenerationID</a> | returns <a href="#SkPath_unique">unique</a> ID | +| <a href="#SkPath_getLastPt">getLastPt</a> | returns <a href="#Last_Point">Last Point</a> | +| <a href="#SkPath_getPoint">getPoint</a> | returns entry from <a href="#Point_Array">Point Array</a> | +| <a href="#SkPath_getPoints">getPoints</a> | returns <a href="#Point_Array">Point Array</a> | +| <a href="#SkPath_getSegmentMasks">getSegmentMasks</a> | returns types in <a href="#Verb_Array">Verb Array</a> | +| <a href="#SkPath_getVerbs">getVerbs</a> | returns <a href="#Verb_Array">Verb Array</a> | +| <a href="#SkPath_incReserve">incReserve</a> | reserves space for additional data | +| <a href="#SkPath_interpolate">interpolate</a> | interpolates between <a href="#Path">Path</a> pair | +| <a href="#SkPath_isConvex">isConvex</a> | returns if geometry is convex | +| <a href="#SkPath_isEmpty">isEmpty</a> | returns if verb count is zero | +| <a href="#SkPath_isFinite">isFinite</a> | returns if all <a href="SkPoint_Reference#Point">Point</a> values are finite | +| <a href="#SkPath_isInterpolatable">isInterpolatable</a> | returns if pair <a href="#SkPath_contains">contains</a> equal counts of <a href="#Verb_Array">Verb Array</a> and <a href="#Weight">Weights</a> | +| <a href="#SkPath_isInverseFillType">isInverseFillType</a> | returns if <a href="#Fill_Type">Fill Type</a> fills outside geometry | +| <a href="#SkPath_isLastContourClosed">isLastContourClosed</a> | returns if final <a href="#Contour">Contour</a> forms a loop | +| <a href="#SkPath_isLine">isLine</a> | returns if describes <a href="undocumented#Line">Line</a> | +| <a href="#SkPath_isNestedFillRects">isNestedFillRects</a> | returns if describes <a href="SkRect_Reference#Rect">Rect</a> pair, one inside the other | +| <a href="#SkPath_isOval">isOval</a> | returns if describes <a href="undocumented#Oval">Oval</a> | +| <a href="#SkPath_isRRect">isRRect</a> | returns if describes <a href="undocumented#Round_Rect">Round Rect</a> | +| <a href="#SkPath_isRect">isRect</a> | returns if describes <a href="SkRect_Reference#Rect">Rect</a> | +| <a href="#SkPath_isValid">isValid</a> | returns if data is internally consistent | +| <a href="#SkPath_isVolatile">isVolatile</a> | returns if <a href="undocumented#Device">Device</a> should not cache | +| <a href="#SkPath_lineTo">lineTo</a> | appends <a href="undocumented#Line">Line</a> | +| <a href="#SkPath_moveTo">moveTo</a> | starts <a href="#Contour">Contour</a> | +| <a href="#SkPath_offset">offset</a> | translates <a href="#Point_Array">Point Array</a> | +| <a href="#SkPath_pathRefIsValid">pathRefIsValid</a> | to be deprecated | +| <a href="#SkPath_quadTo">quadTo</a> | appends <a href="#Quad">Quad</a> | +| <a href="#SkPath_rArcTo">rArcTo</a> | appends <a href="#Arc">Arc</a> relative to <a href="#Last_Point">Last Point</a> | +| <a href="#SkPath_rConicTo">rConicTo</a> | appends <a href="#Conic">Conic</a> relative to <a href="#Last_Point">Last Point</a> | +| <a href="#SkPath_rCubicTo">rCubicTo</a> | appends <a href="#Cubic">Cubic</a> relative to <a href="#Last_Point">Last Point</a> | +| <a href="#SkPath_rLineTo">rLineTo</a> | appends <a href="undocumented#Line">Line</a> relative to <a href="#Last_Point">Last Point</a> | +| <a href="#SkPath_rMoveTo">rMoveTo</a> | starts <a href="#Contour">Contour</a> relative to <a href="#Last_Point">Last Point</a> | +| <a href="#SkPath_rQuadTo">rQuadTo</a> | appends <a href="#Quad">Quad</a> relative to <a href="#Last_Point">Last Point</a> | +| <a href="#SkPath_readFromMemory">readFromMemory</a> | Initializes from buffer | +| <a href="#SkPath_reset">reset</a> | removes <a href="#Verb_Array">Verb Array</a>, <a href="#Point_Array">Point Array</a>, and <a href="#Weight">Weights</a>; frees memory | +| <a href="#SkPath_reverseAddPath">reverseAddPath</a> | adds contents of <a href="#Path">Path</a> back to front | +| <a href="#SkPath_rewind">rewind</a> | removes <a href="#Verb_Array">Verb Array</a>, <a href="#Point_Array">Point Array</a>, and <a href="#Weight">Weights</a>, keeping memory | +| <a href="#SkPath_serialize">serialize</a> | copies data to buffer | +| <a href="#SkPath_setConvexity">setConvexity</a> | sets if geometry is convex to avoid future computation | +| <a href="#SkPath_setFillType">setFillType</a> | sets <a href="#Fill_Type">Fill Type</a>: winding, even-odd, inverse | +| <a href="#SkPath_setIsConvex">setIsConvex</a> | deprecated | +| <a href="#SkPath_setIsVolatile">setIsVolatile</a> | sets if <a href="undocumented#Device">Device</a> should not cache | +| <a href="#SkPath_setLastPt">setLastPt</a> | replaces <a href="#Last_Point">Last Point</a> | +| <a href="#SkPath_swap">swap</a> | exchanges <a href="#Path">Path</a> pair | +| <a href="#SkPath_toggleInverseFillType">toggleInverseFillType</a> | toggles <a href="#Fill_Type">Fill Type</a> between inside and outside geometry | +| <a href="#SkPath_transform">transform</a> | applies <a href="SkMatrix_Reference#Matrix">Matrix</a> to <a href="#Point_Array">Point Array</a> and <a href="#Weight">Weights</a> | +| <a href="#SkPath_unique">unique</a> | returns if data has single owner | +| <a href="#SkPath_updateBoundsCache">updateBoundsCache</a> | refreshes result of <a href="#SkPath_getBounds">getBounds</a> | +| <a href="#SkPath_writeToMemory">writeToMemory</a> | copies data to buffer | ## <a name="Verb"></a> Verb @@ -2634,7 +2659,7 @@ constructions are converted to <a href="#Conic">Conic</a> data when added to <a <table> <tr> <td><sup>1</sup> <a href="#SkPath_arcTo">arcTo(const SkRect& oval, SkScalar startAngle, SkScalar sweepAngle, bool forceMoveTo)</a></td> </tr> <tr> <td><sup>2</sup> parameter sets force MoveTo</td> </tr> <tr> - <td><sup>3</sup> start angle must be multiple of 90 degrees.</td> </tr> <tr> + <td><sup>3</sup> start angle must be multiple of 90 degrees</td> </tr> <tr> <td><sup>4</sup> <a href="#SkPath_arcTo_2">arcTo(SkScalar x1, SkScalar y1, SkScalar x2, SkScalar y2, SkScalar radius)</a></td> </tr> <tr> <td><sup>5</sup> <a href="#SkPath_arcTo_4">arcTo(SkScalar rx, SkScalar ry, SkScalar xAxisRotate, ArcSize largeArc, Direction sweep, SkScalar x, SkScalar y)</a></td> </tr> diff --git a/site/user/api/SkPixmap_Reference.md b/site/user/api/SkPixmap_Reference.md index 7fa4bb7aa2..678fbec0bc 100644 --- a/site/user/api/SkPixmap_Reference.md +++ b/site/user/api/SkPixmap_Reference.md @@ -19,58 +19,66 @@ to manage pixel memory; <a href="undocumented#Pixel_Ref">Pixel Ref</a> is safe a ## <a name="Subtopics"></a> Subtopics -| topics | description | +| name | description | | --- | --- | -| <a href="#Image_Info_Access">Image Info Access</a> | Returns all or part of <a href="undocumented#Image_Info">Image Info</a>. | -| <a href="#Initialization">Initialization</a> | Sets fields for use. | -| <a href="#Reader">Reader</a> | Examine pixel value. | -| <a href="#Writer">Writer</a> | Copy to pixel values. | -| <a href="#Readable_Address">Readable Address</a> | Returns read only pixels. | -| <a href="#Writable_Address">Writable Address</a> | Returns writable pixels. | +| <a href="#Overview_Constructors">Constructors</a> | list of functions that construct <a href="SkPath_Reference#SkPath">SkPath</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | list of static functions and member methods | +| <a href="#Overview_Related_Functions">Related Functions</a> | similar methods grouped together | + +## <a name="Related_Functions"></a> Related Functions + +| name | description | +| --- | --- | +| <a href="#Image_Info_Access">Image Info Access</a> | returns all or part of <a href="undocumented#Image_Info">Image Info</a> | +| <a href="#Initialization">Initialization</a> | sets fields for use | +| <a href="#Readable_Address">Readable Address</a> | returns read only pixels | +| <a href="#Reader">Reader</a> | examine pixel value | +| <a href="#Writable_Address">Writable Address</a> | returns writable pixels | +| <a href="#Writer">Writer</a> | copy to pixel values | ## <a name="Constructors"></a> Constructors | | description | | --- | --- | -| <a href="#SkPixmap_empty_constructor">SkPixmap()</a> | Constructs with default values. | -| <a href="#SkPixmap_const_SkImageInfo_const_star">SkPixmap(const SkImageInfo& info, const void* addr, size t rowBytes)</a> | Constructs from <a href="undocumented#Image_Info">Image Info</a>, pixels. | +| <a href="#SkPixmap_empty_constructor">SkPixmap()</a> | constructs with default values | +| <a href="#SkPixmap_const_SkImageInfo_const_star">SkPixmap(const SkImageInfo& info, const void* addr, size t rowBytes)</a> | constructs from <a href="undocumented#Image_Info">Image Info</a>, pixels | ## <a name="Member_Functions"></a> Member Functions -| function | description | +| name | description | | --- | --- | -| <a href="#SkPixmap_addr">addr</a> | Returns readable pixel address as void pointer. | -| <a href="#SkPixmap_addr16">addr16</a> | Returns readable pixel address as 16-bit pointer. | -| <a href="#SkPixmap_addr32">addr32</a> | Returns readable pixel address as 32-bit pointer. | -| <a href="#SkPixmap_addr64">addr64</a> | Returns readable pixel address as 64-bit pointer. | -| <a href="#SkPixmap_addr8">addr8</a> | Returns readable pixel address as 8-bit pointer. | -| <a href="#SkPixmap_addrF16">addrF16</a> | Returns readable pixel component address as 16-bit pointer. | -| <a href="#SkPixmap_alphaType">alphaType</a> | Returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Image_Alpha_Type">Alpha Type</a>. | -| <a href="#SkPixmap_bounds">bounds</a> | Returns <a href="#SkPixmap_width">width</a> and <a href="#SkPixmap_height">height</a> as Rectangle. | -| <a href="#SkPixmap_colorSpace">colorSpace</a> | Returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Color_Space">Color Space</a>. | -| <a href="#SkPixmap_colorType">colorType</a> | Returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Image_Color_Type">Color Type</a>. | -| <a href="#SkPixmap_computeByteSize">computeByteSize</a> | Returns size required for pixels. | -| <a href="#SkPixmap_computeIsOpaque">computeIsOpaque</a> | Returns true if all pixels are opaque. | -| <a href="#SkPixmap_erase">erase</a> | Writes <a href="undocumented#Color">Color</a> to pixels. | -| <a href="#SkPixmap_extractSubset">extractSubset</a> | Sets pointer to portion of original. | -| <a href="#SkPixmap_getColor">getColor</a> | Returns one pixel as <a href="#Unpremultiply">Unpremultiplied</a> <a href="undocumented#Color">Color</a>. | -| <a href="#SkPixmap_height">height</a> | Returns pixel row count. | -| <a href="#SkPixmap_info">info</a> | Returns <a href="undocumented#Image_Info">Image Info</a>. | -| <a href="#SkPixmap_isOpaque">isOpaque</a> | Returns true if <a href="undocumented#Image_Info">Image Info</a> describes opaque pixels. | -| <a href="#SkPixmap_readPixels">readPixels</a> | Copies and converts pixels. | -| <a href="#SkPixmap_reset">reset</a> | Reuses existing <a href="#Pixmap">Pixmap</a> with replacement values. | -| <a href="#SkPixmap_rowBytes">rowBytes</a> | Returns interval between rows in bytes. | -| <a href="#SkPixmap_rowBytesAsPixels">rowBytesAsPixels</a> | Returns interval between rows in pixels. | -| <a href="#SkPixmap_scalePixels">scalePixels</a> | Scales and converts pixels. | -| <a href="#SkPixmap_setColorSpace">setColorSpace</a> | Sets <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Color_Space">Color Space</a>. | -| <a href="#SkPixmap_shiftPerPixel">shiftPerPixel</a> | Returns bit shift from pixels to bytes. | -| <a href="#SkPixmap_width">width</a> | Returns pixel column count. | -| <a href="#SkPixmap_writable_addr">writable addr</a> | Returns writable pixel address as void pointer. | -| <a href="#SkPixmap_writable_addr16">writable addr16</a> | Returns writable pixel address as 16-bit pointer. | -| <a href="#SkPixmap_writable_addr32">writable addr32</a> | Returns writable pixel address as 32-bit pointer. | -| <a href="#SkPixmap_writable_addr64">writable addr64</a> | Returns writable pixel address as 64-bit pointer. | -| <a href="#SkPixmap_writable_addr8">writable addr8</a> | Returns writable pixel address as 8-bit pointer. | -| <a href="#SkPixmap_writable_addrF16">writable addrF16</a> | Returns writable pixel component address as 16-bit pointer. | +| <a href="#SkPixmap_addr">addr</a> | returns readable pixel address as void pointer | +| <a href="#SkPixmap_addr16">addr16</a> | returns readable pixel address as 16-bit pointer | +| <a href="#SkPixmap_addr32">addr32</a> | returns readable pixel address as 32-bit pointer | +| <a href="#SkPixmap_addr64">addr64</a> | returns readable pixel address as 64-bit pointer | +| <a href="#SkPixmap_addr8">addr8</a> | returns readable pixel address as 8-bit pointer | +| <a href="#SkPixmap_addrF16">addrF16</a> | returns readable pixel component address as 16-bit pointer | +| <a href="#SkPixmap_alphaType">alphaType</a> | returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Image_Alpha_Type">Alpha Type</a> | +| <a href="#SkPixmap_bounds">bounds</a> | returns <a href="#SkPixmap_width">width</a> and <a href="#SkPixmap_height">height</a> as Rectangle | +| <a href="#SkPixmap_colorSpace">colorSpace</a> | returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Color_Space">Color Space</a> | +| <a href="#SkPixmap_colorType">colorType</a> | returns <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Image_Color_Type">Color Type</a> | +| <a href="#SkPixmap_computeByteSize">computeByteSize</a> | returns size required for pixels | +| <a href="#SkPixmap_computeIsOpaque">computeIsOpaque</a> | returns true if all pixels are opaque | +| <a href="#SkPixmap_erase">erase</a> | writes <a href="undocumented#Color">Color</a> to pixels | +| <a href="#SkPixmap_extractSubset">extractSubset</a> | sets pointer to portion of original | +| <a href="#SkPixmap_getColor">getColor</a> | returns one pixel as <a href="#Unpremultiply">Unpremultiplied</a> <a href="undocumented#Color">Color</a> | +| <a href="#SkPixmap_height">height</a> | returns pixel row count | +| <a href="#SkPixmap_info">info</a> | returns <a href="undocumented#Image_Info">Image Info</a> | +| <a href="#SkPixmap_isOpaque">isOpaque</a> | returns true if <a href="undocumented#Image_Info">Image Info</a> describes opaque pixels | +| <a href="#SkPixmap_readPixels">readPixels</a> | copies and converts pixels | +| <a href="#SkPixmap_reset">reset</a> | reuses existing <a href="#Pixmap">Pixmap</a> with replacement values | +| <a href="#SkPixmap_rowBytes">rowBytes</a> | returns interval between rows in bytes | +| <a href="#SkPixmap_rowBytesAsPixels">rowBytesAsPixels</a> | returns interval between rows in pixels | +| <a href="#SkPixmap_scalePixels">scalePixels</a> | scales and converts pixels | +| <a href="#SkPixmap_setColorSpace">setColorSpace</a> | sets <a href="undocumented#Image_Info">Image Info</a> <a href="undocumented#Color_Space">Color Space</a> | +| <a href="#SkPixmap_shiftPerPixel">shiftPerPixel</a> | returns bit shift from pixels to bytes | +| <a href="#SkPixmap_width">width</a> | returns pixel column count | +| <a href="#SkPixmap_writable_addr">writable addr</a> | returns writable pixel address as void pointer | +| <a href="#SkPixmap_writable_addr16">writable addr16</a> | returns writable pixel address as 16-bit pointer | +| <a href="#SkPixmap_writable_addr32">writable addr32</a> | returns writable pixel address as 32-bit pointer | +| <a href="#SkPixmap_writable_addr64">writable addr64</a> | returns writable pixel address as 64-bit pointer | +| <a href="#SkPixmap_writable_addr8">writable addr8</a> | returns writable pixel address as 8-bit pointer | +| <a href="#SkPixmap_writable_addrF16">writable addrF16</a> | returns writable pixel component address as 16-bit pointer | ## <a name="Initialization"></a> Initialization diff --git a/site/user/api/SkPoint_Reference.md b/site/user/api/SkPoint_Reference.md index 9e64611897..8c49256df0 100644 --- a/site/user/api/SkPoint_Reference.md +++ b/site/user/api/SkPoint_Reference.md @@ -12,14 +12,20 @@ SkPoint Reference | topics | description | | --- | --- | +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkPoint_Make">Make</a> | Constructs from <a href="undocumented#SkScalar">SkScalar</a> inputs. | + ## <a name="Operators"></a> Operators -| description | function | +| name | description | | --- | --- | | <a href="#SkPoint">SkPoint</a> <a href="#SkPoint_multiply_operator">operator*(SkScalar scale) const</a> | Returns <a href="#Point">Point</a> multiplied by <a href="#SkPoint_scale">scale</a>. | +| <a href="#SkPoint">SkPoint</a> <a href="#SkPoint_add_operator">operator+(const SkPoint& a, const SkVector& b)</a> | Returns <a href="#Point">Point</a> <a href="#SkPoint_offset">offset</a> by <a href="SkPoint_Reference#Vector">Vector</a>. | | <a href="#SkPoint">SkPoint</a> <a href="#SkPoint_minus_operator">operator-() const</a> | Reverses sign of <a href="#Point">Point</a>. | | <a href="#SkPoint">SkPoint</a>& <a href="#SkPoint_multiplyby_operator">operator*=(SkScalar scale)</a> | Multiplies <a href="#Point">Point</a> by <a href="#SkPoint_scale">scale</a> factor. | -| <a href="#SkPoint">SkPoint</a> <a href="#SkPoint_add_operator">operator+(const SkPoint& a, const SkVector& b)</a> | Returns <a href="#Point">Point</a> <a href="#SkPoint_offset">offset</a> by <a href="SkPoint_Reference#Vector">Vector</a>. | | <a href="SkPoint_Reference#SkVector">SkVector</a> <a href="#SkPoint_subtract_operator">operator-(const SkPoint& a, const SkPoint& b)</a> | Returns <a href="SkPoint_Reference#Vector">Vector</a> between <a href="#Point">Points</a>. | | bool <a href="#SkPoint_notequal_operator">operator!=(const SkPoint& a, const SkPoint& b)</a> | Returns true if <a href="#Point">Point</a> are unequal. | | bool <a href="#SkPoint_equal_operator">operator==(const SkPoint& a, const SkPoint& b)</a> | Returns true if <a href="#Point">Point</a> are equal. | @@ -28,7 +34,7 @@ SkPoint Reference ## <a name="Member_Functions"></a> Member Functions -| description | function | +| name | description | | --- | --- | | <a href="#SkPoint_CrossProduct">CrossProduct</a> | Returns <a href="#SkPoint_cross">cross</a> product. | | <a href="#SkPoint_Distance">Distance</a> | Returns straight-line distance between points. | diff --git a/site/user/api/SkRect_Reference.md b/site/user/api/SkRect_Reference.md index 4a571751a7..a8bd2e7415 100644 --- a/site/user/api/SkRect_Reference.md +++ b/site/user/api/SkRect_Reference.md @@ -19,71 +19,93 @@ integer input cannot convert to <a href="undocumented#SkScalar">SkScalar</a> wit | topics | description | | --- | --- | +| <a href="#Overview_Constructors">Constructors</a> | functions that construct <a href="SkPath_Reference#SkPath">SkPath</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | static functions and member methods | +| <a href="#Overview_Operators">Operators</a> | operator overloading methods | + +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkRect_Make">Make</a> | constructs from <a href="undocumented#ISize">ISize</a> returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_MakeEmpty">MakeEmpty</a> | constructs from bounds of (0, 0, 0, 0) | +| <a href="#SkRect_MakeFromIRect">MakeFromIRect</a> | deprecated | +| <a href="#SkRect_MakeIWH">MakeIWH</a> | constructs from int input returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_MakeLTRB">MakeLTRB</a> | constructs from <a href="undocumented#SkScalar">SkScalar</a> <a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a> | +| <a href="#SkRect_MakeLargest">MakeLargest</a> | deprecated | +| <a href="#SkRect_MakeSize">MakeSize</a> | constructs from <a href="undocumented#Size">Size</a> returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_MakeWH">MakeWH</a> | constructs from <a href="undocumented#SkScalar">SkScalar</a> input returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_MakeXYWH">MakeXYWH</a> | constructs from <a href="undocumented#SkScalar">SkScalar</a> input returning (<a href="#SkRect_x">x</a>, <a href="#SkRect_y">y</a>, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_makeInset">makeInset</a> | constructs from sides moved symmetrically about the center | +| <a href="#SkRect_makeOffset">makeOffset</a> | constructs from translated sides | +| <a href="#SkRect_makeOutset">makeOutset</a> | constructs from sides moved symmetrically about the center | +| <a href="#SkRect_makeSorted">makeSorted</a> | constructs, ordering sides from smaller to larger | ## <a name="Operators"></a> Operators | description | function | | --- | --- | -| bool <a href="#SkRect_notequal_operator">operator!=(const SkRect& a, const SkRect& b)</a> | Returns true if members are unequal. | -| bool <a href="#SkRect_equal_operator">operator==(const SkRect& a, const SkRect& b)</a> | Returns true if members are equal. | +| bool <a href="#SkRect_notequal_operator">operator!=(const SkRect& a, const SkRect& b)</a> | returns true if members are unequal | +| bool <a href="#SkRect_equal_operator">operator==(const SkRect& a, const SkRect& b)</a> | returns true if members are equal | ## <a name="Member_Functions"></a> Member Functions | description | function | | --- | --- | -| <a href="#SkRect_Intersects">Intersects</a> | Returns true if areas overlap. | -| <a href="#SkRect_Make">Make</a> | Constructs from <a href="undocumented#ISize">ISize</a> returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>). | -| <a href="#SkRect_MakeEmpty">MakeEmpty</a> | Constructs from bounds of (0, 0, 0, 0). | -| <a href="#SkRect_MakeFromIRect">MakeFromIRect</a> | Deprecated. | -| <a href="#SkRect_MakeIWH">MakeIWH</a> | Constructs from int input returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>). | -| <a href="#SkRect_MakeLTRB">MakeLTRB</a> | Constructs from <a href="undocumented#SkScalar">SkScalar</a> <a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a>. | -| <a href="#SkRect_MakeSize">MakeSize</a> | Constructs from <a href="undocumented#Size">Size</a> returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>). | -| <a href="#SkRect_MakeWH">MakeWH</a> | Constructs from <a href="undocumented#SkScalar">SkScalar</a> input returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>). | -| <a href="#SkRect_MakeXYWH">MakeXYWH</a> | Constructs from <a href="undocumented#SkScalar">SkScalar</a> input returning (<a href="#SkRect_x">x</a>, <a href="#SkRect_y">y</a>, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>). | -| <a href="#SkRect_asScalars">asScalars</a> | Returns pointer to members as array. | -| <a href="#SkRect_bottom">bottom</a> | Returns larger bounds in <a href="#SkRect_y">y</a>, if sorted. | -| <a href="#SkRect_centerX">centerX</a> | Returns midpoint in <a href="#SkRect_x">x</a>. | -| <a href="#SkRect_centerY">centerY</a> | Returns midpoint in <a href="#SkRect_y">y</a>. | -| <a href="#SkRect_contains">contains</a> | Returns true if points are equal or inside. | -| <a href="#SkRect_dump_2">dump</a> | Sends text representation using floats to standard output. | -| <a href="#SkRect_dumpHex">dumpHex</a> | Sends text representation using hexadecimal to standard output. | -| <a href="#SkRect_height">height</a> | Returns span in <a href="#SkRect_y">y</a>. | -| <a href="#SkRect_inset">inset</a> | Moves the sides symmetrically about the center. | -| <a href="#SkRect_intersect">intersect</a> | Sets to shared area; returns true if not empty. | -| <a href="#SkRect_intersects">intersects</a> | Returns true if areas overlap. | -| <a href="#SkRect_isEmpty">isEmpty</a> | Returns true if <a href="#SkRect_width">width</a> or <a href="#SkRect_height">height</a> are zero or negative. | -| <a href="#SkRect_isFinite">isFinite</a> | Returns true if no member is infinite or NaN. | -| <a href="#SkRect_isSorted">isSorted</a> | Returns true if <a href="#SkRect_width">width</a> or <a href="#SkRect_height">height</a> are zero or positive. | -| <a href="#SkRect_iset">iset</a> | Sets to int input (<a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a>). | -| <a href="#SkRect_isetWH">isetWH</a> | Sets to int input (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>). | -| <a href="#SkRect_join">join</a> | Sets to union of bounds. | -| <a href="#SkRect_joinNonEmptyArg">joinNonEmptyArg</a> | Sets to union of bounds, asserting that argument is not empty. | -| <a href="#SkRect_joinPossiblyEmptyRect">joinPossiblyEmptyRect</a> | Sets to union of bounds. Skips empty check for both. | -| <a href="#SkRect_left">left</a> | Returns smaller bounds in <a href="#SkRect_x">x</a>, if sorted. | -| <a href="#SkRect_makeInset">makeInset</a> | Constructs from sides moved symmetrically about the center. | -| <a href="#SkRect_makeOffset">makeOffset</a> | Constructs from translated sides. | -| <a href="#SkRect_makeOutset">makeOutset</a> | Constructs from sides moved symmetrically about the center. | -| <a href="#SkRect_makeSorted">makeSorted</a> | Constructs, ordering sides from smaller to larger. | -| <a href="#SkRect_offset">offset</a> | Translates sides without changing <a href="#SkRect_width">width</a> and <a href="#SkRect_height">height</a>. | -| <a href="#SkRect_offsetTo">offsetTo</a> | Translates to (<a href="#SkRect_x">x</a>, <a href="#SkRect_y">y</a>) without changing <a href="#SkRect_width">width</a> and <a href="#SkRect_height">height</a>. | -| <a href="#SkRect_outset">outset</a> | Moves the sides symmetrically about the center. | -| <a href="#SkRect_right">right</a> | Returns larger bounds in <a href="#SkRect_x">x</a>, if sorted. | -| <a href="#SkRect_round_2">round</a> | Sets members to nearest integer value. | -| <a href="#SkRect_roundIn">roundIn</a> | Sets members to nearest integer value towards opposite. | -| <a href="#SkRect_roundOut">roundOut</a> | Sets members to nearest integer value away from opposite. | -| <a href="#SkRect_set">set</a> | Sets to <a href="undocumented#SkScalar">SkScalar</a> input (<a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a>) and others. | -| <a href="#SkRect_setBounds">setBounds</a> | Sets to upper and lower limits of <a href="SkPoint_Reference#Point">Point</a> array. | -| <a href="#SkRect_setBoundsCheck">setBoundsCheck</a> | Sets to upper and lower limits of <a href="SkPoint_Reference#Point">Point</a> array. | -| <a href="#SkRect_setEmpty">setEmpty</a> | Sets to (0, 0, 0, 0). | -| <a href="#SkRect_setLTRB">setLTRB</a> | Sets to <a href="undocumented#SkScalar">SkScalar</a> input (<a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a>). | -| <a href="#SkRect_setWH">setWH</a> | Sets to <a href="undocumented#SkScalar">SkScalar</a> input (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>). | -| <a href="#SkRect_setXYWH">setXYWH</a> | Sets to <a href="undocumented#SkScalar">SkScalar</a> input (<a href="#SkRect_x">x</a>, <a href="#SkRect_y">y</a>, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>). | -| <a href="#SkRect_sort">sort</a> | Orders sides from smaller to larger. | -| <a href="#SkRect_toQuad">toQuad</a> | Returns four corners as <a href="SkPoint_Reference#Point">Point</a>. | -| <a href="#SkRect_top">top</a> | Returns smaller bounds in <a href="#SkRect_y">y</a>, if sorted. | -| <a href="#SkRect_width">width</a> | Returns span in <a href="#SkRect_x">x</a>. | -| <a href="#SkRect_x">x</a> | Returns bounds <a href="#SkRect_left">left</a>. | -| <a href="#SkRect_y">y</a> | Returns bounds <a href="#SkRect_top">top</a>. | +| <a href="#SkRect_Intersects">Intersects</a> | returns true if areas overlap | +| <a href="#SkRect_Make">Make</a> | constructs from <a href="undocumented#ISize">ISize</a> returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_MakeEmpty">MakeEmpty</a> | constructs from bounds of (0, 0, 0, 0) | +| <a href="#SkRect_MakeFromIRect">MakeFromIRect</a> | deprecated | +| <a href="#SkRect_MakeIWH">MakeIWH</a> | constructs from int input returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_MakeLTRB">MakeLTRB</a> | constructs from <a href="undocumented#SkScalar">SkScalar</a> <a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a> | +| <a href="#SkRect_MakeLargest">MakeLargest</a> | deprecated | +| <a href="#SkRect_MakeSize">MakeSize</a> | constructs from <a href="undocumented#Size">Size</a> returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_MakeWH">MakeWH</a> | constructs from <a href="undocumented#SkScalar">SkScalar</a> input returning (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_MakeXYWH">MakeXYWH</a> | constructs from <a href="undocumented#SkScalar">SkScalar</a> input returning (<a href="#SkRect_x">x</a>, <a href="#SkRect_y">y</a>, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_asScalars">asScalars</a> | returns pointer to members as array | +| <a href="#SkRect_bottom">bottom</a> | returns larger bounds in <a href="#SkRect_y">y</a>, if sorted | +| <a href="#SkRect_centerX">centerX</a> | returns midpoint in <a href="#SkRect_x">x</a> | +| <a href="#SkRect_centerY">centerY</a> | returns midpoint in <a href="#SkRect_y">y</a> | +| <a href="#SkRect_contains">contains</a> | returns true if points are equal or inside | +| <a href="#SkRect_dump_2">dump</a> | sends text representation to standard output using floats | +| <a href="#SkRect_dumpHex">dumpHex</a> | sends text representation to standard output using hexadecimal | +| <a href="#SkRect_height">height</a> | returns span in <a href="#SkRect_y">y</a> | +| <a href="#SkRect_inset">inset</a> | moves the sides symmetrically about the center | +| <a href="#SkRect_intersect">intersect</a> | sets to shared area; returns true if not empty | +| <a href="#SkRect_intersects">intersects</a> | returns true if areas overlap | +| <a href="#SkRect_isEmpty">isEmpty</a> | returns true if <a href="#SkRect_width">width</a> or <a href="#SkRect_height">height</a> are zero or negative | +| <a href="#SkRect_isFinite">isFinite</a> | returns true if no member is infinite or NaN | +| <a href="#SkRect_isSorted">isSorted</a> | returns true if <a href="#SkRect_width">width</a> or <a href="#SkRect_height">height</a> are zero or positive | +| <a href="#SkRect_iset">iset</a> | sets to int input (<a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a>) | +| <a href="#SkRect_isetWH">isetWH</a> | sets to int input (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_join">join</a> | sets to union of bounds | +| <a href="#SkRect_joinNonEmptyArg">joinNonEmptyArg</a> | sets to union of bounds, asserting that argument is not empty | +| <a href="#SkRect_joinPossiblyEmptyRect">joinPossiblyEmptyRect</a> | sets to union of bounds. Skips empty check for both | +| <a href="#SkRect_left">left</a> | returns smaller bounds in <a href="#SkRect_x">x</a>, if sorted | +| <a href="#SkRect_makeInset">makeInset</a> | constructs from sides moved symmetrically about the center | +| <a href="#SkRect_makeOffset">makeOffset</a> | constructs from translated sides | +| <a href="#SkRect_makeOutset">makeOutset</a> | constructs from sides moved symmetrically about the center | +| <a href="#SkRect_makeSorted">makeSorted</a> | constructs, ordering sides from smaller to larger | +| <a href="#SkRect_offset">offset</a> | translates sides without changing <a href="#SkRect_width">width</a> and <a href="#SkRect_height">height</a> | +| <a href="#SkRect_offsetTo">offsetTo</a> | translates to (<a href="#SkRect_x">x</a>, <a href="#SkRect_y">y</a>) without changing <a href="#SkRect_width">width</a> and <a href="#SkRect_height">height</a> | +| <a href="#SkRect_outset">outset</a> | moves the sides symmetrically about the center | +| <a href="#SkRect_right">right</a> | returns larger bounds in <a href="#SkRect_x">x</a>, if sorted | +| <a href="#SkRect_round_2">round</a> | sets members to nearest integer value | +| <a href="#SkRect_roundIn">roundIn</a> | sets members to nearest integer value towards opposite | +| <a href="#SkRect_roundOut">roundOut</a> | sets members to nearest integer value away from opposite | +| <a href="#SkRect_set">set</a> | sets to <a href="undocumented#SkScalar">SkScalar</a> input (<a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a>) and others | +| <a href="#SkRect_setBounds">setBounds</a> | sets to upper and lower limits of <a href="SkPoint_Reference#Point">Point</a> array | +| <a href="#SkRect_setBoundsCheck">setBoundsCheck</a> | sets to upper and lower limits of <a href="SkPoint_Reference#Point">Point</a> array | +| <a href="#SkRect_setEmpty">setEmpty</a> | sets to (0, 0, 0, 0) | +| <a href="#SkRect_setLTRB">setLTRB</a> | sets to <a href="undocumented#SkScalar">SkScalar</a> input (<a href="#SkRect_left">left</a>, <a href="#SkRect_top">top</a>, <a href="#SkRect_right">right</a>, <a href="#SkRect_bottom">bottom</a>) | +| <a href="#SkRect_setWH">setWH</a> | sets to <a href="undocumented#SkScalar">SkScalar</a> input (0, 0, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_setXYWH">setXYWH</a> | sets to <a href="undocumented#SkScalar">SkScalar</a> input (<a href="#SkRect_x">x</a>, <a href="#SkRect_y">y</a>, <a href="#SkRect_width">width</a>, <a href="#SkRect_height">height</a>) | +| <a href="#SkRect_sort">sort</a> | orders sides from smaller to larger | +| <a href="#SkRect_toQuad">toQuad</a> | returns four corners as <a href="SkPoint_Reference#Point">Point</a> | +| <a href="#SkRect_top">top</a> | returns smaller bounds in <a href="#SkRect_y">y</a>, if sorted | +| <a href="#SkRect_width">width</a> | returns span in <a href="#SkRect_x">x</a> | +| <a href="#SkRect_x">x</a> | returns bounds <a href="#SkRect_left">left</a> | +| <a href="#SkRect_y">y</a> | returns bounds <a href="#SkRect_top">top</a> | <a name="SkRect_fLeft"> <code><strong>SkScalar fLeft</strong></code> </a> diff --git a/site/user/api/SkSurface_Reference.md b/site/user/api/SkSurface_Reference.md index 58ec8ce6d9..3120e738c5 100644 --- a/site/user/api/SkSurface_Reference.md +++ b/site/user/api/SkSurface_Reference.md @@ -17,38 +17,56 @@ of the requested dimensions are zero, then nullptr will be returned. | topics | description | | --- | --- | +| <a href="#Overview_Constructors">Constructors</a> | functions that construct <a href="SkIPoint16_Reference#SkIPoint16">SkIPoint16</a> | +| <a href="#Overview_Member_Functions">Member Functions</a> | static functions and member methods | + +## <a name="Constructors"></a> Constructors + +| name | description | +| --- | --- | +| <a href="#SkSurface_MakeFromBackendRenderTarget">MakeFromBackendRenderTarget</a> | creates <a href="#Surface">Surface</a> from GPU memory buffer | +| <a href="#SkSurface_MakeFromBackendTexture">MakeFromBackendTexture</a> | creates <a href="#Surface">Surface</a> from GPU-backed texture | +| <a href="#SkSurface_MakeFromBackendTextureAsRenderTarget">MakeFromBackendTextureAsRenderTarget</a> | creates <a href="#Surface">Surface</a> from GPU-backed texture | +| <a href="#SkSurface_MakeNull">MakeNull</a> | creates <a href="#Surface">Surface</a> without backing pixels | +| <a href="#SkSurface_MakeRaster">MakeRaster</a> | creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> | +| <a href="#SkSurface_MakeRasterDirect">MakeRasterDirect</a> | creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="#Storage">Pixel Storage</a> | +| <a href="#SkSurface_MakeRasterDirectReleaseProc">MakeRasterDirectReleaseProc</a> | creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="#Storage">Pixel Storage</a> | +| <a href="#SkSurface_MakeRasterN32Premul">MakeRasterN32Premul</a> | creates <a href="#Surface">Surface</a> from <a href="#SkSurface_width">width</a>, <a href="#SkSurface_height">height</a> matching output | +| <a href="#SkSurface_MakeRenderTarget">MakeRenderTarget</a> | creates <a href="#Surface">Surface</a> pointing to new GPU memory buffer | +| <a href="#SkCanvas_makeSurface">SkCanvas::makeSurface</a> | creates <a href="#Surface">Surface</a> matching <a href="SkCanvas_Reference#Canvas">Canvas</a> <a href="undocumented#Image_Info">Image Info</a>, <a href="#Properties">Surface Properties</a> | +| <a href="#SkSurface_makeSurface">makeSurface</a> | creates a compatible <a href="#Surface">Surface</a> | ## <a name="Member_Functions"></a> Member Functions | description | function | | --- | --- | -| <a href="#SkSurface_MakeFromBackendRenderTarget">MakeFromBackendRenderTarget</a> | Creates <a href="#Surface">Surface</a> from GPU memory buffer. | -| <a href="#SkSurface_MakeFromBackendTexture">MakeFromBackendTexture</a> | Creates <a href="#Surface">Surface</a> from GPU-backed texture. | -| <a href="#SkSurface_MakeFromBackendTextureAsRenderTarget">MakeFromBackendTextureAsRenderTarget</a> | Creates <a href="#Surface">Surface</a> from GPU-backed texture. | -| <a href="#SkSurface_MakeNull">MakeNull</a> | Creates <a href="#Surface">Surface</a> without backing pixels. | -| <a href="#SkSurface_MakeRaster">MakeRaster</a> | Creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a>. | -| <a href="#SkSurface_MakeRasterDirect">MakeRasterDirect</a> | Creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="#Storage">Pixel Storage</a>. | -| <a href="#SkSurface_MakeRasterDirectReleaseProc">MakeRasterDirectReleaseProc</a> | Creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="#Storage">Pixel Storage</a>. | -| <a href="#SkSurface_MakeRasterN32Premul">MakeRasterN32Premul</a> | Creates <a href="#Surface">Surface</a> from <a href="#SkSurface_width">width</a>, <a href="#SkSurface_height">height</a> matching output. | -| <a href="#SkSurface_MakeRenderTarget">MakeRenderTarget</a> | Creates <a href="#Surface">Surface</a> pointing to new GPU memory buffer. | -| <a href="#SkSurface_characterize">characterize</a> | Set up <a href="#Characterization">Surface Characterization</a> for threaded pre-processing. | -| <a href="#SkSurface_draw">draw</a> | Draws <a href="#Surface">Surface</a> contents to canvas. | -| <a href="#SkSurface_flush">flush</a> | Resolve pending I/O. | -| <a href="#SkSurface_flushAndSignalSemaphores">flushAndSignalSemaphores</a> | Resolve pending I/O, and signal. | -| <a href="#SkSurface_generationID">generationID</a> | Returns unique ID. | -| <a href="#SkSurface_getCanvas">getCanvas</a> | Returns <a href="SkCanvas_Reference#Canvas">Canvas</a> that draws into <a href="#Surface">Surface</a>. | -| <a href="#SkSurface_getRenderTargetHandle">getRenderTargetHandle</a> | Returns the GPU reference to render target. | -| <a href="#SkSurface_getTextureHandle">getTextureHandle</a> | Returns the GPU reference to texture. | -| <a href="#SkSurface_height">height</a> | Returns pixel row count. | -| <a href="#SkSurface_makeImageSnapshot">makeImageSnapshot</a> | Returns <a href="SkImage_Reference#Image">Image</a> capturing <a href="#Surface">Surface</a> contents. | -| <a href="#SkSurface_makeSurface">makeSurface</a> | Returns a compatible <a href="#Surface">Surface</a>. | -| <a href="#SkSurface_notifyContentWillChange">notifyContentWillChange</a> | Notifies that contents will be changed outside of Skia. | -| <a href="#SkSurface_peekPixels">peekPixels</a> | Copies <a href="#Surface">Surface</a> parameters to <a href="SkPixmap_Reference#Pixmap">Pixmap</a>. | -| <a href="#SkSurface_prepareForExternalIO">prepareForExternalIO</a> | To be deprecated. | -| <a href="#SkSurface_props">props</a> | Returns <a href="#Properties">Surface Properties</a>. | -| <a href="#SkSurface_readPixels">readPixels</a> | Copies <a href="SkRect_Reference#Rect">Rect</a> of pixels. | -| <a href="#SkSurface_wait">wait</a> | Pause commands until signaled. | -| <a href="#SkSurface_width">width</a> | Returns pixel column count. | +| <a href="#SkSurface_MakeFromBackendRenderTarget">MakeFromBackendRenderTarget</a> | creates <a href="#Surface">Surface</a> from GPU memory buffer | +| <a href="#SkSurface_MakeFromBackendTexture">MakeFromBackendTexture</a> | creates <a href="#Surface">Surface</a> from GPU-backed texture | +| <a href="#SkSurface_MakeFromBackendTextureAsRenderTarget">MakeFromBackendTextureAsRenderTarget</a> | creates <a href="#Surface">Surface</a> from GPU-backed texture | +| <a href="#SkSurface_MakeNull">MakeNull</a> | creates <a href="#Surface">Surface</a> without backing pixels | +| <a href="#SkSurface_MakeRaster">MakeRaster</a> | creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> | +| <a href="#SkSurface_MakeRasterDirect">MakeRasterDirect</a> | creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="#Storage">Pixel Storage</a> | +| <a href="#SkSurface_MakeRasterDirectReleaseProc">MakeRasterDirectReleaseProc</a> | creates <a href="#Surface">Surface</a> from <a href="undocumented#SkImageInfo">SkImageInfo</a> and <a href="#Storage">Pixel Storage</a> | +| <a href="#SkSurface_MakeRasterN32Premul">MakeRasterN32Premul</a> | creates <a href="#Surface">Surface</a> from <a href="#SkSurface_width">width</a>, <a href="#SkSurface_height">height</a> matching output | +| <a href="#SkSurface_MakeRenderTarget">MakeRenderTarget</a> | creates <a href="#Surface">Surface</a> pointing to new GPU memory buffer | +| <a href="#SkSurface_characterize">characterize</a> | sets <a href="#Characterization">Surface Characterization</a> for threaded pre-processing | +| <a href="#SkSurface_draw">draw</a> | draws <a href="#Surface">Surface</a> contents to canvas | +| <a href="#SkSurface_flush">flush</a> | resolve pending I/O | +| <a href="#SkSurface_flushAndSignalSemaphores">flushAndSignalSemaphores</a> | resolve pending I/O, and signal | +| <a href="#SkSurface_generationID">generationID</a> | returns unique ID | +| <a href="#SkSurface_getCanvas">getCanvas</a> | returns <a href="SkCanvas_Reference#Canvas">Canvas</a> that draws into <a href="#Surface">Surface</a> | +| <a href="#SkSurface_getRenderTargetHandle">getRenderTargetHandle</a> | returns the GPU reference to render target | +| <a href="#SkSurface_getTextureHandle">getTextureHandle</a> | returns the GPU reference to texture | +| <a href="#SkSurface_height">height</a> | returns pixel row count | +| <a href="#SkSurface_makeImageSnapshot">makeImageSnapshot</a> | creates <a href="SkImage_Reference#Image">Image</a> capturing <a href="#Surface">Surface</a> contents | +| <a href="#SkSurface_makeSurface">makeSurface</a> | creates a compatible <a href="#Surface">Surface</a> | +| <a href="#SkSurface_notifyContentWillChange">notifyContentWillChange</a> | notifies that contents will be changed outside of Skia | +| <a href="#SkSurface_peekPixels">peekPixels</a> | copies <a href="#Surface">Surface</a> parameters to <a href="SkPixmap_Reference#Pixmap">Pixmap</a> | +| <a href="#SkSurface_prepareForExternalIO">prepareForExternalIO</a> | to be deprecated | +| <a href="#SkSurface_props">props</a> | returns <a href="#Properties">Surface Properties</a> | +| <a href="#SkSurface_readPixels">readPixels</a> | copies <a href="SkRect_Reference#Rect">Rect</a> of pixels | +| <a href="#SkSurface_wait">wait</a> | rause commands until signaled | +| <a href="#SkSurface_width">width</a> | returns pixel column count | <a name="SkSurface_MakeRasterDirect"></a> ## MakeRasterDirect diff --git a/site/user/api/catalog.htm b/site/user/api/catalog.htm index 21c8e730bc..64b29b29e8 100644 --- a/site/user/api/catalog.htm +++ b/site/user/api/catalog.htm @@ -31,7 +31,7 @@ "SkAutoCanvasRestore_restore": { "code": "void draw(SkCanvas* canvas) {\n for (bool callRestore : { false, true } ) {\n for (bool saveCanvas : {false, true} ) {\n SkAutoCanvasRestore autoRestore(canvas, saveCanvas);\n if (!saveCanvas) {\n canvas->save();\n }\n SkDebugf(\"saveCanvas: %s before restore: %d\\n\",\n saveCanvas ? \"true\" : \"false\", canvas->getSaveCount());\n if (callRestore) autoRestore.restore();\n SkDebugf(\"saveCanvas: %s after restore: %d\\n\",\n saveCanvas ? \"true\" : \"false\", canvas->getSaveCount());\n }\n }\n SkDebugf(\"final count: %d\\n\", canvas->getSaveCount());\n}", "hash": "9f459b218ec079c1ada23f4412968f9a", - "file": "SkCanvas_Reference", + "file": "SkAutoCanvasRestore_Reference", "name": "SkAutoCanvasRestore::restore()", "stdout": "saveCanvas: false before restore: 2\\nsaveCanvas: false after restore: 2\\nsaveCanvas: true before restore: 2\\nsaveCanvas: true after restore: 2\\nsaveCanvas: false before restore: 2\\nsaveCanvas: false after restore: 1\\nsaveCanvas: true before restore: 2\\nsaveCanvas: true after restore: 1\\nfinal count: 1\\n" }, @@ -1470,13 +1470,6 @@ "name": "SkPaint::getPathEffect", "stdout": "nullptr == path effect\\nnullptr != path effect\\n" }, - "SkPaint_getRasterizer": { - "code": "class DummyRasterizer : public SkRasterizer {\npublic:\n SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(DummyRasterizer)\n};\nsk_sp<SkFlattenable> DummyRasterizer::CreateProc(SkReadBuffer&) {\n return sk_make_sp<DummyRasterizer>();\n}\n\nvoid draw(SkCanvas* canvas) {\n SkPaint paint;\n DummyRasterizer dummy;\n SkDebugf(\"nullptr %c= rasterizer\\n\", paint.getRasterizer() ? '!' : '=');\n paint.setRasterizer(sk_make_sp<DummyRasterizer>());\n SkDebugf(\"nullptr %c= rasterizer\\n\", paint.getRasterizer() ? '!' : '=');\n}\n", - "hash": "0707d407c3a14388b107af8ae5873e55", - "file": "SkPaint_Reference", - "name": "SkPaint::getRasterizer", - "stdout": "nullptr == rasterizer\\nnullptr != rasterizer\\n" - }, "SkPaint_getShader": { "code": "void draw(SkCanvas* canvas) {\n SkPaint paint;\n SkDebugf(\"nullptr %c= shader\\n\", paint.getShader() ? '!' : '=');\n paint.setShader(SkShader::MakeEmptyShader());\n SkDebugf(\"nullptr %c= shader\\n\", paint.getShader() ? '!' : '=');\n}\n", "hash": "09f15b9fd88882850da2d235eb86292f", @@ -1701,13 +1694,6 @@ "name": "SkPaint::refPathEffect", "stdout": "path effect unique: true\\npath effect unique: false\\n" }, - "SkPaint_refRasterizer": { - "code": "void draw(SkCanvas* canvas) {\n SkLayerRasterizer::Builder layerBuilder;\n SkPaint paint1, paint2;\n layerBuilder.addLayer(paint2);\n paint1.setRasterizer(layerBuilder.detach());\n SkDebugf(\"rasterizer unique: %s\\n\", paint1.getRasterizer()->unique() ? \"true\" : \"false\");\n paint2.setRasterizer(paint1.refRasterizer());\n SkDebugf(\"rasterizer unique: %s\\n\", paint1.getRasterizer()->unique() ? \"true\" : \"false\");\n}\n", - "hash": "c0855ce19a33cb7e5747750ef341b7b3", - "file": "SkPaint_Reference", - "name": "SkPaint::refRasterizer", - "stdout": "rasterizer unique: true\\nrasterizer unique: false\\n" - }, "SkPaint_refShader": { "code": "void draw(SkCanvas* canvas) {\n SkPaint paint1, paint2;\n paint1.setShader(SkShader::MakeEmptyShader());\n SkDebugf(\"shader unique: %s\\n\", paint1.getShader()->unique() ? \"true\" : \"false\");\n paint2.setShader(paint1.refShader());\n SkDebugf(\"shader unique: %s\\n\", paint1.getShader()->unique() ? \"true\" : \"false\");\n}\n", "hash": "53da0295972a418cbc9607bbb17feaa8", @@ -3331,14 +3317,6 @@ "file": "SkPaint_Reference", "name": "Path_Effect_Methods" }, - "Paint_Rasterizer_Methods": { - "code": "void draw(SkCanvas* canvas) {\n SkLayerRasterizer::Builder layerBuilder;\n SkPaint paint;\n paint.setAntiAlias(true);\n paint.setStyle(SkPaint::kStroke_Style);\n paint.setStrokeWidth(1);\n layerBuilder.addLayer(paint);\n paint.setAlpha(0x10);\n paint.setStyle(SkPaint::kFill_Style);\n paint.setBlendMode(SkBlendMode::kSrc);\n layerBuilder.addLayer(paint);\n paint.reset();\n paint.setAntiAlias(true);\n paint.setTextSize(50);\n paint.setRasterizer(layerBuilder.detach());\n canvas->drawString(\"outline\", 10, 50, paint);\n}\n", - "width": 256, - "height": 64, - "hash": "e63f8a50996699342a14c6e54d684108", - "file": "SkPaint_Reference", - "name": "Rasterizer_Methods" -}, "Paint_Shader_Methods": { "code": "void draw(SkCanvas* canvas) {\n SkPaint paint;\n SkPoint center = { 50, 50 };\n SkScalar radius = 50;\n const SkColor colors[] = { 0xFFFFFFFF, 0xFF000000 };\n paint.setShader(SkGradientShader::MakeRadial(center, radius, colors,\n nullptr, SK_ARRAY_COUNT(colors), SkShader::kClamp_TileMode));\n for (SkScalar a : { 0.3f, 0.6f, 1.0f } ) {\n paint.setAlpha((int) (a * 255));\n canvas->drawCircle(center.fX, center.fY, radius, paint);\n canvas->translate(70, 70);\n }\n}\n", "width": 256, @@ -3528,7 +3506,7 @@ "width": 256, "height": 128, "hash": "466ef576b88e29d7252422db7adeed1c", - "file": "SkCanvas_Reference", + "file": "SkAutoCanvasRestore_Reference", "name": "SkAutoCanvasRestore::SkAutoCanvasRestore(SkCanvas* canvas, bool doSave)" }, "SkBitmap_allocN32Pixels": { @@ -5747,14 +5725,6 @@ "file": "SkPaint_Reference", "name": "SkPaint::setPathEffect" }, - "SkPaint_setRasterizer": { - "code": "void draw(SkCanvas* canvas) {\n SkLayerRasterizer::Builder layerBuilder;\n SkPaint paint;\n paint.setAntiAlias(true);\n paint.setStyle(SkPaint::kStroke_Style);\n paint.setStrokeWidth(2);\n layerBuilder.addLayer(paint);\n paint.reset();\n paint.setAntiAlias(true);\n paint.setTextSize(50);\n paint.setMaskFilter(SkBlurMaskFilter::Make(kNormal_SkBlurStyle, 3));\n paint.setRasterizer(layerBuilder.detach());\n canvas->drawString(\"blurry out\", 0, 50, paint);\n}", - "width": 256, - "height": 64, - "hash": "aec8ed9296c1628073086a33039f62b7", - "file": "SkPaint_Reference", - "name": "SkPaint::setRasterizer" -}, "SkPaint_setShader": { "code": "void draw(SkCanvas* canvas) {\n SkPaint paint;\n paint.setColor(SK_ColorBLUE);\n paint.setShader(SkShader::MakeColorShader(SK_ColorRED));\n canvas->drawRect(SkRect::MakeWH(40, 40), paint);\n paint.setShader(nullptr);\n canvas->translate(50, 0);\n canvas->drawRect(SkRect::MakeWH(40, 40), paint);\n}\n", "width": 256, diff --git a/site/user/api/undocumented.md b/site/user/api/undocumented.md index 8de6faf503..8e9e7f058d 100644 --- a/site/user/api/undocumented.md +++ b/site/user/api/undocumented.md @@ -943,10 +943,6 @@ void setImmutable() --- -# <a name="Pixel_Serializer"></a> Pixel Serializer - -# <a name="SkPixelSerializer"></a> Class SkPixelSerializer - # <a name="Point3"></a> Point3 # <a name="SkPoint3"></a> Struct SkPoint3 diff --git a/tools/bookmaker/bookmaker.cpp b/tools/bookmaker/bookmaker.cpp index b63813d667..217a696420 100644 --- a/tools/bookmaker/bookmaker.cpp +++ b/tools/bookmaker/bookmaker.cpp @@ -12,21 +12,25 @@ DEFINE_string2(bmh, b, "", "Path to a *.bmh file or a directory."); DEFINE_bool2(catalog, c, false, "Write example catalog.htm. (Requires -b -f -r)"); DEFINE_string2(examples, e, "", "File of fiddlecli input, usually fiddle.json (For now, disables -r -f -s)"); DEFINE_string2(fiddle, f, "", "File of fiddlecli output, usually fiddleout.json."); -DEFINE_bool2(hack, h, false, "Do a find/replace hack to update all *.bmh files. (Requires -b)"); +DEFINE_bool2(hack, H, false, "Do a find/replace hack to update all *.bmh files. (Requires -b)"); +// h is reserved for help DEFINE_string2(include, i, "", "Path to a *.h file or a directory."); DEFINE_bool2(selfcheck, k, false, "Check bmh against itself. (Requires -b)"); DEFINE_bool2(stdout, o, false, "Write file out to standard out."); DEFINE_bool2(populate, p, false, "Populate include from bmh. (Requires -b -i)"); +// q is reserved for quiet DEFINE_string2(ref, r, "", "Resolve refs and write *.md files to path. (Requires -b -f)"); DEFINE_string2(spellcheck, s, "", "Spell-check [once, all, mispelling]. (Requires -b)"); DEFINE_bool2(tokens, t, false, "Write bmh from include. (Requires -b -i)"); DEFINE_bool2(crosscheck, x, false, "Check bmh against includes. (Requires -b -i)"); +// v is reserved for verbose DEFINE_bool2(skip, z, false, "Skip degenerate missed in legacy preprocessor."); /* recipe for generating timestamps for existing doxygen comments find include/core -type f -name '*.h' -print -exec git blame {} \; > ~/all.blame.txt todos: +check column 1 of subtopic tables to see that they start lowercase and don't have a trailing period space table better for Constants should Return be on same line as 'Return Value'? remove anonymous header, e.g. Enum SkPaint::::anonymous_2 @@ -186,6 +190,9 @@ bool BmhParser::addDefinition(const char* defStart, bool hasEnd, MarkType markTy } definition->fFiddle = parent ? parent->fFiddle + '_' : ""; definition->fFiddle += Definition::NormalizedName(typeNameBuilder[0]); + if (string::npos != typeNameBuilder[0].find("Member_Functions")) { + SkDebugf(""); + } this->setAsParent(definition); } { diff --git a/tools/bookmaker/mdOut.cpp b/tools/bookmaker/mdOut.cpp index 24009d02f8..13514683bf 100644 --- a/tools/bookmaker/mdOut.cpp +++ b/tools/bookmaker/mdOut.cpp @@ -502,6 +502,11 @@ const Definition* MdOut::isDefined(const TextParser& parser, const string& ref, } } } + string fiddlePrefixed = root->fFiddle + "_" + ref; + auto topicIter = fBmhParser.fTopicMap.find(fiddlePrefixed); + if (topicIter != fBmhParser.fTopicMap.end()) { + return topicIter->second; + } } while ((test = test->fParent)); } size_t doubleColon = ref.find("::"); diff --git a/tools/bookmaker/selfCheck.cpp b/tools/bookmaker/selfCheck.cpp index 0b28d16c70..7f112697c0 100644 --- a/tools/bookmaker/selfCheck.cpp +++ b/tools/bookmaker/selfCheck.cpp @@ -7,15 +7,11 @@ #include "bookmaker.h" -// Check that summary contains all methods // Check that mutiple like-named methods are under one Subtopic // Check that all subtopics are in table of contents -// Check that all constructors are in a table of contents -// should be 'creators' instead of constructors? - // Check that SeeAlso reference each other // Would be nice to check if other classes have 'create' methods that are included @@ -43,10 +39,13 @@ public: if (!this->checkMethodSubtopic()) { return false; } - if (!this->checkSubtopicContents()) { + if (!this->checkSubtopicSummary()) { + return false; + } + if (!this->checkConstructorsSummary()) { return false; } - if (!this->checkConstructors()) { + if (!this->checkOperatorsSummary()) { return false; } if (!this->checkSeeAlso()) { @@ -60,7 +59,74 @@ public: } protected: - bool checkConstructors() { + // Check that all constructors are in a table of contents + // should be 'creators' instead of constructors? + bool checkConstructorsSummary() { + for (auto& rootChild : fRoot->fChildren) { + if (!this->isStructOrClass(rootChild)) { + continue; + } + auto& cs = rootChild; + auto overview = this->findOverview(cs); + if (!overview) { + return false; + } + Definition* constructors = nullptr; + for (auto& overChild : overview->fChildren) { + if ("Constructors" == overChild->fName) { + constructors = overChild; + break; + } + } + if (constructors && MarkType::kSubtopic != constructors->fMarkType) { + return constructors->reportError<bool>("expected #Subtopic Constructors"); + } + vector<string> constructorEntries; + if (constructors) { + if (!this->collectEntries(constructors, &constructorEntries)) { + return false; + } + } + // mark corresponding methods as visited (may be more than one per entry) + for (auto& csChild : cs->fChildren) { + if (MarkType::kMethod != csChild->fMarkType) { + // only check methods for now + continue; + } + string name; + if (!this->childName(csChild, &name)) { + return false; + } + string returnType; + if (Definition::MethodType::kConstructor != csChild->fMethodType && + Definition::MethodType::kDestructor != csChild->fMethodType) { + string makeCheck = name.substr(0, 4); + if ("Make" != makeCheck && "make" != makeCheck) { + continue; + } + // for now, assume return type of interest is first word to start Sk + string search(csChild->fStart, csChild->fContentStart - csChild->fStart); + auto end = search.find(makeCheck); + if (string::npos == end) { + return csChild->reportError<bool>("expected Make in content"); + } + search = search.substr(0, end); + if (string::npos == search.find(cs->fName)) { + // if return value doesn't match current struct or class, look in + // returned struct / class instead + auto sk = search.find("Sk"); + if (string::npos != sk) { + // todo: build class name, find it, search for match in its overview + continue; + } + } + } + if (constructorEntries.end() == + std::find(constructorEntries.begin(), constructorEntries.end(), name)) { + return csChild->reportError<bool>("missing constructor in Constructors"); + } + } + } return true; } @@ -72,105 +138,273 @@ protected: return true; } + // Check that summary contains all methods bool checkMethodSummary() { - SkDebugf(""); // look for struct or class in fChildren for (auto& rootChild : fRoot->fChildren) { - if (MarkType::kStruct == rootChild->fMarkType || - MarkType::kClass == rootChild->fMarkType) { - auto& cs = rootChild; - // expect Overview as Topic in every main class or struct - Definition* overview = nullptr; - for (auto& csChild : cs->fChildren) { - if ("Overview" == csChild->fName) { - if (!overview) { - return cs->reportError<bool>("expected only one Overview"); - } - overview = csChild; - } + if (!this->isStructOrClass(rootChild)) { + continue; + } + auto& cs = rootChild; + // expect Overview as Topic in every main class or struct + auto overview = this->findOverview(cs); + if (!overview) { + return false; + } + Definition* memberFunctions = nullptr; + for (auto& overChild : overview->fChildren) { + if ("Member_Functions" == overChild->fName) { + memberFunctions = overChild; + break; + } + } + if (!memberFunctions) { + return overview->reportError<bool>("missing #Subtopic Member_Functions"); + } + if (MarkType::kSubtopic != memberFunctions->fMarkType) { + return memberFunctions->reportError<bool>("expected #Subtopic Member_Functions"); + } + vector<string> overviewEntries; // build map of overview entries + if (!this->collectEntries(memberFunctions, &overviewEntries)) { + return false; + } + // mark corresponding methods as visited (may be more than one per entry) + for (auto& csChild : cs->fChildren) { + if (MarkType::kMethod != csChild->fMarkType) { + // only check methods for now + continue; + } + if (Definition::MethodType::kConstructor == csChild->fMethodType) { + continue; } - if (!overview) { - return cs->reportError<bool>("missing #Topic Overview"); + if (Definition::MethodType::kDestructor == csChild->fMethodType) { + continue; } - Definition* memberFunctions = nullptr; - for (auto& overChild : overview->fChildren) { - if ("Member_Functions" == overChild->fName) { - memberFunctions = overChild; + if (Definition::MethodType::kOperator == csChild->fMethodType) { + continue; + } + string name; + if (!this->childName(csChild, &name)) { + return false; + } + if (overviewEntries.end() == + std::find(overviewEntries.begin(), overviewEntries.end(), name)) { + return csChild->reportError<bool>("missing method in Member_Functions"); + } + } + } + return true; + } + + // Check that all operators are in a table of contents + bool checkOperatorsSummary() { + for (auto& rootChild : fRoot->fChildren) { + if (!this->isStructOrClass(rootChild)) { + continue; + } + auto& cs = rootChild; + auto overview = this->findOverview(cs); + if (!overview) { + return false; + } + Definition* operators = nullptr; + for (auto& overChild : overview->fChildren) { + if ("Operators" == overChild->fName) { + operators = overChild; + break; + } + } + if (operators && MarkType::kSubtopic != operators->fMarkType) { + return operators->reportError<bool>("expected #Subtopic Operators"); + } + vector<string> operatorEntries; + if (operators) { + if (!this->collectEntries(operators, &operatorEntries)) { + return false; + } + } + for (auto& csChild : cs->fChildren) { + if (Definition::MethodType::kOperator != csChild->fMethodType) { + continue; + } + string name; + if (!this->childName(csChild, &name)) { + return false; + } + bool found = false; + for (auto str : operatorEntries) { + if (string::npos != str.find(name)) { + found = true; break; } } - if (!memberFunctions) { - return overview->reportError<bool>("missing #Subtopic Member_Functions"); + if (!found) { + return csChild->reportError<bool>("missing operator in Operators"); + } + } + } + return true; + } + + bool checkSeeAlso() { + return true; + } + + bool checkSubtopicSummary() { + for (auto& rootChild : fRoot->fChildren) { + if (!this->isStructOrClass(rootChild)) { + continue; + } + auto& cs = rootChild; + auto overview = this->findOverview(cs); + if (!overview) { + return false; + } + Definition* subtopics = nullptr; + Definition* relatedFunctions = nullptr; + for (auto& overChild : overview->fChildren) { + if ("Subtopics" == overChild->fName) { + subtopics = overChild; + } else if ("Related_Functions" == overChild->fName) { + relatedFunctions = overChild; } - if (MarkType::kSubtopic != memberFunctions->fMarkType) { - return memberFunctions->reportError<bool>("expected #Subtopic Member_Functions"); + } + if (!subtopics) { + return overview->reportError<bool>("missing #Subtopic Subtopics"); + } + if (MarkType::kSubtopic != subtopics->fMarkType) { + return subtopics->reportError<bool>("expected #Subtopic Subtopics"); + } + if (relatedFunctions && MarkType::kSubtopic != relatedFunctions->fMarkType) { + return relatedFunctions->reportError<bool>("expected #Subtopic Related_Functions"); + } + vector<string> subtopicEntries; + if (!this->collectEntries(subtopics, &subtopicEntries)) { + return false; + } + if (relatedFunctions && !this->collectEntries(relatedFunctions, &subtopicEntries)) { + return false; + } + for (auto& csChild : cs->fChildren) { + if (MarkType::kSubtopic != csChild->fMarkType) { + continue; } - Definition* memberTable = nullptr; - for (auto& memberChild : memberFunctions->fChildren) { - if (MarkType::kTable == memberChild->fMarkType && - memberChild->fName == memberFunctions->fName) { - memberTable = memberChild; + string name; + if (!this->childName(csChild, &name)) { + return false; + } + bool found = false; + for (auto str : subtopicEntries) { + if (string::npos != str.find(name)) { + found = true; break; } } - if (!memberTable) { - return memberFunctions->reportError<bool>("missing #Table in Member_Functions"); + if (!found) { + return csChild->reportError<bool>("missing SubTopic in SubTopics"); } - vector<string> overviewEntries; // build map of overview entries - bool expectLegend = true; - string prior = " "; // expect entries to be alphabetical - for (auto& memberRow : memberTable->fChildren) { - if (MarkType::kLegend == memberRow->fMarkType) { - if (!expectLegend) { - return memberRow->reportError<bool>("expect #Legend only once"); - } - // todo: check if legend format matches table's rows' format - expectLegend = false; - } else if (expectLegend) { - return memberRow->reportError<bool>("expect #Legend first"); - } - if (MarkType::kRow != memberRow->fMarkType) { - continue; // let anything through for now; can tighten up in the future - } - // expect column 0 to point to function name - // todo: content end points past space; could tighten that up - Definition* column0 = memberRow->fChildren[0]; - string name = string(column0->fContentStart, - column0->fTerminator - column0->fContentStart); - if (prior > name) { - return memberRow->reportError<bool>("expect alphabetical order"); - } - if (prior == name) { - return memberRow->reportError<bool>("expect unique names"); - } - // todo: error if name is all lower case and doesn't end in () - overviewEntries.push_back(name); - prior = name; - } - // mark corresponding methods as visited (may be more than one per entry) - for (auto& csChild : cs->fChildren) { - if (MarkType::kMethod != csChild->fMarkType) { - // only check methods for now - continue; - } - auto start = csChild->fName.find_last_of(':'); - start = string::npos == start ? 0 : start + 1; - string name = csChild->fName.substr(start); - if (overviewEntries.end() == - std::find(overviewEntries.begin(), overviewEntries.end(), name)) { - return csChild->reportError<bool>("missing in Overview"); - } + } + } + return true; + } + + bool childName(const Definition* def, string* name) { + auto start = def->fName.find_last_of(':'); + start = string::npos == start ? 0 : start + 1; + *name = def->fName.substr(start); + if (def->fClone) { + auto lastUnderline = name->find_last_of('_'); + if (string::npos == lastUnderline) { + return def->reportError<bool>("expect _ in name"); + } + if (lastUnderline + 1 >= name->length()) { + return def->reportError<bool>("expect char after _ in name"); + } + for (auto index = lastUnderline + 1; index < name->length(); ++index) { + if (!isdigit((*name)[index])) { + return def->reportError<bool>("expect digit after _ in name"); } } + *name = name->substr(0, lastUnderline); + bool allLower = true; + for (auto ch : *name) { + allLower &= (bool) islower(ch); + } + if (allLower) { + *name += "()"; + } } return true; } - bool checkSeeAlso() { + const Definition* findOverview(const Definition* parent) { + // expect Overview as Topic in every main class or struct + Definition* overview = nullptr; + for (auto& csChild : parent->fChildren) { + if ("Overview" == csChild->fName) { + if (overview) { + return csChild->reportError<const Definition*>("expected only one Overview"); + } + overview = csChild; + } + } + if (!overview) { + return parent->reportError<const Definition*>("missing #Topic Overview"); + } + return overview; + } + + bool collectEntries(const Definition* entries, vector<string>* strings) { + const Definition* table = nullptr; + for (auto& child : entries->fChildren) { + if (MarkType::kTable == child->fMarkType && child->fName == entries->fName) { + table = child; + break; + } + } + if (!table) { + return entries->reportError<bool>("missing #Table in Overview Subtopic"); + } + bool expectLegend = true; + string prior = " "; // expect entries to be alphabetical + for (auto& row : table->fChildren) { + if (MarkType::kLegend == row->fMarkType) { + if (!expectLegend) { + return row->reportError<bool>("expect #Legend only once"); + } + // todo: check if legend format matches table's rows' format + expectLegend = false; + } else if (expectLegend) { + return row->reportError<bool>("expect #Legend first"); + } + if (MarkType::kRow != row->fMarkType) { + continue; // let anything through for now; can tighten up in the future + } + // expect column 0 to point to function name + Definition* column0 = row->fChildren[0]; + string name = string(column0->fContentStart, + column0->fContentEnd - column0->fContentStart); + if (prior > name) { + return row->reportError<bool>("expect alphabetical order"); + } + if (prior == name) { + return row->reportError<bool>("expect unique names"); + } + // todo: error if name is all lower case and doesn't end in () + strings->push_back(name); + prior = name; + } return true; } - bool checkSubtopicContents() { + bool isStructOrClass(const Definition* definition) { + if (MarkType::kStruct != definition->fMarkType && + MarkType::kClass != definition->fMarkType) { + return false; + } + if (string::npos != definition->fFileName.find("undocumented.bmh")) { + return false; + } return true; } |