diff options
author | Cary Clark <caryclark@skia.org> | 2018-05-17 12:17:28 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-05-17 16:45:13 +0000 |
commit | ffb3d688b0e76ad7d1517657b00e4525cc603f40 (patch) | |
tree | 3b48887597f78b47214b2ac3c12b4e4cc2cf6bc6 /site | |
parent | 0b82a71c4ca4cd3d5a477ea0293b877132f0a411 (diff) |
Color Documentation
- treat Color, ARGB, etc as things not requiring definitions
- fix links to Anti-alias, RGB-565
- finish everything marked incomplete, color and elsewhere
- add #Code blocks for #Typedef
R=caryclark@google.com
Docs-Preview: https://skia.org/?cl=128547
Bug: skia:6898
Change-Id: Icf12fe70bc2bf1a8b1a5b31380b2454610949f23
Reviewed-on: https://skia-review.googlesource.com/128547
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Diffstat (limited to 'site')
-rw-r--r-- | site/user/api/SkBitmap_Reference.md | 22 | ||||
-rw-r--r-- | site/user/api/SkCanvas_Reference.md | 72 | ||||
-rw-r--r-- | site/user/api/SkColor4f_Reference.md | 174 | ||||
-rw-r--r-- | site/user/api/SkColor_Reference.md | 265 | ||||
-rw-r--r-- | site/user/api/SkIPoint_Reference.md | 2 | ||||
-rw-r--r-- | site/user/api/SkImageInfo_Reference.md | 76 | ||||
-rw-r--r-- | site/user/api/SkImage_Reference.md | 39 | ||||
-rw-r--r-- | site/user/api/SkMatrix_Reference.md | 60 | ||||
-rw-r--r-- | site/user/api/SkPaint_Reference.md | 78 | ||||
-rw-r--r-- | site/user/api/SkPoint_Reference.md | 2 | ||||
-rw-r--r-- | site/user/api/SkSurface_Reference.md | 4 | ||||
-rw-r--r-- | site/user/api/catalog.htm | 186 | ||||
-rw-r--r-- | site/user/api/undocumented.md | 4 |
13 files changed, 533 insertions, 451 deletions
diff --git a/site/user/api/SkBitmap_Reference.md b/site/user/api/SkBitmap_Reference.md index 08898bce08..b55f8cc832 100644 --- a/site/user/api/SkBitmap_Reference.md +++ b/site/user/api/SkBitmap_Reference.md @@ -219,7 +219,7 @@ SkBitmap member functions read and modify the structure properties. </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkBitmap_allocN32Pixels'>allocN32Pixels</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>allocates compatible <a href='SkColor_Reference#ARGB'>Color ARGB</a> pixels, or aborts</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>allocates compatible ARGB pixels, or aborts</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkBitmap_allocPixels'>allocPixels</a></td> @@ -439,7 +439,7 @@ SkBitmap member functions read and modify the structure properties. </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkBitmap_tryAllocN32Pixels'>tryAllocN32Pixels</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>allocates compatible <a href='SkColor_Reference#ARGB'>Color ARGB</a> pixels if possible</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>allocates compatible ARGB pixels if possible</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkBitmap_tryAllocPixels'>tryAllocPixels</a></td> @@ -2132,7 +2132,7 @@ Instructs <a href='#SkBitmap_tryAllocPixelsFlags'>tryAllocPixelsFlags</a> and <a <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkBitmap_allocN32Pixels'>allocN32Pixels</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>allocates compatible <a href='SkColor_Reference#ARGB'>Color ARGB</a> pixels, or aborts</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>allocates compatible ARGB pixels, or aborts</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkBitmap_allocPixels'>allocPixels</a></td> @@ -2176,7 +2176,7 @@ Instructs <a href='#SkBitmap_tryAllocPixelsFlags'>tryAllocPixelsFlags</a> and <a </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkBitmap_tryAllocN32Pixels'>tryAllocN32Pixels</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>allocates compatible <a href='SkColor_Reference#ARGB'>Color ARGB</a> pixels if possible</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>allocates compatible ARGB pixels if possible</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkBitmap_tryAllocPixels'>tryAllocPixels</a></td> @@ -3170,8 +3170,8 @@ void <a href='#SkBitmap_eraseColor'>eraseColor</a>(<a href='SkColor_Reference#Sk Replaces pixel values with <a href='#SkBitmap_eraseColor_c'>c</a>. All pixels contained by <a href='#SkBitmap_bounds'>bounds</a> are affected. If the <a href='#SkBitmap_colorType'>colorType</a> is <a href='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a> or k565_SkColorType, then <a href='SkColor_Reference#Alpha'>Color Alpha</a> -is ignored; <a href='SkColor_Reference#RGB'>Color RGB</a> is treated as opaque. If <a href='#SkBitmap_colorType'>colorType</a> is <a href='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>, -then <a href='SkColor_Reference#RGB'>Color RGB</a> is ignored. +is ignored; RGB is treated as opaque. If <a href='#SkBitmap_colorType'>colorType</a> is <a href='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>, +then RGB is ignored. ### Parameters @@ -3209,13 +3209,13 @@ then <a href='#SkBitmap_eraseARGB_r'>r</a>, <a href='#SkBitmap_eraseARGB_g'>g</a <td>amount of <a href='SkColor_Reference#Alpha'>Color Alpha</a>, from fully transparent (0) to fully opaque (255)</td> </tr> <tr> <td><a name='SkBitmap_eraseARGB_r'><code><strong>r</strong></code></a></td> - <td>amount of <a href='SkColor_Reference#RGB_Red'>Color RGB Red</a>, from no red (0) to full red (255)</td> + <td>amount of red, from no red (0) to full red (255)</td> </tr> <tr> <td><a name='SkBitmap_eraseARGB_g'><code><strong>g</strong></code></a></td> - <td>amount of <a href='SkColor_Reference#RGB_Green'>Color RGB Green</a>, from no green (0) to full green (255)</td> + <td>amount of green, from no green (0) to full green (255)</td> </tr> <tr> <td><a name='SkBitmap_eraseARGB_b'><code><strong>b</strong></code></a></td> - <td>amount of <a href='SkColor_Reference#RGB_Blue'>Color RGB Blue</a>, from no blue (0) to full blue (255)</td> + <td>amount of blue, from no blue (0) to full blue (255)</td> </tr> </table> @@ -3251,8 +3251,8 @@ Replaces pixel values inside <a href='#SkBitmap_erase_area'>area</a> with <a hre call has no effect. If the <a href='#SkBitmap_colorType'>colorType</a> is <a href='SkImageInfo_Reference#kGray_8_SkColorType'>kGray_8_SkColorType</a> or k565_SkColorType, then <a href='SkColor_Reference#Alpha'>Color Alpha</a> -is ignored; <a href='SkColor_Reference#RGB'>Color RGB</a> is treated as opaque. If <a href='#SkBitmap_colorType'>colorType</a> is <a href='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>, -then <a href='SkColor_Reference#RGB'>Color RGB</a> is ignored. +is ignored; RGB is treated as opaque. If <a href='#SkBitmap_colorType'>colorType</a> is <a href='SkImageInfo_Reference#kAlpha_8_SkColorType'>kAlpha_8_SkColorType</a>, +then RGB is ignored. ### Parameters diff --git a/site/user/api/SkCanvas_Reference.md b/site/user/api/SkCanvas_Reference.md index 17f6e37c3c..297c37c9be 100644 --- a/site/user/api/SkCanvas_Reference.md +++ b/site/user/api/SkCanvas_Reference.md @@ -1543,7 +1543,7 @@ The copied quarter circles overdraw the original circle. <div><fiddle-embed name="481e990e923a0ed34654f4361b94f096"><div><a href='#Canvas'>Canvas</a> returned by <a href='undocumented#Raster_Surface'>Raster Surface</a> has <a href='undocumented#Premultiply'>Premultiplied</a> pixel values. <a href='#SkCanvas_clear'>clear</a> takes <a href='undocumented#Unpremultiply'>Unpremultiplied</a> input with <a href='SkColor_Reference#Alpha'>Color Alpha</a> equal 0x80 -and <a href='SkColor_Reference#RGB'>Color RGB</a> equal 0x55, 0xAA, 0xFF. <a href='SkColor_Reference#RGB'>Color RGB</a> is multiplied by <a href='SkColor_Reference#Alpha'>Color Alpha</a> +and RGB equal 0x55, 0xAA, 0xFF. RGB is multiplied by <a href='SkColor_Reference#Alpha'>Color Alpha</a> to generate <a href='undocumented#Premultiply'>Premultiplied</a> value 0x802B5580. <a href='#SkCanvas_readPixels'>readPixels</a> converts pixel back to <a href='undocumented#Unpremultiply'>Unpremultiplied</a> value 0x8056A9FF, introducing error. </div> @@ -1625,7 +1625,7 @@ true if pixels were copied ### Example <div><fiddle-embed name="85f199032943b6483722c34a91c4e20f"><div><a href='#SkCanvas_clear'>clear</a> takes <a href='undocumented#Unpremultiply'>Unpremultiplied</a> input with <a href='SkColor_Reference#Alpha'>Color Alpha</a> equal 0x80 -and <a href='SkColor_Reference#RGB'>Color RGB</a> equal 0x55, 0xAA, 0xFF. <a href='SkColor_Reference#RGB'>Color RGB</a> is multiplied by <a href='SkColor_Reference#Alpha'>Color Alpha</a> +and RGB equal 0x55, 0xAA, 0xFF. RGB is multiplied by <a href='SkColor_Reference#Alpha'>Color Alpha</a> to generate <a href='undocumented#Premultiply'>Premultiplied</a> value 0x802B5580. </div> @@ -1705,7 +1705,7 @@ true if pixels were copied ### Example <div><fiddle-embed name="af6dec8ef974aa67bf102f29915bcd6a"><div><a href='#SkCanvas_clear'>clear</a> takes <a href='undocumented#Unpremultiply'>Unpremultiplied</a> input with <a href='SkColor_Reference#Alpha'>Color Alpha</a> equal 0x80 -and <a href='SkColor_Reference#RGB'>Color RGB</a> equal 0x55, 0xAA, 0xFF. <a href='SkColor_Reference#RGB'>Color RGB</a> is multiplied by <a href='SkColor_Reference#Alpha'>Color Alpha</a> +and RGB equal 0x55, 0xAA, 0xFF. RGB is multiplied by <a href='SkColor_Reference#Alpha'>Color Alpha</a> to generate <a href='undocumented#Premultiply'>Premultiplied</a> value 0x802B5580. </div> @@ -2275,7 +2275,7 @@ depth of saved stack typedef uint32_t <a href='#SkCanvas_SaveLayerFlags'>SaveLayerFlags</a>; </pre> -# <a name='SkCanvas_SaveLayerFlags'>Typedef SkCanvas::SaveLayerFlags</a> +## <a name='SkCanvas_SaveLayerFlags'>Typedef SkCanvas::SaveLayerFlags</a> <a href='#SkCanvas_SaveLayerFlags'>SaveLayerFlags</a> provides options that may be used in any combination in <a href='#SkCanvas_SaveLayerRec'>SaveLayerRec</a>, defining how <a href='#Layer'>Layer</a> allocated by <a href='#SkCanvas_saveLayer'>saveLayer</a> operates. It may be set to zero, <a href='#SkCanvas_kPreserveLCDText_SaveLayerFlag'>kPreserveLCDText SaveLayerFlag</a>, <a href='#SkCanvas_kInitWithPrevious_SaveLayerFlag'>kInitWithPrevious SaveLayerFlag</a>, or both flags. @@ -2433,7 +2433,7 @@ contents of the previous <a href='#Layer'>Layer</a>. ### Example -<div><fiddle-embed name="ee8c0b120234e27364f8c9a786cf8f89"><div><a href='#Canvas'>Canvas</a> <a href='#Layer'>Layer</a> captures a red Anti-aliased circle and a blue <a href='undocumented#Alias'>Aliased</a> circle scaled +<div><fiddle-embed name="ee8c0b120234e27364f8c9a786cf8f89"><div><a href='#Canvas'>Canvas</a> <a href='#Layer'>Layer</a> captures a red <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a> circle and a blue <a href='undocumented#Alias'>Aliased</a> circle scaled up by four. After drawing another red circle without scaling on top, the <a href='#Layer'>Layer</a> is transferred to the main canvas. </div></fiddle-embed></div> @@ -2846,9 +2846,9 @@ the result with <a href='#Matrix'>Matrix</a>. <div><fiddle-embed name="2e2acc21d7774df7e0940a30ad2ca99e"><div>Black text mimics an oblique text style by using a negative skew in x that shifts the geometry to the right as the y values decrease. -<a href='SkColor_Reference#RGB_Red'>Red</a> text uses a positive skew in y to shift the geometry down as the x values +Red text uses a positive skew in y to shift the geometry down as the x values increase. -<a href='SkColor_Reference#RGB_Blue'>Blue</a> text combines x and y skew to rotate and scale. +Blue text combines x and y skew to rotate and scale. </div></fiddle-embed></div> ### See Also @@ -2979,14 +2979,14 @@ prior <a href='#Clip'>Clip</a> to form the replacement <a href='#Clip'>Clip</a>. to subtract <a href='SkPath_Reference#Path'>Path</a> from <a href='#Clip'>Clip</a>; use <a href='undocumented#SkClipOp_kIntersect'>SkClipOp::kIntersect</a> to intersect <a href='SkPath_Reference#Path'>Path</a> with <a href='#Clip'>Clip</a>. -A clipping <a href='SkPath_Reference#Path'>Path</a> may be Anti-aliased; if <a href='SkPath_Reference#Path'>Path</a>, after transformation, is -composed of horizontal and vertical lines, clearing Anti-alias allows whole pixels +A clipping <a href='SkPath_Reference#Path'>Path</a> may be <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a>; if <a href='SkPath_Reference#Path'>Path</a>, after transformation, is +composed of horizontal and vertical lines, clearing <a href='SkPaint_Reference#Anti_Alias'>Anti Alias</a> allows whole pixels to either be inside or outside the clip. The fastest drawing has a <a href='undocumented#Alias'>Aliased</a>, rectangular clip. -If clipping <a href='SkPath_Reference#Path'>Path</a> has Anti-alias set, clip may partially clip a pixel, requiring +If clipping <a href='SkPath_Reference#Path'>Path</a> has <a href='SkPaint_Reference#Anti_Alias'>Anti Alias</a> set, clip may partially clip a pixel, requiring that drawing blend partially with the destination along the edge. A rotated -rectangular Anti-aliased clip looks smoother but draws slower. +rectangular <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a> clip looks smoother but draws slower. <a href='#Clip'>Clip</a> can combine with <a href='SkRect_Reference#Rect'>Rect</a> and <a href='undocumented#Round_Rect'>Round Rect</a> primitives; like <a href='SkPath_Reference#Path'>Path</a>, these are transformed by <a href='#Matrix'>Matrix</a> before they are combined with <a href='#Clip'>Clip</a>. @@ -2996,10 +2996,10 @@ and is unaffected by <a href='#Matrix'>Matrix</a>. ### Example -<div><fiddle-embed name="862cc026601a41a58df49c0b9f0d7777"><div><a href='#Draw'>Draw</a> a red circle with an <a href='undocumented#Alias'>Aliased</a> clip and an Anti-aliased clip. +<div><fiddle-embed name="862cc026601a41a58df49c0b9f0d7777"><div><a href='#Draw'>Draw</a> a red circle with an <a href='undocumented#Alias'>Aliased</a> clip and an <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a> clip. Use an image filter to zoom into the pixels drawn. The edge of the <a href='undocumented#Alias'>Aliased</a> clip fully draws pixels in the red circle. -The edge of the Anti-aliased clip partially draws pixels in the red circle. +The edge of the <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a> clip partially draws pixels in the red circle. </div></fiddle-embed></div> <a name='SkCanvas_clipRect'></a> @@ -3010,7 +3010,7 @@ void <a href='#SkCanvas_clipRect'>clipRect</a>(const <a href='SkRect_Reference#S </pre> Replace <a href='#Clip'>Clip</a> with the intersection or difference of <a href='#Clip'>Clip</a> and <a href='#SkCanvas_clipRect_rect'>rect</a>, -with an <a href='undocumented#Alias'>Aliased</a> or Anti-aliased clip edge. <a href='#SkCanvas_clipRect_rect'>rect</a> is transformed by <a href='#Matrix'>Matrix</a> +with an <a href='undocumented#Alias'>Aliased</a> or <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a> clip edge. <a href='#SkCanvas_clipRect_rect'>rect</a> is transformed by <a href='#Matrix'>Matrix</a> before it is combined with <a href='#Clip'>Clip</a>. ### Parameters @@ -3022,7 +3022,7 @@ before it is combined with <a href='#Clip'>Clip</a>. <td><a href='undocumented#Clip_Op'>Clip Op</a> to apply to <a href='#Clip'>Clip</a></td> </tr> <tr> <td><a name='SkCanvas_clipRect_doAntiAlias'><code><strong>doAntiAlias</strong></code></a></td> - <td>true if <a href='#Clip'>Clip</a> is to be Anti-aliased</td> + <td>true if <a href='#Clip'>Clip</a> is to be <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a></td> </tr> </table> @@ -3083,14 +3083,14 @@ before it is combined with <a href='#Clip'>Clip</a>. <td><a href='SkRect_Reference#Rect'>Rect</a> to combine with <a href='#Clip'>Clip</a></td> </tr> <tr> <td><a name='SkCanvas_clipRect_3_doAntiAlias'><code><strong>doAntiAlias</strong></code></a></td> - <td>true if <a href='#Clip'>Clip</a> is to be Anti-aliased</td> + <td>true if <a href='#Clip'>Clip</a> is to be <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a></td> </tr> </table> ### Example <div><fiddle-embed name="1d4e0632c97e42692775d834fe10aa99"><div>A circle drawn in pieces looks uniform when drawn <a href='undocumented#Alias'>Aliased</a>. -The same circle pieces blend with pixels more than once when Anti-aliased, +The same circle pieces blend with pixels more than once when <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a>, visible as a thin pair of lines through the right circle. </div></fiddle-embed></div> @@ -3133,7 +3133,7 @@ void <a href='#SkCanvas_clipRRect'>clipRRect</a>(const <a href='undocumented#SkR </pre> Replace <a href='#Clip'>Clip</a> with the intersection or difference of <a href='#Clip'>Clip</a> and <a href='#SkCanvas_clipRRect_rrect'>rrect</a>, -with an <a href='undocumented#Alias'>Aliased</a> or Anti-aliased clip edge. +with an <a href='undocumented#Alias'>Aliased</a> or <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a> clip edge. <a href='#SkCanvas_clipRRect_rrect'>rrect</a> is transformed by <a href='#Matrix'>Matrix</a> before it is combined with <a href='#Clip'>Clip</a>. @@ -3146,7 +3146,7 @@ before it is combined with <a href='#Clip'>Clip</a>. <td><a href='undocumented#Clip_Op'>Clip Op</a> to apply to <a href='#Clip'>Clip</a></td> </tr> <tr> <td><a name='SkCanvas_clipRRect_doAntiAlias'><code><strong>doAntiAlias</strong></code></a></td> - <td>true if <a href='#Clip'>Clip</a> is to be Anti-aliased</td> + <td>true if <a href='#Clip'>Clip</a> is to be <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a></td> </tr> </table> @@ -3197,7 +3197,7 @@ void <a href='#SkCanvas_clipRRect'>clipRRect</a>(const <a href='undocumented#SkR </pre> Replace <a href='#Clip'>Clip</a> with the intersection of <a href='#Clip'>Clip</a> and <a href='#SkCanvas_clipRRect_3_rrect'>rrect</a>, -with an <a href='undocumented#Alias'>Aliased</a> or Anti-aliased clip edge. +with an <a href='undocumented#Alias'>Aliased</a> or <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a> clip edge. <a href='#SkCanvas_clipRRect_3_rrect'>rrect</a> is transformed by <a href='#Matrix'>Matrix</a> before it is combined with <a href='#Clip'>Clip</a>. ### Parameters @@ -3206,7 +3206,7 @@ with an <a href='undocumented#Alias'>Aliased</a> or Anti-aliased clip edge. <td><a href='undocumented#Round_Rect'>Round Rect</a> to combine with <a href='#Clip'>Clip</a></td> </tr> <tr> <td><a name='SkCanvas_clipRRect_3_doAntiAlias'><code><strong>doAntiAlias</strong></code></a></td> - <td>true if <a href='#Clip'>Clip</a> is to be Anti-aliased</td> + <td>true if <a href='#Clip'>Clip</a> is to be <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a></td> </tr> </table> @@ -3228,7 +3228,7 @@ void <a href='#SkCanvas_clipPath'>clipPath</a>(const <a href='SkPath_Reference#S </pre> Replace <a href='#Clip'>Clip</a> with the intersection or difference of <a href='#Clip'>Clip</a> and <a href='#SkCanvas_clipPath_path'>path</a>, -with an <a href='undocumented#Alias'>Aliased</a> or Anti-aliased clip edge. <a href='SkPath_Reference#Fill_Type'>Path Fill Type</a> determines if <a href='#SkCanvas_clipPath_path'>path</a> +with an <a href='undocumented#Alias'>Aliased</a> or <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a> clip edge. <a href='SkPath_Reference#Fill_Type'>Path Fill Type</a> determines if <a href='#SkCanvas_clipPath_path'>path</a> describes the area inside or outside its contours; and if <a href='SkPath_Reference#Contour'>Path Contour</a> overlaps itself or another <a href='SkPath_Reference#Contour'>Path Contour</a>, whether the overlaps form part of the area. <a href='#SkCanvas_clipPath_path'>path</a> is transformed by <a href='#Matrix'>Matrix</a> before it is combined with <a href='#Clip'>Clip</a>. @@ -3242,7 +3242,7 @@ itself or another <a href='SkPath_Reference#Contour'>Path Contour</a>, whether t <td><a href='undocumented#Clip_Op'>Clip Op</a> to apply to <a href='#Clip'>Clip</a></td> </tr> <tr> <td><a name='SkCanvas_clipPath_doAntiAlias'><code><strong>doAntiAlias</strong></code></a></td> - <td>true if <a href='#Clip'>Clip</a> is to be Anti-aliased</td> + <td>true if <a href='#Clip'>Clip</a> is to be <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a></td> </tr> </table> @@ -3317,7 +3317,7 @@ itself or another <a href='SkPath_Reference#Contour'>Path Contour</a>, whether t <td><a href='SkPath_Reference#Path'>Path</a> to combine with <a href='#Clip'>Clip</a></td> </tr> <tr> <td><a name='SkCanvas_clipPath_3_doAntiAlias'><code><strong>doAntiAlias</strong></code></a></td> - <td>true if <a href='#Clip'>Clip</a> is to be Anti-aliased</td> + <td>true if <a href='#Clip'>Clip</a> is to be <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a></td> </tr> </table> @@ -3475,7 +3475,7 @@ Return bounds of <a href='#Clip'>Clip</a>, transformed by inverse of <a href='#M return <a href='SkRect_Reference#SkRect_MakeEmpty'>SkRect::MakeEmpty</a>, where all <a href='SkRect_Reference#Rect'>Rect</a> sides equal zero. <a href='SkRect_Reference#Rect'>Rect</a> returned is outset by one to account for partial pixel coverage if <a href='#Clip'>Clip</a> -is Anti-aliased. +is <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a>. ### Return Value @@ -3514,7 +3514,7 @@ Return <a href='#SkCanvas_getLocalClipBounds_2_bounds'>bounds</a> of <a href='#C return false, and set <a href='#SkCanvas_getLocalClipBounds_2_bounds'>bounds</a> to <a href='SkRect_Reference#SkRect_MakeEmpty'>SkRect::MakeEmpty</a>, where all <a href='SkRect_Reference#Rect'>Rect</a> sides equal zero. <a href='#SkCanvas_getLocalClipBounds_2_bounds'>bounds</a> is outset by one to account for partial pixel coverage if <a href='#Clip'>Clip</a> -is Anti-aliased. +is <a href='SkPaint_Reference#Anti_Alias'>Anti Aliased</a>. ### Parameters @@ -3819,12 +3819,12 @@ void <a href='#SkCanvas_drawColor'>drawColor</a>(<a href='SkColor_Reference#SkCo </pre> Fill <a href='#Clip'>Clip</a> with <a href='SkColor_Reference#Color'>Color</a> <a href='#SkCanvas_drawColor_color'>color</a>. -<a href='#SkCanvas_drawColor_mode'>mode</a> determines how <a href='SkColor_Reference#ARGB'>Color ARGB</a> is combined with destination. +<a href='#SkCanvas_drawColor_mode'>mode</a> determines how ARGB is combined with destination. ### Parameters <table> <tr> <td><a name='SkCanvas_drawColor_color'><code><strong>color</strong></code></a></td> - <td><a href='undocumented#Unpremultiply'>Unpremultiplied</a> <a href='SkColor_Reference#ARGB'>Color ARGB</a></td> + <td><a href='undocumented#Unpremultiply'>Unpremultiplied</a> ARGB</td> </tr> <tr> <td><a name='SkCanvas_drawColor_mode'><code><strong>mode</strong></code></a></td> <td><a href='undocumented#SkBlendMode'>SkBlendMode</a> used to combine source <a href='#SkCanvas_drawColor_color'>color</a> and destination</td> @@ -3854,7 +3854,7 @@ This has the effect of replacing all pixels contained by <a href='#Clip'>Clip</a ### Parameters <table> <tr> <td><a name='SkCanvas_clear_color'><code><strong>color</strong></code></a></td> - <td><a href='undocumented#Unpremultiply'>Unpremultiplied</a> <a href='SkColor_Reference#ARGB'>Color ARGB</a></td> + <td><a href='undocumented#Unpremultiply'>Unpremultiplied</a> ARGB</td> </tr> </table> @@ -5906,7 +5906,7 @@ ending with a char value of zero</td> ### Example -<div><fiddle-embed name="65cc4b15cd1a8d067eb1dbfd7e2c17dd"></fiddle-embed></div> +<div><fiddle-embed name="85442cf8d0bce6b5a777853bc36a4dc4"></fiddle-embed></div> ### See Also @@ -6242,7 +6242,7 @@ void <a href='#SkCanvas_drawTextBlob'>drawTextBlob</a>(const <a href='undocument <a href='#SkCanvas_drawTextBlob_blob'>blob</a> contains <a href='undocumented#Glyph'>Glyphs</a>, their positions, and <a href='#SkCanvas_drawTextBlob_paint'>paint</a> attributes specific to text: <a href='undocumented#Typeface'>Typeface</a>, <a href='SkPaint_Reference#Text_Size'>Paint Text Size</a>, <a href='SkPaint_Reference#Text_Scale_X'>Paint Text Scale X</a>, <a href='SkPaint_Reference#Text_Skew_X'>Paint Text Skew X</a>, -<a href='SkPaint_Reference#Text_Align'>Paint Text Align</a>, <a href='SkPaint_Reference#Hinting'>Paint Hinting</a>, Anti-alias, <a href='SkPaint_Reference#Fake_Bold'>Paint Fake Bold</a>, +<a href='SkPaint_Reference#Text_Align'>Paint Text Align</a>, <a href='SkPaint_Reference#Hinting'>Paint Hinting</a>, <a href='SkPaint_Reference#Anti_Alias'>Anti Alias</a>, <a href='SkPaint_Reference#Fake_Bold'>Paint Fake Bold</a>, <a href='SkPaint_Reference#Font_Embedded_Bitmaps'>Font Embedded Bitmaps</a>, <a href='SkPaint_Reference#Full_Hinting_Spacing'>Full Hinting Spacing</a>, <a href='SkPaint_Reference#LCD_Text'>LCD Text</a>, <a href='SkPaint_Reference#Linear_Text'>Linear Text</a>, <a href='SkPaint_Reference#Subpixel_Text'>Subpixel Text</a>, and <a href='SkPaint_Reference#Vertical_Text'>Paint Vertical Text</a>. @@ -6287,7 +6287,7 @@ void <a href='#SkCanvas_drawTextBlob'>drawTextBlob</a>(const <a href='undocument <a href='#SkCanvas_drawTextBlob_2_blob'>blob</a> contains <a href='undocumented#Glyph'>Glyphs</a>, their positions, and <a href='#SkCanvas_drawTextBlob_2_paint'>paint</a> attributes specific to text: <a href='undocumented#Typeface'>Typeface</a>, <a href='SkPaint_Reference#Text_Size'>Paint Text Size</a>, <a href='SkPaint_Reference#Text_Scale_X'>Paint Text Scale X</a>, <a href='SkPaint_Reference#Text_Skew_X'>Paint Text Skew X</a>, -<a href='SkPaint_Reference#Text_Align'>Paint Text Align</a>, <a href='SkPaint_Reference#Hinting'>Paint Hinting</a>, Anti-alias, <a href='SkPaint_Reference#Fake_Bold'>Paint Fake Bold</a>, +<a href='SkPaint_Reference#Text_Align'>Paint Text Align</a>, <a href='SkPaint_Reference#Hinting'>Paint Hinting</a>, <a href='SkPaint_Reference#Anti_Alias'>Anti Alias</a>, <a href='SkPaint_Reference#Fake_Bold'>Paint Fake Bold</a>, <a href='SkPaint_Reference#Font_Embedded_Bitmaps'>Font Embedded Bitmaps</a>, <a href='SkPaint_Reference#Full_Hinting_Spacing'>Full Hinting Spacing</a>, <a href='SkPaint_Reference#LCD_Text'>LCD Text</a>, <a href='SkPaint_Reference#Linear_Text'>Linear Text</a>, <a href='SkPaint_Reference#Subpixel_Text'>Subpixel Text</a>, and <a href='SkPaint_Reference#Vertical_Text'>Paint Vertical Text</a>. @@ -6644,7 +6644,7 @@ void <a href='#SkCanvas_drawAtlas'>drawAtlas</a>(const <a href='SkImage_Referenc </pre> <a href='#Draw'>Draw</a> a set of sprites from <a href='#SkCanvas_drawAtlas_atlas'>atlas</a>, using <a href='#Clip'>Clip</a>, <a href='#Matrix'>Matrix</a>, and optional <a href='SkPaint_Reference#Paint'>Paint</a> <a href='#SkCanvas_drawAtlas_paint'>paint</a>. -<a href='#SkCanvas_drawAtlas_paint'>paint</a> uses Anti-alias, <a href='SkColor_Reference#Alpha'>Color Alpha</a>, <a href='undocumented#Color_Filter'>Color Filter</a>, <a href='undocumented#Image_Filter'>Image Filter</a>, and <a href='undocumented#Blend_Mode'>Blend Mode</a> +<a href='#SkCanvas_drawAtlas_paint'>paint</a> uses <a href='SkPaint_Reference#Anti_Alias'>Anti Alias</a>, <a href='SkColor_Reference#Alpha'>Color Alpha</a>, <a href='undocumented#Color_Filter'>Color Filter</a>, <a href='undocumented#Image_Filter'>Image Filter</a>, and <a href='undocumented#Blend_Mode'>Blend Mode</a> to draw, if present. For each entry in the array, <a href='SkRect_Reference#Rect'>Rect</a> <a href='#SkCanvas_drawAtlas_tex'>tex</a> locates sprite in <a href='#SkCanvas_drawAtlas_atlas'>atlas</a>, and <a href='undocumented#RSXform'>RSXform</a> <a href='#SkCanvas_drawAtlas_xform'>xform</a> transforms it into destination space. @@ -6700,7 +6700,7 @@ void <a href='#SkCanvas_drawAtlas'>drawAtlas</a>(const <a href='undocumented#sk_ </pre> <a href='#Draw'>Draw</a> a set of sprites from <a href='#SkCanvas_drawAtlas_2_atlas'>atlas</a>, using <a href='#Clip'>Clip</a>, <a href='#Matrix'>Matrix</a>, and optional <a href='SkPaint_Reference#Paint'>Paint</a> <a href='#SkCanvas_drawAtlas_2_paint'>paint</a>. -<a href='#SkCanvas_drawAtlas_2_paint'>paint</a> uses Anti-alias, <a href='SkColor_Reference#Alpha'>Color Alpha</a>, <a href='undocumented#Color_Filter'>Color Filter</a>, <a href='undocumented#Image_Filter'>Image Filter</a>, and <a href='undocumented#Blend_Mode'>Blend Mode</a> +<a href='#SkCanvas_drawAtlas_2_paint'>paint</a> uses <a href='SkPaint_Reference#Anti_Alias'>Anti Alias</a>, <a href='SkColor_Reference#Alpha'>Color Alpha</a>, <a href='undocumented#Color_Filter'>Color Filter</a>, <a href='undocumented#Image_Filter'>Image Filter</a>, and <a href='undocumented#Blend_Mode'>Blend Mode</a> to draw, if present. For each entry in the array, <a href='SkRect_Reference#Rect'>Rect</a> <a href='#SkCanvas_drawAtlas_2_tex'>tex</a> locates sprite in <a href='#SkCanvas_drawAtlas_2_atlas'>atlas</a>, and <a href='undocumented#RSXform'>RSXform</a> <a href='#SkCanvas_drawAtlas_2_xform'>xform</a> transforms it into destination space. @@ -6755,7 +6755,7 @@ void <a href='#SkCanvas_drawAtlas'>drawAtlas</a>(const <a href='SkImage_Referenc </pre> <a href='#Draw'>Draw</a> a set of sprites from <a href='#SkCanvas_drawAtlas_3_atlas'>atlas</a>, using <a href='#Clip'>Clip</a>, <a href='#Matrix'>Matrix</a>, and optional <a href='SkPaint_Reference#Paint'>Paint</a> <a href='#SkCanvas_drawAtlas_3_paint'>paint</a>. -<a href='#SkCanvas_drawAtlas_3_paint'>paint</a> uses Anti-alias, <a href='SkColor_Reference#Alpha'>Color Alpha</a>, <a href='undocumented#Color_Filter'>Color Filter</a>, <a href='undocumented#Image_Filter'>Image Filter</a>, and <a href='undocumented#Blend_Mode'>Blend Mode</a> +<a href='#SkCanvas_drawAtlas_3_paint'>paint</a> uses <a href='SkPaint_Reference#Anti_Alias'>Anti Alias</a>, <a href='SkColor_Reference#Alpha'>Color Alpha</a>, <a href='undocumented#Color_Filter'>Color Filter</a>, <a href='undocumented#Image_Filter'>Image Filter</a>, and <a href='undocumented#Blend_Mode'>Blend Mode</a> to draw, if present. For each entry in the array, <a href='SkRect_Reference#Rect'>Rect</a> <a href='#SkCanvas_drawAtlas_3_tex'>tex</a> locates sprite in <a href='#SkCanvas_drawAtlas_3_atlas'>atlas</a>, and <a href='undocumented#RSXform'>RSXform</a> <a href='#SkCanvas_drawAtlas_3_xform'>xform</a> transforms it into destination space. @@ -6803,7 +6803,7 @@ void <a href='#SkCanvas_drawAtlas'>drawAtlas</a>(const <a href='undocumented#sk_ </pre> <a href='#Draw'>Draw</a> a set of sprites from <a href='#SkCanvas_drawAtlas_4_atlas'>atlas</a>, using <a href='#Clip'>Clip</a>, <a href='#Matrix'>Matrix</a>, and optional <a href='SkPaint_Reference#Paint'>Paint</a> <a href='#SkCanvas_drawAtlas_4_paint'>paint</a>. -<a href='#SkCanvas_drawAtlas_4_paint'>paint</a> uses Anti-alias, <a href='SkColor_Reference#Alpha'>Color Alpha</a>, <a href='undocumented#Color_Filter'>Color Filter</a>, <a href='undocumented#Image_Filter'>Image Filter</a>, and <a href='undocumented#Blend_Mode'>Blend Mode</a> +<a href='#SkCanvas_drawAtlas_4_paint'>paint</a> uses <a href='SkPaint_Reference#Anti_Alias'>Anti Alias</a>, <a href='SkColor_Reference#Alpha'>Color Alpha</a>, <a href='undocumented#Color_Filter'>Color Filter</a>, <a href='undocumented#Image_Filter'>Image Filter</a>, and <a href='undocumented#Blend_Mode'>Blend Mode</a> to draw, if present. For each entry in the array, <a href='SkRect_Reference#Rect'>Rect</a> <a href='#SkCanvas_drawAtlas_4_tex'>tex</a> locates sprite in <a href='#SkCanvas_drawAtlas_4_atlas'>atlas</a>, and <a href='undocumented#RSXform'>RSXform</a> <a href='#SkCanvas_drawAtlas_4_xform'>xform</a> transforms it into destination space. diff --git a/site/user/api/SkColor4f_Reference.md b/site/user/api/SkColor4f_Reference.md index 425b8c271c..6b3b01108b 100644 --- a/site/user/api/SkColor4f_Reference.md +++ b/site/user/api/SkColor4f_Reference.md @@ -14,22 +14,29 @@ SkColor4f members may be read and written directly without using a member functi <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_fA'>fA</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>alpha component</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_fB'>fB</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>blue component</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_fG'>fG</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>green component</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_fR'>fR</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>red component</td> </tr> </table> -The float values are 0...1 <a href='undocumented#Unpremultiply'>Unpremultiplied</a> +Each component is stored as a 32-bit single precision floating point float value. +All values are allowed, but only the range from zero to one is meaningful. + +Each component is independent of the others; <a href='#SkColor4f_fA'>fA</a> <a href='SkColor_Reference#Alpha'>Alpha</a> is not <a href='undocumented#Premultiply'>Premultiplied</a> +with <a href='#SkColor4f_fG'>fG</a> green, <a href='#SkColor4f_fB'>fB</a> blue, or <a href='#SkColor4f_fR'>fR</a> red. + +Values smaller than zero or larger than one are allowed. Values out of range +may be used with <a href='undocumented#Blend_Mode'>Blend Mode</a> so that the final component is in range. ## Overview @@ -60,11 +67,11 @@ SkColor4f operators inline class member functions with arithmetic equivalents. <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_notequal1_operator'>operator!=(const SkColor4f& other) const</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>compares colors for inequality</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_equal1_operator'>operator==(const SkColor4f& other) const</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>compares <a href='#Color4f'>Color4f</a> for equality</td> </tr> </table> @@ -78,23 +85,23 @@ SkColor4f member functions read and modify the structure properties. <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_FromColor'>FromColor</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>sets components from <a href='SkColor_Reference#Color'>Color</a></td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_Pin'>Pin</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>sets components to valid range</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_pin'>pin</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>sets components to valid range</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_toSkColor'>toSkColor</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns closest <a href='SkColor_Reference#Color'>Color</a></td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColor4f_vec'>vec</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns array of components</td> </tr> </table> @@ -109,25 +116,29 @@ SkColor4f member functions read and modify the structure properties. <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>float</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkColor4f_fR'><code>fR</code></a></td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> -incomplete</td> +Single precision float for red ranges from no red (0.0) to full red (1.0). +</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>float</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkColor4f_fG'><code>fG</code></a></td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> -incomplete</td> +Single precision float for green ranges from no green (0.0) to full green (1.0). +</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>float</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkColor4f_fB'><code>fB</code></a></td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> -incomplete</td> +Single precision float for blue ranges from no blue (0.0) to full blue (1.0). +</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>float</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkColor4f_fA'><code>fA</code></a></td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> -incomplete</td> +Single precision float for <a href='SkColor_Reference#Alpha'>Alpha</a> ranges from no <a href='SkColor_Reference#Alpha'>Alpha</a> (0.0) to full <a href='SkColor_Reference#Alpha'>Alpha</a> (1.0). +</td> </tr> </table> @@ -138,24 +149,34 @@ incomplete</td> bool operator==(const SkColor4f& other) _const </pre> +Compares <a href='#Color4f'>Color4f</a> with <a href='#SkColor4f_equal1_operator_other'>other</a>, and returns true if all components are equivalent. + ### Parameters <table> <tr> <td><a name='SkColor4f_equal1_operator_other'><code><strong>other</strong></code></a></td> - <td>incomplete</td> + <td><a href='#Color4f'>Color4f</a> to compare</td> </tr> </table> ### Return Value -incomplete +true if <a href='#Color4f'>Color4f</a> equals <a href='#SkColor4f_equal1_operator_other'>other</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="e5b34bcb7f80f2ed890cdacaa059db0d"> + +#### Example Output + +~~~~ +colorRed == colorNamedRed +~~~~ + +</fiddle-embed></div> ### See Also -incomplete +<a href='#SkColor4f_notequal1_operator'>operator!=(const SkColor4f& other) const</a> --- @@ -166,24 +187,35 @@ incomplete bool operator!=(const SkColor4f& other) _const </pre> +Compares <a href='#Color4f'>Color4f</a> with <a href='#SkColor4f_notequal1_operator_other'>other</a>, and returns true if all components are not +equivalent. + ### Parameters <table> <tr> <td><a name='SkColor4f_notequal1_operator_other'><code><strong>other</strong></code></a></td> - <td>incomplete</td> + <td><a href='#Color4f'>Color4f</a> to compare</td> </tr> </table> ### Return Value -incomplete +true if <a href='#Color4f'>Color4f</a> is not equal to <a href='#SkColor4f_notequal1_operator_other'>other</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="82f1a9b4c2b27aa547061786d1f33dab"> + +#### Example Output + +~~~~ +colorGray != colorNamedGray +~~~~ + +</fiddle-embed></div> ### See Also -incomplete +<a href='#SkColor4f_equal1_operator'>operator==(const SkColor4f& other) const</a> --- @@ -194,17 +226,28 @@ incomplete const float* <a href='#SkColor4f_vec'>vec</a>() const </pre> +Returns <a href='#Color4f'>Color4f</a> components as a read-only array. + ### Return Value -incomplete +components as read-only array ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="229057023515224358a36acf15508cf6"> + +#### Example Output + +~~~~ +red=0.0578054 green=0.246201 blue=0.603827 alpha=0.533333 +[0]=0.0578054 [1]=0.246201 [2]=0.603827 [3]=0.533333 +~~~~ + +</fiddle-embed></div> ### See Also -incomplete +<a href='#SkColor4f'>SkColor4f</a> --- @@ -214,17 +257,28 @@ incomplete float* <a href='#SkColor4f_vec'>vec</a>() </pre> +Returns <a href='#Color4f'>Color4f</a> components as a writable array. + ### Return Value -incomplete +components as writable array ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="7420bf0a7cae5c6577c4c4a4613e7e7e"> + +#### Example Output + +~~~~ +red=0.0578054 green=0.246201 blue=0.603827 alpha=0.533333 +[0]=0.0578054 [1]=0.246201 [2]=0.603827 [3]=1 +~~~~ + +</fiddle-embed></div> ### See Also -incomplete +<a href='#SkColor4f'>SkColor4f</a> --- @@ -235,33 +289,35 @@ incomplete static <a href='#SkColor4f'>SkColor4f</a> <a href='#SkColor4f_Pin'>Pin</a>(float r, float g, float b, float a) </pre> +Constructs and returns <a href='#Color4f'>Color4f</a> with each component pinned from zero to one. + ### Parameters <table> <tr> <td><a name='SkColor4f_Pin_r'><code><strong>r</strong></code></a></td> - <td>incomplete</td> + <td>red component</td> </tr> <tr> <td><a name='SkColor4f_Pin_g'><code><strong>g</strong></code></a></td> - <td>incomplete</td> + <td>green component</td> </tr> <tr> <td><a name='SkColor4f_Pin_b'><code><strong>b</strong></code></a></td> - <td>incomplete</td> + <td>blue component</td> </tr> <tr> <td><a name='SkColor4f_Pin_a'><code><strong>a</strong></code></a></td> - <td>incomplete</td> + <td><a href='SkColor_Reference#Alpha'>Alpha</a> component</td> </tr> </table> ### Return Value -incomplete +<a href='#Color4f'>Color4f</a> with valid components ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="c989cf16c7f8849874eb008cd701af76"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColor4f_pin'>pin</a> <a href='#SkColor4f_FromColor'>FromColor</a> --- @@ -272,26 +328,35 @@ incomplete static <a href='#SkColor4f'>SkColor4f</a> <a href='#SkColor4f_FromColor'>FromColor</a>(<a href='SkColor_Reference#SkColor'>SkColor</a>) </pre> -Convert to <a href='#SkColor4f'>SkColor4f</a>, assuming <a href='SkColor_Reference#SkColor'>SkColor</a> is sRGB +Converts to closest <a href='#Color4f'>Color4f</a>. ### Parameters <table> <tr> <td><a name='SkColor4f_FromColor_SkColor'><code><strong>SkColor</strong></code></a></td> - <td>incomplete</td> + <td><a href='SkColor_Reference#Color'>Color</a> with <a href='SkColor_Reference#Alpha'>Alpha</a>, red, blue, and green components</td> </tr> </table> ### Return Value -incomplete +<a href='#Color4f'>Color4f</a> equivalent ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="33b029064e8d1928e42a587c953d0e4e"> + +#### Example Output + +~~~~ +red=0.0742136 green=0.130136 blue=0.318547 alpha=0.168627 +red=77 green=101 blue=153 alpha=43 +~~~~ + +</fiddle-embed></div> ### See Also -incomplete +<a href='#SkColor4f_toSkColor'>toSkColor</a> --- @@ -302,17 +367,28 @@ incomplete <a href='SkColor_Reference#SkColor'>SkColor</a> <a href='#SkColor4f_toSkColor'>toSkColor</a>() const </pre> +Converts to closest <a href='SkColor_Reference#SkColor'>SkColor</a>. + ### Return Value -incomplete +closest <a href='SkColor_Reference#Color'>Color</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="edc5fd18d961f7607d2bcbf7f7d427e5"> + +#### Example Output + +~~~~ +red=75 green=101 blue=153 alpha=43 +red=0.0703601 green=0.130136 blue=0.318547 alpha=0.168627 +~~~~ + +</fiddle-embed></div> ### See Also -incomplete +<a href='#SkColor4f_FromColor'>FromColor</a> --- @@ -323,17 +399,19 @@ incomplete <a href='#SkColor4f'>SkColor4f</a> <a href='#SkColor4f_pin'>pin</a>() const </pre> +Returns <a href='#Color4f'>Color4f</a> with all components in the range from zero to one. + ### Return Value -incomplete +<a href='#Color4f'>Color4f</a> with valid components ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="9e349862c5189a44d2acef5da24f2e79"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColor4f_Pin'>Pin</a> --- diff --git a/site/user/api/SkColor_Reference.md b/site/user/api/SkColor_Reference.md index f2a1475e1c..7677ebd971 100644 --- a/site/user/api/SkColor_Reference.md +++ b/site/user/api/SkColor_Reference.md @@ -40,15 +40,15 @@ SkColor uses preprocessor definitions to inline code and constants, and to abstr </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColorGetB'>SkColorGetB</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns blue component</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColorGetG'>SkColorGetG</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns green component</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColorGetR'>SkColorGetR</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns red component</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColorSetRGB'>SkColorSetRGB</a></td> @@ -133,11 +133,11 @@ SkColor related constants are defined by <code>enum</code>, <code>enum class</co <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColorSetA'>SkColorSetA</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns <a href='#Color'>Color</a> with transparency</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColorSetARGB'>SkColorSetARGB</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns <a href='#Alpha'>Color Alpha</a> and <a href='#RGB'>Color RGB</a> combined</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns <a href='#Alpha'>Color Alpha</a> and RGB combined</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkColorToHSV'>SkColorToHSV</a></td> @@ -153,7 +153,7 @@ SkColor related constants are defined by <code>enum</code>, <code>enum class</co </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPreMultiplyARGB'>SkPreMultiplyARGB</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>converts <a href='undocumented#Unpremultiply'>Unpremultiplied</a> <a href='#ARGB'>ARGB</a> to <a href='undocumented#Premultiply'>Premultiplied</a> <a href='#PMColor'>PMColor</a></td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>converts <a href='undocumented#Unpremultiply'>Unpremultiplied</a> ARGB to <a href='undocumented#Premultiply'>Premultiplied</a> <a href='#PMColor'>PMColor</a></td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPreMultiplyColor'>SkPreMultiplyColor</a></td> @@ -161,7 +161,7 @@ SkColor related constants are defined by <code>enum</code>, <code>enum class</co </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkRGBToHSV'>SkRGBToHSV</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>incomplete</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>converts RGB to <a href='#HSV'>HSV</a></td> </tr> </table> @@ -188,22 +188,6 @@ SkColor <code>typedef</code> define a data type. </table> -## <a name='RGB'>RGB</a> - -## <a name='RGB_Red'>RGB Red</a> - -## <a name='RGB_Blue'>RGB Blue</a> - -## <a name='RGB_Green'>RGB Green</a> - -## <a name='ARGB'>ARGB</a> - -## <a name='RBG'>RBG</a> - -## <a name='RGB-565'>RGB-565</a> - -## <a name='Gray'>Gray</a> - ## <a name='Alpha'>Alpha</a> <a href='#Alpha'>Alpha</a> represents the transparency of <a href='#Color'>Color</a>. <a href='#Color'>Color</a> with <a href='#Alpha'>Alpha</a> of zero is fully @@ -213,11 +197,21 @@ floating point values. Unsigned integer <a href='#Alpha'>Alpha</a> ranges from z transparent, to all bits set, fully opaque. Floating point <a href='#Alpha'>Alpha</a> ranges from zero, fully transparent, to one, fully opaque. -# <a name='SkAlpha'>Typedef SkAlpha</a> +## <a name='SkAlpha'>Typedef SkAlpha</a> + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +typedef uint8_t <a href='#SkAlpha'>SkAlpha</a>; +</pre> + 8-bit type for an alpha value. 0xFF is 100% opaque, 0x00 is 100% transparent. -# <a name='SkColor'>Typedef SkColor</a> -32-bit <a href='#ARGB'>ARGB</a> <a href='#Color'>Color</a> value, <a href='undocumented#Unpremultiply'>Unpremultiplied</a>. <a href='#Color'>Color</a> components are always in +## <a name='SkColor'>Typedef SkColor</a> + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +typedef uint32_t <a href='#SkColor'>SkColor</a>; +</pre> + +32-bit ARGB <a href='#Color'>Color</a> value, <a href='undocumented#Unpremultiply'>Unpremultiplied</a>. <a href='#Color'>Color</a> components are always in a known order. This is different from <a href='#SkPMColor'>SkPMColor</a>, which has its bytes in a configuration dependent order, to match the format of <a href='SkImageInfo_Reference#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a> bitmaps. <a href='#SkColor'>SkColor</a> is the type used to specify colors in <a href='SkPaint_Reference#SkPaint'>SkPaint</a> and in gradients. @@ -247,13 +241,13 @@ than the largest of <a href='#SkColorSetARGB_r'>r</a>, <a href='#SkColorSetARGB_ <td>amount of <a href='#Alpha'>Alpha</a>, from fully transparent (0) to fully opaque (255)</td> </tr> <tr> <td><a name='SkColorSetARGB_r'><code><strong>r</strong></code></a></td> - <td>amount of <a href='#RGB_Red'>RGB Red</a>, from no red (0) to full red (255)</td> + <td>amount of red, from no red (0) to full red (255)</td> </tr> <tr> <td><a name='SkColorSetARGB_g'><code><strong>g</strong></code></a></td> - <td>amount of <a href='#RGB_Green'>RGB Green</a>, from no green (0) to full green (255)</td> + <td>amount of green, from no green (0) to full green (255)</td> </tr> <tr> <td><a name='SkColorSetARGB_b'><code><strong>b</strong></code></a></td> - <td>amount of <a href='#RGB_Blue'>RGB Blue</a>, from no blue (0) to full blue (255)</td> + <td>amount of blue, from no blue (0) to full blue (255)</td> </tr> </table> @@ -267,25 +261,11 @@ color and alpha, <a href='undocumented#Unpremultiply'>Unpremultiplied</a> ### See Also -<a href='#SkColorSetRGB'>SkColorSetRGB</a> <a href='SkPaint_Reference#SkPaint_setARGB'>SkPaint::setARGB</a> <a href='SkPaint_Reference#SkPaint_setColor'>SkPaint::setColor</a> +<a href='#SkColorSetRGB'>SkColorSetRGB</a> <a href='SkPaint_Reference#SkPaint_setARGB'>SkPaint::setARGB</a> <a href='SkPaint_Reference#SkPaint_setColor'>SkPaint::setColor</a> <a href='#SkColorSetA'>SkColorSetA</a> --- -<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> - #define <a href='#SkColorSetARGBInline'>SkColorSetARGBInline</a> <a href='#SkColorSetARGB'>SkColorSetARGB</a> -</pre> - -Deprecated. - -soon - -<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> - #define <a href='#SkColorSetARGBMacro'>SkColorSetARGBMacro</a> <a href='#SkColorSetARGB'>SkColorSetARGB</a> -</pre> - -Deprecated. - -soon +## <a name='SkColorSetRGB'>Define SkColorSetRGB</a> <pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> #define <a href='#SkColorSetRGB'>SkColorSetRGB(r, g, b)</a> <a href='#SkColorSetARGB'>SkColorSetARGB(0xFF, r, g, b)</a> @@ -297,13 +277,13 @@ fully opaque to 255. ### Parameters <table> <tr> <td><a name='SkColorSetRGB_r'><code><strong>r</strong></code></a></td> - <td>amount of <a href='#RGB_Red'>RGB Red</a>, from no red (0) to full red (255)</td> + <td>amount of red, from no red (0) to full red (255)</td> </tr> <tr> <td><a name='SkColorSetRGB_g'><code><strong>g</strong></code></a></td> - <td>amount of <a href='#RGB_Green'>RGB Green</a>, from no green (0) to full green (255)</td> + <td>amount of green, from no green (0) to full green (255)</td> </tr> <tr> <td><a name='SkColorSetRGB_b'><code><strong>b</strong></code></a></td> - <td>amount of <a href='#RGB_Blue'>RGB Blue</a>, from no blue (0) to full blue (255)</td> + <td>amount of blue, from no blue (0) to full blue (255)</td> </tr> </table> @@ -317,7 +297,9 @@ color with opaque alpha ### See Also -incomplete +<a href='#SkColorSetARGB'>SkColorSetARGB</a> + +## <a name='SkColorGetA'>Define SkColorGetA</a> <pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> #define <a href='#SkColorGetA'>SkColorGetA(color)</a> (((color) >> 24) & 0xFF) @@ -334,11 +316,13 @@ Returns <a href='#Alpha'>Alpha</a> byte from <a href='#Color'>Color</a> value. ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="896ce0316b489608a95af5439ca2aab1"></fiddle-embed></div> ### See Also -incomplete +<a href='SkPaint_Reference#SkPaint_getAlpha'>SkPaint::getAlpha</a> + +## <a name='SkColorGetR'>Define SkColorGetR</a> <pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> #define <a href='#SkColorGetR'>SkColorGetR(color)</a> (((color) >> 16) & 0xFF) @@ -359,11 +343,13 @@ red byte ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="d6da38577f189eaa6d9df75f6c3ed252"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColorGetG'>SkColorGetG</a> <a href='#SkColorGetB'>SkColorGetB</a> + +## <a name='SkColorGetG'>Define SkColorGetG</a> <pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> #define <a href='#SkColorGetG'>SkColorGetG(color)</a> (((color) >> 8) & 0xFF) @@ -384,11 +370,13 @@ green byte ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="535d38b2c019299d915170f7b03d5fea"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColorGetR'>SkColorGetR</a> <a href='#SkColorGetB'>SkColorGetB</a> + +## <a name='SkColorGetB'>Define SkColorGetB</a> <pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> #define <a href='#SkColorGetB'>SkColorGetB(color)</a> (((color) >> 0) & 0xFF) @@ -409,11 +397,11 @@ blue byte ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="9ee27675284faea375611dc88123a2c5"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColorGetR'>SkColorGetR</a> <a href='#SkColorGetG'>SkColorGetG</a> <a name='SkColorSetA'></a> ## SkColorSetA @@ -422,29 +410,30 @@ incomplete static constexpr inline <a href='#SkColor'>SkColor</a> <a href='#SkColorSetA'>SkColorSetA</a>(<a href='#SkColor'>SkColor</a> c, <a href='undocumented#U8CPU'>U8CPU</a> a) </pre> -Returns <a href='#Color'>Color</a> with red, blue, and green set from <a href='#SkColorSetA_c'>c</a>; and alpha set from <a href='#SkColorSetA_a'>a</a>. +Returns <a href='undocumented#Unpremultiply'>Unpremultiplied</a> <a href='#Color'>Color</a> with red, blue, and green set from <a href='#SkColorSetA_c'>c</a>; and alpha set +from <a href='#SkColorSetA_a'>a</a>. <a href='#Alpha'>Alpha</a> component of <a href='#SkColorSetA_c'>c</a> is ignored and is replaced by <a href='#SkColorSetA_a'>a</a> in result. ### Parameters <table> <tr> <td><a name='SkColorSetA_c'><code><strong>c</strong></code></a></td> - <td><a href='undocumented#Unpremultiply'>Unpremultiplied</a> <a href='#ARGB'>Color ARGB</a></td> + <td>packed RGB, eight bits per component</td> </tr> <tr> <td><a name='SkColorSetA_a'><code><strong>a</strong></code></a></td> - <td>incomplete</td> + <td><a href='#Alpha'>Alpha</a>: transparent at zero, fully opaque at 255</td> </tr> </table> ### Return Value -incomplete +<a href='#Color'>Color</a> with transparency ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="18f6f376f771f5ffa56d5e5b2ebd20fb"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColorSetARGB'>SkColorSetARGB</a> --- @@ -459,13 +448,13 @@ incomplete <th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Alpha_Constants'><code>Alpha_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_AlphaTRANSPARENT'><code>SK_AlphaTRANSPARENT</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0x00</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>fully transparent SkAlpha</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Alpha_Constants'><code>Alpha_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_AlphaOPAQUE'><code>SK_AlphaOPAQUE</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFF</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>fully opaque SkAlpha</td> </tr> </table> @@ -538,63 +527,63 @@ fully transparent; to 255, fully opaque. <th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorTRANSPARENT'><code>SK_ColorTRANSPARENT</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0x00000000</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>transparent Color</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorBLACK'><code>SK_ColorBLACK</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFF000000</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>black Color</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorDKGRAY'><code>SK_ColorDKGRAY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFF444444</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>dark gray Color</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorGRAY'><code>SK_ColorGRAY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFF888888</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>gray Color</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorLTGRAY'><code>SK_ColorLTGRAY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFFCCCCCC</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>light gray Color</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorWHITE'><code>SK_ColorWHITE</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFFFFFFFF</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>white Color</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorRED'><code>SK_ColorRED</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFFFF0000</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>red Color</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorGREEN'><code>SK_ColorGREEN</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFF00FF00</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>green Color</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorBLUE'><code>SK_ColorBLUE</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFF0000FF</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>blue Color</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorYELLOW'><code>SK_ColorYELLOW</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFFFFFF00</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>yellow Color</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorCYAN'><code>SK_ColorCYAN</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFF00FFFF</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>cyan Color</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Color_Constants'><code>Color_Constants</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SK_ColorMAGENTA'><code>SK_ColorMAGENTA</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0xFFFF00FF</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>magenta Color</td> </tr> </table> @@ -737,7 +726,7 @@ Represents fully opaque magenta. HTML_Fuchsia is equivalent. ### Example -<div><fiddle-embed name="cfda8cd3b435bb28e2f4b9c7f15603a6"></fiddle-embed></div> +<div><fiddle-embed name="9ca1e2a5b9b4c92ecf4409d0813867d6"></fiddle-embed></div> ### See Also @@ -778,10 +767,10 @@ modulo 360, where zero degrees is red. ## SkRGBToHSV <pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> -SK_API void <a href='#SkRGBToHSV'>SkRGBToHSV</a>(<a href='undocumented#U8CPU'>U8CPU</a> red, <a href='undocumented#U8CPU'>U8CPU</a> green, <a href='undocumented#U8CPU'>U8CPU</a> blue, <a href='undocumented#SkScalar'>SkScalar</a> hsv[3]) +void <a href='#SkRGBToHSV'>SkRGBToHSV</a>(<a href='undocumented#U8CPU'>U8CPU</a> red, <a href='undocumented#U8CPU'>U8CPU</a> green, <a href='undocumented#U8CPU'>U8CPU</a> blue, <a href='undocumented#SkScalar'>SkScalar</a> hsv[3]) </pre> -Converts RGB components to <a href='#HSV'>HSV</a>. +Converts RGB to its <a href='#HSV'>HSV</a> components. <a href='#SkRGBToHSV_hsv'>hsv</a>[0] contains <a href='#HSV_Hue'>Hue</a>, a value from zero to less than 360. <a href='#SkRGBToHSV_hsv'>hsv</a>[1] contains <a href='#HSV_Saturation'>Saturation</a>, a value from zero to one. <a href='#SkRGBToHSV_hsv'>hsv</a>[2] contains <a href='#HSV_Value'>Value</a>, a value from zero to one. @@ -802,17 +791,13 @@ Converts RGB components to <a href='#HSV'>HSV</a>. </tr> </table> -### Return Value - -incomplete - ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="4fb2da4a3d9b14ca4ac24eefb0f5126a"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColorToHSV'>SkColorToHSV</a> <a href='#SkHSVToColor'>SkHSVToColor</a> --- @@ -820,10 +805,10 @@ incomplete ## SkColorToHSV <pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> -static inline void <a href='#SkColorToHSV'>SkColorToHSV</a>(<a href='#SkColor'>SkColor</a> color, <a href='undocumented#SkScalar'>SkScalar</a> hsv[3]) +void <a href='#SkColorToHSV'>SkColorToHSV</a>(<a href='#SkColor'>SkColor</a> color, <a href='undocumented#SkScalar'>SkScalar</a> hsv[3]) </pre> -Converts <a href='#ARGB'>ARGB</a> to its <a href='#HSV'>HSV</a> components. <a href='#Alpha'>Alpha</a> in <a href='#ARGB'>ARGB</a> is ignored. +Converts ARGB to its <a href='#HSV'>HSV</a> components. <a href='#Alpha'>Alpha</a> in ARGB is ignored. <a href='#SkColorToHSV_hsv'>hsv</a>[0] contains <a href='#HSV_Hue'>Hue</a>, and is assigned a value from zero to less than 360. <a href='#SkColorToHSV_hsv'>hsv</a>[1] contains <a href='#HSV_Saturation'>Saturation</a>, a value from zero to one. <a href='#SkColorToHSV_hsv'>hsv</a>[2] contains <a href='#HSV_Value'>Value</a>, a value from zero to one. @@ -831,24 +816,20 @@ Converts <a href='#ARGB'>ARGB</a> to its <a href='#HSV'>HSV</a> components. <a h ### Parameters <table> <tr> <td><a name='SkColorToHSV_color'><code><strong>color</strong></code></a></td> - <td><a href='#ARGB'>ARGB</a> <a href='#SkColorToHSV_color'>color</a> to convert</td> + <td>ARGB <a href='#SkColorToHSV_color'>color</a> to convert</td> </tr> <tr> <td><a name='SkColorToHSV_hsv'><code><strong>hsv</strong></code></a></td> <td>three element array which holds the resulting <a href='#HSV'>HSV</a> components</td> </tr> </table> -### Return Value - -incomplete - ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="7d7e427e2b181c651abad5732bc46cf7"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkRGBToHSV'>SkRGBToHSV</a> <a href='#SkHSVToColor'>SkHSVToColor</a> --- @@ -856,20 +837,20 @@ incomplete ## SkHSVToColor <pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> -SK_API <a href='#SkColor'>SkColor</a> <a href='#SkHSVToColor'>SkHSVToColor</a>(<a href='undocumented#U8CPU'>U8CPU</a> alpha, const <a href='undocumented#SkScalar'>SkScalar</a> hsv[3]) +<a href='#SkColor'>SkColor</a> <a href='#SkHSVToColor'>SkHSVToColor</a>(<a href='undocumented#U8CPU'>U8CPU</a> alpha, const <a href='undocumented#SkScalar'>SkScalar</a> hsv[3]) </pre> -Converts <a href='#HSV'>HSV</a> components to an <a href='#ARGB'>ARGB</a> color. The <a href='#SkHSVToColor_alpha'>alpha</a> component is passed through unchanged. +Converts <a href='#HSV'>HSV</a> components to an ARGB color. <a href='#Alpha'>Alpha</a> is passed through unchanged. <a href='#SkHSVToColor_hsv'>hsv</a>[0] represents <a href='#HSV_Hue'>Hue</a>, an angle from zero to less than 360. <a href='#SkHSVToColor_hsv'>hsv</a>[1] represents <a href='#HSV_Saturation'>Saturation</a>, and varies from zero to one. <a href='#SkHSVToColor_hsv'>hsv</a>[2] represents <a href='#HSV_Value'>Value</a>, and varies from zero to one. -If <a href='#SkHSVToColor_hsv'>hsv</a> values are out of range, they are pinned. +Out of range <a href='#SkHSVToColor_hsv'>hsv</a> values are pinned. ### Parameters <table> <tr> <td><a name='SkHSVToColor_alpha'><code><strong>alpha</strong></code></a></td> - <td><a href='#Alpha'>Alpha</a> component of the returned <a href='#ARGB'>ARGB</a> color</td> + <td><a href='#Alpha'>Alpha</a> component of the returned ARGB color</td> </tr> <tr> <td><a name='SkHSVToColor_hsv'><code><strong>hsv</strong></code></a></td> <td>three element array which holds the input <a href='#HSV'>HSV</a> components</td> @@ -878,57 +859,61 @@ If <a href='#SkHSVToColor_hsv'>hsv</a> values are out of range, they are pinned. ### Return Value -<a href='#ARGB'>ARGB</a> equivalent to <a href='#HSV'>HSV</a> +ARGB equivalent to <a href='#HSV'>HSV</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="311a59931ac340b90f202cd6ac399a0a"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColorToHSV'>SkColorToHSV</a> <a href='#SkRGBToHSV'>SkRGBToHSV</a> --- <a name='SkHSVToColor_2'></a> <pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> -static inline <a href='#SkColor'>SkColor</a> <a href='#SkHSVToColor'>SkHSVToColor</a>(const <a href='undocumented#SkScalar'>SkScalar</a> hsv[3]) +<a href='#SkColor'>SkColor</a> <a href='#SkHSVToColor'>SkHSVToColor</a>(const <a href='undocumented#SkScalar'>SkScalar</a> hsv[3]) </pre> -Convert <a href='#HSV'>HSV</a> components to an <a href='#ARGB'>ARGB</a> color. The alpha component set to 0xFF. +Convert <a href='#HSV'>HSV</a> components to an ARGB color. <a href='#Alpha'>Alpha</a> is set to 0xFF. <a href='#SkHSVToColor_2_hsv'>hsv</a>[0] represents <a href='#HSV_Hue'>Hue</a>, an angle from zero to less than 360. <a href='#SkHSVToColor_2_hsv'>hsv</a>[1] represents <a href='#HSV_Saturation'>Saturation</a>, and varies from zero to one. <a href='#SkHSVToColor_2_hsv'>hsv</a>[2] represents <a href='#HSV_Value'>Value</a>, and varies from zero to one. -If <a href='#SkHSVToColor_2_hsv'>hsv</a> values are out of range, they are pinned. +Out of range <a href='#SkHSVToColor_2_hsv'>hsv</a> values are pinned. ### Parameters <table> <tr> <td><a name='SkHSVToColor_2_hsv'><code><strong>hsv</strong></code></a></td> - <td>3 element array which holds the input <a href='#HSV'>HSV</a> components. -</td> + <td>three element array which holds the input <a href='#HSV'>HSV</a> components</td> </tr> </table> ### Return Value -the resulting <a href='#ARGB'>ARGB</a> color +RGB equivalent to <a href='#HSV'>HSV</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="d355a17547908cdbc2c38720974b5d11"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkColorToHSV'>SkColorToHSV</a> <a href='#SkRGBToHSV'>SkRGBToHSV</a> --- ## <a name='PMColor'>PMColor</a> -# <a name='SkPMColor'>Typedef SkPMColor</a> -32-bit <a href='#ARGB'>ARGB</a> color value, <a href='undocumented#Premultiply'>Premultiplied</a>. The byte order for this value is +## <a name='SkPMColor'>Typedef SkPMColor</a> + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +typedef uint32_t <a href='#SkPMColor'>SkPMColor</a>; +</pre> + +32-bit ARGB color value, <a href='undocumented#Premultiply'>Premultiplied</a>. The byte order for this value is configuration dependent, matching the format of <a href='SkImageInfo_Reference#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a> bitmaps. This is different from <a href='#SkColor'>SkColor</a>, which is <a href='undocumented#Unpremultiply'>Unpremultiplied</a>, and is always in the same byte order. @@ -937,38 +922,38 @@ same byte order. ## SkPreMultiplyARGB <pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> -SK_API <a href='#SkPMColor'>SkPMColor</a> <a href='#SkPreMultiplyARGB'>SkPreMultiplyARGB</a>(<a href='undocumented#U8CPU'>U8CPU</a> a, <a href='undocumented#U8CPU'>U8CPU</a> r, <a href='undocumented#U8CPU'>U8CPU</a> g, <a href='undocumented#U8CPU'>U8CPU</a> b) +<a href='#SkPMColor'>SkPMColor</a> <a href='#SkPreMultiplyARGB'>SkPreMultiplyARGB</a>(<a href='undocumented#U8CPU'>U8CPU</a> a, <a href='undocumented#U8CPU'>U8CPU</a> r, <a href='undocumented#U8CPU'>U8CPU</a> g, <a href='undocumented#U8CPU'>U8CPU</a> b) </pre> -Return <a href='#SkPreMultiplyARGB_a'>a</a> <a href='#SkPMColor'>SkPMColor</a> value from <a href='undocumented#Unpremultiply'>Unpremultiplied</a> 8-bit component values +Returns <a href='#SkPreMultiplyARGB_a'>a</a> <a href='#SkPMColor'>SkPMColor</a> value from <a href='undocumented#Unpremultiply'>Unpremultiplied</a> 8-bit component values. ### Parameters <table> <tr> <td><a name='SkPreMultiplyARGB_a'><code><strong>a</strong></code></a></td> - <td>incomplete</td> + <td>amount of <a href='#Alpha'>Alpha</a>, from fully transparent (0) to fully opaque (255)</td> </tr> <tr> <td><a name='SkPreMultiplyARGB_r'><code><strong>r</strong></code></a></td> - <td>incomplete</td> + <td>amount of red, from no red (0) to full red (255)</td> </tr> <tr> <td><a name='SkPreMultiplyARGB_g'><code><strong>g</strong></code></a></td> - <td>incomplete</td> + <td>amount of green, from no green (0) to full green (255)</td> </tr> <tr> <td><a name='SkPreMultiplyARGB_b'><code><strong>b</strong></code></a></td> - <td>incomplete</td> + <td>amount of blue, from no blue (0) to full blue (255)</td> </tr> </table> ### Return Value -incomplete +<a href='undocumented#Premultiply'>Premultiplied</a> <a href='#Color'>Color</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="756345484fd48ca0ea7b6cec350f73b8"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPreMultiplyColor'>SkPreMultiplyColor</a> --- @@ -976,7 +961,7 @@ incomplete ## SkPreMultiplyColor <pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> -SK_API <a href='#SkPMColor'>SkPMColor</a> <a href='#SkPreMultiplyColor'>SkPreMultiplyColor</a>(<a href='#SkColor'>SkColor</a> c) +<a href='#SkPMColor'>SkPMColor</a> <a href='#SkPreMultiplyColor'>SkPreMultiplyColor</a>(<a href='#SkColor'>SkColor</a> c) </pre> Returns <a href='#PMColor'>PMColor</a> closest to <a href='#Color'>Color</a> <a href='#SkPreMultiplyColor_c'>c</a>. Multiplies <a href='#SkPreMultiplyColor_c'>c</a> RGB components by the <a href='#SkPreMultiplyColor_c'>c</a> <a href='#Alpha'>Alpha</a>, @@ -985,21 +970,21 @@ and arranges the bytes to match the format of <a href='SkImageInfo_Reference#kN3 ### Parameters <table> <tr> <td><a name='SkPreMultiplyColor_c'><code><strong>c</strong></code></a></td> - <td>incomplete</td> + <td><a href='undocumented#Unpremultiply'>Unpremultiplied</a> ARGB <a href='#Color'>Color</a></td> </tr> </table> ### Return Value -incomplete +<a href='undocumented#Premultiply'>Premultiplied</a> <a href='#Color'>Color</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="0bcc0f86a2aefc899f3500503dce6968"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPreMultiplyARGB'>SkPreMultiplyARGB</a> --- diff --git a/site/user/api/SkIPoint_Reference.md b/site/user/api/SkIPoint_Reference.md index 4648a6ca4b..68125d1348 100644 --- a/site/user/api/SkIPoint_Reference.md +++ b/site/user/api/SkIPoint_Reference.md @@ -717,7 +717,7 @@ Can also be used to add <a href='#IVector'>IVector</a> to <a href='#IVector'>IVe ## <a name='IVector'>IVector</a> -# <a name='SkIVector'>Typedef SkIVector</a> +## <a name='SkIVector'>Typedef SkIVector</a> <pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> typedef <a href='#SkIPoint'>SkIPoint</a> <a href='#SkIVector'>SkIVector</a>; diff --git a/site/user/api/SkImageInfo_Reference.md b/site/user/api/SkImageInfo_Reference.md index eacaa9418a..f6cf52c5d7 100644 --- a/site/user/api/SkImageInfo_Reference.md +++ b/site/user/api/SkImageInfo_Reference.md @@ -69,7 +69,7 @@ SkImageInfo related constants are defined by <code>enum</code>, <code>enum class </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#kGray_8_SkColorType'>kGray_8_SkColorType</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>pixel with <a href='SkColor_Reference#Gray'>Color Gray</a> level in 8-bit byte</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>pixel with grayscale level in 8-bit byte</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#kJPEG_SkYUVColorSpace'>kJPEG_SkYUVColorSpace</a></td> @@ -89,7 +89,7 @@ SkImageInfo related constants are defined by <code>enum</code>, <code>enum class </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#kN32_SkColorType'>kN32_SkColorType</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>native <a href='SkColor_Reference#ARGB'>Color ARGB</a> 32-bit encoding</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>native ARGB 32-bit encoding</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#kOpaque_SkAlphaType'>kOpaque_SkAlphaType</a></td> @@ -172,8 +172,8 @@ color to create a new color. If alpha describes a weight from zero to one: In practice alpha is encoded in two or more bits, where 1.0 equals all bits set. -<a href='SkColor_Reference#RGB'>Color RGB</a> may have <a href='SkColor_Reference#Alpha'>Color Alpha</a> included in each component value; the stored -value is the original <a href='SkColor_Reference#RGB'>Color RGB</a> multiplied by <a href='SkColor_Reference#Alpha'>Color Alpha</a>. <a href='undocumented#Premultiply'>Premultiplied</a> color +RGB may have <a href='SkColor_Reference#Alpha'>Color Alpha</a> included in each component value; the stored +value is the original RGB multiplied by <a href='SkColor_Reference#Alpha'>Color Alpha</a>. <a href='undocumented#Premultiply'>Premultiplied</a> color components improve performance. ### Constants @@ -346,10 +346,10 @@ true if <a href='#SkAlphaTypeIsOpaque_at'>at</a> equals <a href='#kOpaque_SkAlph </pre> Describes how pixel bits encode color. A pixel may be an alpha mask, a -gray level, <a href='SkColor_Reference#RGB'>Color RGB</a>, or <a href='SkColor_Reference#ARGB'>Color ARGB</a>. +grayscale, RGB, or ARGB. -<a href='#kN32_SkColorType'>kN32_SkColorType</a> selects the native 32-bit <a href='SkColor_Reference#ARGB'>Color ARGB</a> format. On Little_Endian -processors, pixels containing 8-bit <a href='SkColor_Reference#ARGB'>Color ARGB</a> components pack into 32-bit +<a href='#kN32_SkColorType'>kN32_SkColorType</a> selects the native 32-bit ARGB format. On Little_Endian +processors, pixels containing 8-bit ARGB components pack into 32-bit <a href='#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a>. On Big_Endian processors, pixels pack into 32-bit <a href='#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a>. @@ -472,7 +472,7 @@ Used by tests to iterate through all valid values. <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>4 or 6</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '></td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> -Encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> as either <a href='#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a> or +Encodes ARGB as either <a href='#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a> or <a href='#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a>, whichever is native to the platform. </td> </tr> @@ -498,12 +498,12 @@ with its transparency set to alpha8 pixel value. ### See Also -incomplete +<a href='SkColor_Reference#Alpha'>Alpha</a> <a href='#Color_Type_Gray_8'>Gray 8</a> ## <a name='Color_Type_RGB_565'>Color Type RGB 565</a> -<a href='#kRGB_565_SkColorType'>kRGB_565_SkColorType</a> encodes <a href='SkColor_Reference#RGB'>Color RGB</a> to fit in a 16-bit word. <a href='SkColor_Reference#RGB_Red'>Red</a> and <a href='SkColor_Reference#RGB_Blue'>Blue</a> -components use five bits describing 32 levels. <a href='SkColor_Reference#RGB_Green'>Green</a> components, more sensitive +<a href='#kRGB_565_SkColorType'>kRGB_565_SkColorType</a> encodes RGB to fit in a 16-bit word. Red and blue +components use five bits describing 32 levels. Green components, more sensitive to the eye, use six bits describing 64 levels. <a href='#kRGB_565_SkColorType'>kRGB_565_SkColorType</a> has no bits for <a href='SkColor_Reference#Alpha'>Alpha</a>. Pixels are fully opaque as if its <a href='SkColor_Reference#Alpha'>Color Alpha</a> was set to one, and should @@ -517,11 +517,11 @@ always be paired with <a href='#kOpaque_SkAlphaType'>kOpaque_SkAlphaType</a>. ### See Also -incomplete +<a href='#Color_Type_ARGB_4444'>ARGB 4444</a> <a href='#Color_Type_RGBA_8888'>RGBA 8888</a> ## <a name='Color_Type_ARGB_4444'>Color Type ARGB 4444</a> -<a href='#kARGB_4444_SkColorType'>kARGB_4444_SkColorType</a> encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> to fit in 16-bit word. Each +<a href='#kARGB_4444_SkColorType'>kARGB_4444_SkColorType</a> encodes ARGB to fit in 16-bit word. Each component: alpha, blue, green, and red; use four bits, describing 16 levels. Note that <a href='#kARGB_4444_SkColorType'>kARGB_4444_SkColorType</a> is misnamed; the acronym does not describe the actual component order. @@ -546,11 +546,11 @@ less than 15, the drawn result is undefined. ### See Also -incomplete +<a href='#Color_Type_RGBA_8888'>RGBA 8888</a> ## <a name='Color_Type_RGBA_8888'>Color Type RGBA 8888</a> -<a href='#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a> encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> into a 32-bit word. Each component: +<a href='#kRGBA_8888_SkColorType'>kRGBA_8888_SkColorType</a> encodes ARGB into a 32-bit word. Each component: red, green, blue, alpha; use eight bits, describing 256 levels. ![Color_Type_RGBA_8888](https://fiddle.skia.org/i/4ccd35f27fe73dce8cce8c75e18df23c_raster.png "") @@ -577,11 +577,11 @@ will have the best performance. Use <a href='#kN32_SkColorType'>kN32_SkColorType ### See Also -incomplete +<a href='#Color_Type_RGB_888'>RGB 888</a> <a href='#Color_Type_BGRA_8888'>BGRA 8888</a> ## <a name='Color_Type_RGB_888'>Color Type RGB 888</a> -<a href='#kRGB_888x_SkColorType'>kRGB_888x_SkColorType</a> encodes <a href='SkColor_Reference#RGB'>Color RGB</a> into a 32-bit word. Each component: +<a href='#kRGB_888x_SkColorType'>kRGB_888x_SkColorType</a> encodes RGB into a 32-bit word. Each component: red, green, blue; use eight bits, describing 256 levels. Eight bits are unused. Pixels described by <a href='#kRGB_888x_SkColorType'>kRGB_888x_SkColorType</a> are fully opaque as if their <a href='SkColor_Reference#Alpha'>Color Alpha</a> was set to one, and should always be paired with @@ -593,9 +593,13 @@ their <a href='SkColor_Reference#Alpha'>Color Alpha</a> was set to one, and shou <div><fiddle-embed name="4260d6cc15db2c60c07f6fdc8d9ae425"></fiddle-embed></div> +### See Also + +<a href='#Color_Type_RGBA_8888'>RGBA 8888</a> <a href='#Color_Type_BGRA_8888'>BGRA 8888</a> + ## <a name='Color_Type_BGRA_8888'>Color Type BGRA 8888</a> -<a href='#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a> encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> into a 32-bit word. Each component: +<a href='#kBGRA_8888_SkColorType'>kBGRA_8888_SkColorType</a> encodes ARGB into a 32-bit word. Each component: blue, green, red, and alpha; use eight bits, describing 256 levels. ![Color_Type_BGRA_8888](https://fiddle.skia.org/i/babd0e12db21a88c74d4e88aa40268ab_raster.png "") @@ -626,7 +630,7 @@ and will have the best performance. Use <a href='#kN32_SkColorType'>kN32_SkColor ## <a name='Color_Type_RGBA_1010102'>Color Type RGBA 1010102</a> -<a href='#kRGBA_1010102_SkColorType'>kRGBA_1010102_SkColorType</a> encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> into a 32-bit word. Each +<a href='#kRGBA_1010102_SkColorType'>kRGBA_1010102_SkColorType</a> encodes ARGB into a 32-bit word. Each <a href='SkColor_Reference#Color'>Color</a> component: red, green, and blue; use ten bits, describing 1024 levels. Two bits contain alpha, describing four levels. Possible alpha values are zero: fully transparent; one: 33% opaque; two: 67% opaque; @@ -655,11 +659,11 @@ less than three, the drawn result is undefined. ### See Also -incomplete +<a href='#Color_Type_RGB_101010'>RGB 101010</a> <a href='#Color_Type_RGBA_8888'>RGBA 8888</a> ## <a name='Color_Type_RGB_101010'>Color Type RGB 101010</a> -<a href='#kRGB_101010x_SkColorType'>kRGB_101010x_SkColorType</a> encodes <a href='SkColor_Reference#RGB'>Color RGB</a> into a 32-bit word. Each +<a href='#kRGB_101010x_SkColorType'>kRGB_101010x_SkColorType</a> encodes RGB into a 32-bit word. Each <a href='SkColor_Reference#Color'>Color</a> component: red, green, and blue; use ten bits, describing 1024 levels. Two bits are unused. Pixels described by <a href='#kRGB_101010x_SkColorType'>kRGB_101010x_SkColorType</a> are fully opaque as if its <a href='SkColor_Reference#Alpha'>Color Alpha</a> was set to one, and should always be paired @@ -676,11 +680,11 @@ draw all colors possible to a <a href='#kRGB_101010x_SkColorType'>kRGB_101010x_S ### See Also -incomplete +<a href='#Color_Type_RGBA_1010102'>RGBA 1010102</a> ## <a name='Color_Type_Gray_8'>Color Type Gray 8</a> -<a href='#kGray_8_SkColorType'>kGray_8_SkColorType</a> encodes <a href='SkColor_Reference#Gray'>Color Gray</a> level in eight bits that is equivalent +<a href='#kGray_8_SkColorType'>kGray_8_SkColorType</a> encodes grayscale level in eight bits that is equivalent to equal values for red, blue, and green, representing colors from black to white. Pixels described by <a href='#kGray_8_SkColorType'>kGray_8_SkColorType</a> are fully opaque as if its <a href='SkColor_Reference#Alpha'>Color Alpha</a> was set to one, and should always be paired with @@ -692,11 +696,11 @@ opaque as if its <a href='SkColor_Reference#Alpha'>Color Alpha</a> was set to on ### See Also -incomplete +<a href='#Color_Type_Alpha_8'>Alpha 8</a> ## <a name='Color_Type_RGBA_F16'>Color Type RGBA F16</a> -<a href='#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a> encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> into a 64-bit word. Each component: +<a href='#kRGBA_F16_SkColorType'>kRGBA_F16_SkColorType</a> encodes ARGB into a 64-bit word. Each component: blue, green, red, and alpha; use 16 bits, describing a floating point value. from -65500 to 65000 with 3.31 decimal digits of precision. @@ -727,7 +731,7 @@ less than 255, the drawn result is undefined. ### See Also -incomplete +<a href='SkColor4f_Reference#SkColor4f'>SkColor4f</a> <a name='SkColorTypeBytesPerPixel'></a> ## SkColorTypeBytesPerPixel @@ -1130,7 +1134,7 @@ SkImageInfo global, <code>struct</code>, and <code>class</code> related member f </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_ARGB_4444'>Color Type ARGB 4444</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> in 16 bits</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes ARGB in 16 bits</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_Alpha_8'>Color Type Alpha 8</a></td> @@ -1138,35 +1142,35 @@ SkImageInfo global, <code>struct</code>, and <code>class</code> related member f </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_BGRA_8888'>Color Type BGRA 8888</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> Little_Endian in 32 bits</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes ARGB Little_Endian in 32 bits</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_Gray_8'>Color Type Gray 8</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes level of <a href='SkColor_Reference#Gray'>Color Gray</a> in 8 bits</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes level of grayscale in 8 bits</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_RGBA_1010102'>Color Type RGBA 1010102</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> ten bits per color component</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes ARGB ten bits per color component</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_RGBA_8888'>Color Type RGBA 8888</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> Big_Endian in 32 bits</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes ARGB Big_Endian in 32 bits</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_RGBA_F16'>Color Type RGBA F16</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes <a href='SkColor_Reference#ARGB'>Color ARGB</a> as half floats</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes ARGB as half floats</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_RGB_101010'>Color Type RGB 101010</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes <a href='SkColor_Reference#RGB'>Color RGB</a> ten bits per color component</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes RGB ten bits per color component</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_RGB_565'>Color Type RGB 565</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes <a href='SkColor_Reference#RGB'>Color RGB</a> in 16 bits</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes RGB in 16 bits</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Color_Type_RGB_888'>Color Type RGB 888</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes <a href='SkColor_Reference#RGB'>Color RGB</a> in 32 bits</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>encodes RGB in 32 bits</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Property'>Property</a></td> @@ -2429,7 +2433,7 @@ bool operator!=(const SkImageInfo& other) _const </pre> Compares <a href='#Image_Info'>Image Info</a> with <a href='#SkImageInfo_notequal1_operator_other'>other</a>, and returns true if width, height, <a href='#Color_Type'>Color Type</a>, -<a href='#Alpha_Type'>Alpha Type</a>, and <a href='undocumented#Color_Space'>Color Space</a> are equivalent. +<a href='#Alpha_Type'>Alpha Type</a>, and <a href='undocumented#Color_Space'>Color Space</a> are not equivalent. ### Parameters diff --git a/site/user/api/SkImage_Reference.md b/site/user/api/SkImage_Reference.md index 6403e07b60..ddd4730b89 100644 --- a/site/user/api/SkImage_Reference.md +++ b/site/user/api/SkImage_Reference.md @@ -551,14 +551,24 @@ each dimension fits in 29 bits; --- -# <a name='SkImage_ReleaseContext'>Typedef SkImage::ReleaseContext</a> +## <a name='SkImage_ReleaseContext'>Typedef SkImage::ReleaseContext</a> + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +typedef void* <a href='#SkImage_ReleaseContext'>ReleaseContext</a>; +</pre> + Caller data passed to <a href='#SkImage_RasterReleaseProc'>RasterReleaseProc</a>; may be nullptr. ### See Also <a href='#SkImage_MakeFromRaster'>MakeFromRaster</a> <a href='#SkImage_RasterReleaseProc'>RasterReleaseProc</a> -# <a name='SkImage_RasterReleaseProc'>Typedef SkImage::RasterReleaseProc</a> +## <a name='SkImage_RasterReleaseProc'>Typedef SkImage::RasterReleaseProc</a> + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +typedef void (*<a href='#SkImage_RasterReleaseProc'>RasterReleaseProc</a>)(const void* pixels, <a href='#SkImage_ReleaseContext'>ReleaseContext</a>); +</pre> + Function called when <a href='#Image'>Image</a> no longer shares pixels. <a href='#SkImage_ReleaseContext'>ReleaseContext</a> is provided by caller when <a href='#Image'>Image</a> is created, and may be nullptr. @@ -750,7 +760,12 @@ created <a href='#Image'>Image</a>, or nullptr --- -# <a name='SkImage_TextureReleaseProc'>Typedef SkImage::TextureReleaseProc</a> +## <a name='SkImage_TextureReleaseProc'>Typedef SkImage::TextureReleaseProc</a> + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +typedef void (*<a href='#SkImage_TextureReleaseProc'>TextureReleaseProc</a>)(<a href='#SkImage_ReleaseContext'>ReleaseContext</a> releaseContext); +</pre> + User function called when supplied texture may be deleted. ### See Also @@ -1163,14 +1178,14 @@ created <a href='#Image'>Image</a>, or nullptr <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkImage_BitDepth_kU8'><code>SkImage::BitDepth::kU8</code></a></td> <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> -Use 8 bits per <a href='SkColor_Reference#ARGB'>Color ARGB</a> component using unsigned integer format. +Use 8 bits per ARGB component using unsigned integer format. </td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkImage_BitDepth_kF16'><code>SkImage::BitDepth::kF16</code></a></td> <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>1</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> -Use 16 bits per <a href='SkColor_Reference#ARGB'>Color ARGB</a> component using half-precision floating point format. +Use 16 bits per ARGB component using half-precision floating point format. </td> </tr> </table> @@ -1481,7 +1496,7 @@ or was parsed from encoded data. ### Example -<div><fiddle-embed name="dac1403132a42459d6881585efbfe74b"></fiddle-embed></div> +<div><fiddle-embed name="1b9f1f05026ceb14ccb6926a13cdaa83"></fiddle-embed></div> ### See Also @@ -1504,7 +1519,7 @@ Returns <a href='SkImageInfo_Reference#Color_Type'>Color Type</a> if known; othe ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="50396fad4a128f58e400ca00fe09711f"></fiddle-embed></div> ### See Also @@ -2499,8 +2514,14 @@ By translating canvas by returned <a href='#SkImage_makeWithFilter_offset'>offse --- -# <a name='SkImage_BackendTextureReleaseProc'>Typedef SkImage::BackendTextureReleaseProc</a> -<a href='#SkImage_BackendTextureReleaseProc'>BackendTextureReleaseProc</a>Defines a function take one parameter of type +## <a name='SkImage_BackendTextureReleaseProc'>Typedef SkImage::BackendTextureReleaseProc</a> +<a href='#SkImage_BackendTextureReleaseProc'>BackendTextureReleaseProc</a> + +<pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> +typedef std::function<void(GrBackendTexture)> <a href='#SkImage_BackendTextureReleaseProc'>BackendTextureReleaseProc</a>; +</pre> + +Defines a function take one parameter of type <a href='undocumented#GrBackendTexture'>GrBackendTexture</a> with no return value. <a name='SkImage_MakeBackendTextureFromSkImage'></a> diff --git a/site/user/api/SkMatrix_Reference.md b/site/user/api/SkMatrix_Reference.md index f7596b414f..3a6852a560 100644 --- a/site/user/api/SkMatrix_Reference.md +++ b/site/user/api/SkMatrix_Reference.md @@ -1420,48 +1420,48 @@ Skews are not similar and do not preserve right angles. <th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMScaleX'><code>SkMatrix::kMScaleX</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>horizontal scale factor</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMSkewX'><code>SkMatrix::kMSkewX</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>1</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>horizontal skew factor</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMTransX'><code>SkMatrix::kMTransX</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>2</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>horizontal translation</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMSkewY'><code>SkMatrix::kMSkewY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>3</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>vertical skew factor</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMScaleY'><code>SkMatrix::kMScaleY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>4</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>vertical scale factor</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMTransY'><code>SkMatrix::kMTransY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>5</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>vertical translation</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMPersp0'><code>SkMatrix::kMPersp0</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>6</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>input x perspective factor</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMPersp1'><code>SkMatrix::kMPersp1</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>7</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>input y perspective factor</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_MemberIndex'><code>MemberIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kMPersp2'><code>SkMatrix::kMPersp2</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>8</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>perspective bias</td> </tr> </table> @@ -1563,33 +1563,33 @@ perspective bias</td> <th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> <th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_AffineIndex'><code>AffineIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kAScaleX'><code>SkMatrix::kAScaleX</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>horizontal scale factor</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_AffineIndex'><code>AffineIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kASkewY'><code>SkMatrix::kASkewY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>1</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>vertical skew factor</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_AffineIndex'><code>AffineIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kASkewX'><code>SkMatrix::kASkewX</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>2</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>horizontal skew factor</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_AffineIndex'><code>AffineIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kAScaleY'><code>SkMatrix::kAScaleY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>3</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>vertical scale factor</td> </tr> <tr style='background-color: #f0f0f0; '> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_AffineIndex'><code>AffineIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kATransX'><code>SkMatrix::kATransX</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>4</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>horizontal translation</td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Matrix_AffineIndex'><code>AffineIndex</code></a></td> - <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>#In Constant</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkMatrix_kATransY'><code>SkMatrix::kATransY</code></a></td> + <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>5</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>vertical translation</td> </tr> </table> diff --git a/site/user/api/SkPaint_Reference.md b/site/user/api/SkPaint_Reference.md index 122a4d2b2a..66204867f9 100644 --- a/site/user/api/SkPaint_Reference.md +++ b/site/user/api/SkPaint_Reference.md @@ -23,7 +23,7 @@ algorithms that alter the drawing geometry, color, and transparency. For instanc The objects contained by <a href='#Paint'>Paint</a> are opaque, and cannot be edited outside of the <a href='#Paint'>Paint</a> to affect it. The implementation is free to defer computations associated with the <a href='#Paint'>Paint</a>, or ignore them altogether. For instance, some GPU implementations draw all -<a href='SkPath_Reference#Path'>Path</a> geometries with Anti-aliasing, regardless of how <a href='#SkPaint_kAntiAlias_Flag'>SkPaint::kAntiAlias Flag</a> +<a href='SkPath_Reference#Path'>Path</a> geometries with <a href='#Anti_Alias'>Anti Aliasing</a>, regardless of how <a href='#SkPaint_kAntiAlias_Flag'>SkPaint::kAntiAlias Flag</a> is set in <a href='#Paint'>Paint</a>. <a href='#Paint'>Paint</a> describes a single color, a single font, a single image quality, and so on. @@ -74,7 +74,7 @@ SkPaint global, <code>struct</code>, and <code>class</code> related member funct <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>get and set <a href='SkColor_Reference#Alpha'>Alpha</a></td> </tr> <tr> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Anti-alias</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Anti_Alias'>Anti Alias</a></td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>approximating coverage with transparency</td> </tr> <tr style='background-color: #f0f0f0; '> @@ -151,7 +151,7 @@ SkPaint global, <code>struct</code>, and <code>class</code> related member funct </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#LCD_Text'>LCD Text</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>text relying on the order of <a href='SkColor_Reference#RGB'>Color RGB</a> stripes</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>text relying on the order of RGB stripes</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#Linear_Text'>Linear Text</a></td> @@ -301,7 +301,7 @@ SkPaint related constants are defined by <code>enum</code>, <code>enum class</co </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_kAntiAlias_Flag'>kAntiAlias Flag</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>mask for setting Anti-alias</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>mask for setting <a href='#Anti_Alias'>Anti Alias</a></td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_kAutoHinting_Flag'>kAutoHinting Flag</a></td> @@ -557,7 +557,7 @@ SkPaint member functions read and modify the structure properties. </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_getColor'>getColor</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns <a href='SkColor_Reference#Alpha'>Color Alpha</a> and <a href='SkColor_Reference#RGB'>Color RGB</a>, one drawing color</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns <a href='SkColor_Reference#Alpha'>Color Alpha</a> and RGB, one drawing color</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_getColorFilter'>getColorFilter</a></td> @@ -693,7 +693,7 @@ SkPaint member functions read and modify the structure properties. </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_isAntiAlias'>isAntiAlias</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns true if Anti-alias is set</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>returns true if <a href='#Anti_Alias'>Anti Alias</a> is set</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_isAutohinted'>isAutohinted</a></td> @@ -781,7 +781,7 @@ SkPaint member functions read and modify the structure properties. </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_setAntiAlias'>setAntiAlias</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>sets or clears Anti-alias</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>sets or clears <a href='#Anti_Alias'>Anti Alias</a></td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_setAutohinted'>setAutohinted</a></td> @@ -793,7 +793,7 @@ SkPaint member functions read and modify the structure properties. </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_setColor'>setColor</a></td> - <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>sets <a href='SkColor_Reference#Alpha'>Color Alpha</a> and <a href='SkColor_Reference#RGB'>Color RGB</a>, one drawing color</td> + <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>sets <a href='SkColor_Reference#Alpha'>Color Alpha</a> and RGB, one drawing color</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPaint_setColorFilter'>setColorFilter</a></td> @@ -927,7 +927,7 @@ Constructs <a href='#Paint'>Paint</a> with default values. | attribute | default value | | --- | --- | -| Anti-alias | false | +| <a href='#Anti_Alias'>Anti Alias</a> | false | | <a href='undocumented#Blend_Mode'>Blend Mode</a> | <a href='undocumented#SkBlendMode_kSrcOver'>SkBlendMode::kSrcOver</a> | | <a href='SkColor_Reference#Color'>Color</a> | <a href='SkColor_Reference#SK_ColorBLACK'>SK ColorBLACK</a> | | <a href='SkColor_Reference#Alpha'>Color Alpha</a> | 255 | @@ -1478,7 +1478,7 @@ multiple settings at once. <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkPaint_kAntiAlias_Flag'><code>SkPaint::kAntiAlias_Flag</code></a></td> <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0x0001</td> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> -mask for setting Anti-alias</td> +mask for setting Anti_Alias</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkPaint_kDither_Flag'><code>SkPaint::kDither_Flag</code></a></td> @@ -1634,9 +1634,9 @@ paint.isDither() --- -## <a name='Anti-alias'>Anti-alias</a> +## <a name='Anti_Alias'>Anti Alias</a> -Anti-alias drawing approximates partial pixel coverage with transparency. +<a href='#Anti_Alias'>Anti Alias</a> drawing approximates partial pixel coverage with transparency. If <a href='#SkPaint_kAntiAlias_Flag'>kAntiAlias Flag</a> is clear, pixel centers contained by the shape edge are drawn opaque. If <a href='#SkPaint_kAntiAlias_Flag'>kAntiAlias Flag</a> is set, pixels are drawn with <a href='SkColor_Reference#Alpha'>Color Alpha</a> equal to their coverage. @@ -1646,14 +1646,14 @@ passing through the pixel center may, but is not required to, draw the pixel. <a href='undocumented#Raster_Engine'>Raster Engine</a> draws <a href='undocumented#Alias'>Aliased</a> pixels whose centers are on or to the right of the start of an active <a href='SkPath_Reference#Path'>Path</a> edge, and whose center is to the left of the end of the active <a href='SkPath_Reference#Path'>Path</a> edge. -A platform may only support Anti-aliased drawing. Some GPU-backed platforms use -<a href='undocumented#Supersampling'>Supersampling</a> to Anti-alias all drawing, and have no mechanism to selectively +A platform may only support <a href='#Anti_Alias'>Anti Aliased</a> drawing. Some GPU-backed platforms use +<a href='undocumented#Supersampling'>Supersampling</a> to <a href='#Anti_Alias'>Anti Alias</a> all drawing, and have no mechanism to selectively <a href='undocumented#Alias'>Alias</a>. -The amount of coverage computed for Anti-aliased pixels also varies across platforms. +The amount of coverage computed for <a href='#Anti_Alias'>Anti Aliased</a> pixels also varies across platforms. -Anti-alias is disabled by default. -Anti-alias can be enabled by default by setting <a href='undocumented#SkPaintDefaults_Flags'>SkPaintDefaults Flags</a> to <a href='#SkPaint_kAntiAlias_Flag'>kAntiAlias Flag</a> +<a href='#Anti_Alias'>Anti Alias</a> is disabled by default. +<a href='#Anti_Alias'>Anti Alias</a> can be enabled by default by setting <a href='undocumented#SkPaintDefaults_Flags'>SkPaintDefaults Flags</a> to <a href='#SkPaint_kAntiAlias_Flag'>kAntiAlias Flag</a> at compile time. ### Example @@ -1829,17 +1829,17 @@ paint1 == paint2 ### See Also -Gradient <a href='SkColor_Reference#RGB'>Color RGB</a>-565 +Gradient <a href='SkImageInfo_Reference#kRGB_565_SkColorType'>kRGB_565_SkColorType</a> ## <a name='Device_Text'>Device Text</a> <a href='#LCD_Text'>LCD Text</a> and <a href='#Subpixel_Text'>Subpixel Text</a> increase the precision of glyph position. -When set, <a href='#SkPaint_Flags'>Flags</a> <a href='#SkPaint_kLCDRenderText_Flag'>kLCDRenderText Flag</a> takes advantage of the organization of <a href='SkColor_Reference#RGB'>Color RGB</a> stripes that +When set, <a href='#SkPaint_Flags'>Flags</a> <a href='#SkPaint_kLCDRenderText_Flag'>kLCDRenderText Flag</a> takes advantage of the organization of RGB stripes that create a color, and relies on the small size of the stripe and visual perception to make the color fringing imperceptible. <a href='#LCD_Text'>LCD Text</a> can be enabled on devices that orient stripes horizontally or vertically, and that order -the color components as <a href='SkColor_Reference#RGB'>Color RGB</a> or <a href='SkColor_Reference#RBG'>Color RBG</a>. +the color components as RGB or BGR. <a href='#SkPaint_Flags'>Flags</a> <a href='#SkPaint_kSubpixelText_Flag'>kSubpixelText Flag</a> uses the pixel transparency to represent a fractional offset. As the opaqueness @@ -1989,11 +1989,11 @@ paint1 == paint2 ## <a name='LCD_Text'>LCD Text</a> -When set, <a href='#SkPaint_Flags'>Flags</a> <a href='#SkPaint_kLCDRenderText_Flag'>kLCDRenderText Flag</a> takes advantage of the organization of <a href='SkColor_Reference#RGB'>Color RGB</a> stripes that +When set, <a href='#SkPaint_Flags'>Flags</a> <a href='#SkPaint_kLCDRenderText_Flag'>kLCDRenderText Flag</a> takes advantage of the organization of RGB stripes that create a color, and relies on the small size of the stripe and visual perception to make the color fringing imperceptible. <a href='#LCD_Text'>LCD Text</a> can be enabled on devices that orient stripes horizontally or vertically, and that order -the color components as <a href='SkColor_Reference#RGB'>Color RGB</a> or <a href='SkColor_Reference#RBG'>Color RBG</a>. +the color components as RGB or BGR. <a name='SkPaint_isLCDRenderText'></a> ## isLCDRenderText @@ -2544,22 +2544,22 @@ kHigh_SkFilterQuality == paint.getFilterQuality() | name | description | | --- | --- | -| <a href='#SkPaint_getColor'>getColor</a> | returns <a href='SkColor_Reference#Alpha'>Color Alpha</a> and <a href='SkColor_Reference#RGB'>Color RGB</a>, one drawing color | -| <a href='#SkPaint_setColor'>setColor</a> | sets <a href='SkColor_Reference#Alpha'>Color Alpha</a> and <a href='SkColor_Reference#RGB'>Color RGB</a>, one drawing color | +| <a href='#SkPaint_getColor'>getColor</a> | returns <a href='SkColor_Reference#Alpha'>Color Alpha</a> and RGB, one drawing color | +| <a href='#SkPaint_setColor'>setColor</a> | sets <a href='SkColor_Reference#Alpha'>Color Alpha</a> and RGB, one drawing color | -<a href='SkColor_Reference#Color'>Color</a> specifies the <a href='SkColor_Reference#RGB_Red'>Color RGB Red</a>, <a href='SkColor_Reference#RGB_Blue'>Color RGB Blue</a>, <a href='SkColor_Reference#RGB_Green'>Color RGB Green</a>, and <a href='SkColor_Reference#Alpha'>Color Alpha</a> +<a href='SkColor_Reference#Color'>Color</a> specifies the red, blue, green, and <a href='SkColor_Reference#Alpha'>Color Alpha</a> values used to draw a filled or stroked shape in a 32-bit value. Each component occupies 8-bits, ranging from zero: no contribution; to 255: full intensity. All values in any combination are valid. <a href='SkColor_Reference#Color'>Color</a> is not <a href='undocumented#Premultiply'>Premultiplied</a>; <a href='SkColor_Reference#Alpha'>Color Alpha</a> sets the transparency independent of -<a href='SkColor_Reference#RGB'>Color RGB</a>: <a href='SkColor_Reference#RGB_Red'>Color RGB Red</a>, <a href='SkColor_Reference#RGB_Blue'>Color RGB Blue</a>, and <a href='SkColor_Reference#RGB_Green'>Color RGB Green</a>. +RGB: red, blue, and green. -The bit positions of <a href='SkColor_Reference#Alpha'>Color Alpha</a> and <a href='SkColor_Reference#RGB'>Color RGB</a> are independent of the bit +The bit positions of <a href='SkColor_Reference#Alpha'>Color Alpha</a> and RGB are independent of the bit positions on the output device, which may have more or fewer bits, and may have a different arrangement. -| bit positions | <a href='SkColor_Reference#Alpha'>Color Alpha</a> | <a href='SkColor_Reference#RGB_Red'>Color RGB Red</a> | <a href='SkColor_Reference#RGB_Blue'>Color RGB Blue</a> | <a href='SkColor_Reference#RGB_Green'>Color RGB Green</a> | +| bit positions | <a href='SkColor_Reference#Alpha'>Color Alpha</a> | red | blue | green | | --- | --- | --- | --- | --- | | | 31 - 24 | 23 - 16 | 15 - 8 | 7 - 0 | @@ -2574,13 +2574,13 @@ a different arrangement. <a href='SkColor_Reference#SkColor'>SkColor</a> <a href='#SkPaint_getColor'>getColor</a>() const </pre> -Retrieves <a href='SkColor_Reference#Alpha'>Alpha</a> and <a href='SkColor_Reference#RGB'>Color RGB</a>, <a href='undocumented#Unpremultiply'>Unpremultiplied</a>, packed into 32 bits. +Retrieves <a href='SkColor_Reference#Alpha'>Alpha</a> and RGB, <a href='undocumented#Unpremultiply'>Unpremultiplied</a>, packed into 32 bits. Use helpers <a href='SkColor_Reference#SkColorGetA'>SkColorGetA</a>, <a href='SkColor_Reference#SkColorGetR'>SkColorGetR</a>, <a href='SkColor_Reference#SkColorGetG'>SkColorGetG</a>, and <a href='SkColor_Reference#SkColorGetB'>SkColorGetB</a> to extract a color component. ### Return Value -<a href='undocumented#Unpremultiply'>Unpremultiplied</a> <a href='SkColor_Reference#ARGB'>Color ARGB</a> +<a href='undocumented#Unpremultiply'>Unpremultiplied</a> ARGB ### Example @@ -2607,13 +2607,13 @@ Yellow is 100% red, 100% green, and 0% blue. void <a href='#SkPaint_setColor'>setColor</a>(<a href='SkColor_Reference#SkColor'>SkColor</a> color) </pre> -Sets <a href='SkColor_Reference#Alpha'>Alpha</a> and <a href='SkColor_Reference#RGB'>Color RGB</a> used when stroking and filling. The <a href='#SkPaint_setColor_color'>color</a> is a 32-bit value, -<a href='undocumented#Unpremultiply'>Unpremultiplied</a>, packing 8-bit components for <a href='SkColor_Reference#Alpha'>Alpha</a>, <a href='SkColor_Reference#RGB_Red'>Red</a>, <a href='SkColor_Reference#RGB_Blue'>Blue</a>, and <a href='SkColor_Reference#RGB_Green'>Green</a>. +Sets <a href='SkColor_Reference#Alpha'>Alpha</a> and RGB used when stroking and filling. The <a href='#SkPaint_setColor_color'>color</a> is a 32-bit value, +<a href='undocumented#Unpremultiply'>Unpremultiplied</a>, packing 8-bit components for <a href='SkColor_Reference#Alpha'>Alpha</a>, red, blue, and green. ### Parameters <table> <tr> <td><a name='SkPaint_setColor_color'><code><strong>color</strong></code></a></td> - <td><a href='undocumented#Unpremultiply'>Unpremultiplied</a> <a href='SkColor_Reference#ARGB'>Color ARGB</a></td> + <td><a href='undocumented#Unpremultiply'>Unpremultiplied</a> ARGB</td> </tr> </table> @@ -2637,7 +2637,7 @@ green1 == green2 ## <a name='Alpha_Methods'>Alpha Methods</a> -<a href='SkColor_Reference#Alpha'>Color Alpha</a> sets the transparency independent of <a href='SkColor_Reference#RGB'>Color RGB</a>: <a href='SkColor_Reference#RGB_Red'>Color RGB Red</a>, <a href='SkColor_Reference#RGB_Blue'>Color RGB Blue</a>, and <a href='SkColor_Reference#RGB_Green'>Color RGB Green</a>. +<a href='SkColor_Reference#Alpha'>Color Alpha</a> sets the transparency independent of RGB: red, blue, and green. <a name='SkPaint_getAlpha'></a> ## getAlpha @@ -2673,7 +2673,7 @@ Retrieves <a href='SkColor_Reference#Alpha'>Alpha</a> from the <a href='SkColor_ void <a href='#SkPaint_setAlpha'>setAlpha</a>(<a href='undocumented#U8CPU'>U8CPU</a> a) </pre> -Replaces <a href='SkColor_Reference#Alpha'>Alpha</a>, leaving <a href='SkColor_Reference#RGB'>Color RGB</a> +Replaces <a href='SkColor_Reference#Alpha'>Alpha</a>, leaving RGB unchanged. An out of range value triggers an assert in the debug build. <a href='#SkPaint_setAlpha_a'>a</a> is <a href='#SkPaint_setAlpha_a'>a</a> value from zero to 255. <a href='#SkPaint_setAlpha_a'>a</a> set to zero makes <a href='SkColor_Reference#Color'>Color</a> fully transparent; <a href='#SkPaint_setAlpha_a'>a</a> set to 255 makes <a href='SkColor_Reference#Color'>Color</a> @@ -2708,7 +2708,7 @@ void <a href='#SkPaint_setARGB'>setARGB</a>(<a href='undocumented#U8CPU'>U8CPU</ </pre> Sets <a href='SkColor_Reference#Color'>Color</a> used when drawing solid fills. The color components range from 0 to 255. -The color is <a href='undocumented#Unpremultiply'>Unpremultiplied</a>; <a href='SkColor_Reference#Alpha'>Alpha</a> sets the transparency independent of <a href='SkColor_Reference#RGB'>Color RGB</a>. +The color is <a href='undocumented#Unpremultiply'>Unpremultiplied</a>; <a href='SkColor_Reference#Alpha'>Alpha</a> sets the transparency independent of RGB. ### Parameters @@ -2716,13 +2716,13 @@ The color is <a href='undocumented#Unpremultiply'>Unpremultiplied</a>; <a href=' <td>amount of <a href='SkColor_Reference#Alpha'>Color Alpha</a>, from fully transparent (0) to fully opaque (255)</td> </tr> <tr> <td><a name='SkPaint_setARGB_r'><code><strong>r</strong></code></a></td> - <td>amount of <a href='SkColor_Reference#RGB_Red'>Color RGB Red</a>, from no red (0) to full red (255)</td> + <td>amount of red, from no red (0) to full red (255)</td> </tr> <tr> <td><a name='SkPaint_setARGB_g'><code><strong>g</strong></code></a></td> - <td>amount of <a href='SkColor_Reference#RGB_Green'>Color RGB Green</a>, from no green (0) to full green (255)</td> + <td>amount of green, from no green (0) to full green (255)</td> </tr> <tr> <td><a name='SkPaint_setARGB_b'><code><strong>b</strong></code></a></td> - <td>amount of <a href='SkColor_Reference#RGB_Blue'>Color RGB Blue</a>, from no blue (0) to full blue (255)</td> + <td>amount of blue, from no blue (0) to full blue (255)</td> </tr> </table> diff --git a/site/user/api/SkPoint_Reference.md b/site/user/api/SkPoint_Reference.md index 064bfd8068..a8145ed038 100644 --- a/site/user/api/SkPoint_Reference.md +++ b/site/user/api/SkPoint_Reference.md @@ -1738,7 +1738,7 @@ product of input magnitudes and cosine of the angle between them ## <a name='Vector'>Vector</a> -# <a name='SkVector'>Typedef SkVector</a> +## <a name='SkVector'>Typedef SkVector</a> <pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> typedef <a href='#SkPoint'>SkPoint</a> <a href='#SkVector'>SkVector</a>; diff --git a/site/user/api/SkSurface_Reference.md b/site/user/api/SkSurface_Reference.md index 0f38d735cf..559291e944 100644 --- a/site/user/api/SkSurface_Reference.md +++ b/site/user/api/SkSurface_Reference.md @@ -1849,7 +1849,7 @@ converting to <a href='#Surface'>Surface</a> colorType() and <a href='#Surface'> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="760793bcf0ef193fa61ea03e6e8fc825"></fiddle-embed></div> ### See Also @@ -1887,7 +1887,7 @@ converting to <a href='#Surface'>Surface</a> colorType() and <a href='#Surface'> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="d77790dd3bc9f678fa4f582347fb8fba"></fiddle-embed></div> ### See Also diff --git a/site/user/api/catalog.htm b/site/user/api/catalog.htm index 7e6f3599df..698aed4ded 100644 --- a/site/user/api/catalog.htm +++ b/site/user/api/catalog.htm @@ -574,6 +574,48 @@ "name": "SkCanvas::restoreToCount", "stdout": "depth = 1\\ndepth = 3\\ndepth = 1\\n" }, + "SkColor4f_FromColor": { + "code": "void draw(SkCanvas* canvas) {\n uint8_t red = 77, green = 101, blue = 153, alpha = 43;\n SkColor argb = SkColorSetARGB(alpha, red, green, blue);\n SkColor4f color4f = SkColor4f::FromColor(argb);\n SkDebugf(\"red=%g green=%g blue=%g alpha=%g\\n\", color4f.fR, color4f.fG, color4f.fB, color4f.fA);\n SkColor fromColor4f = color4f.toSkColor();\n SkDebugf(\"red=%d green=%d blue=%d alpha=%d\\n\", SkColorGetR(fromColor4f),\n SkColorGetG(fromColor4f), SkColorGetB(fromColor4f), SkColorGetA(fromColor4f));\n}", + "hash": "33b029064e8d1928e42a587c953d0e4e", + "file": "SkColor4f_Reference", + "name": "SkColor4f::FromColor", + "stdout": "red=0.0742136 green=0.130136 blue=0.318547 alpha=0.168627\\nred=77 green=101 blue=153 alpha=43\\n" + }, + "SkColor4f_equal1_operator": { + "code": "void draw(SkCanvas* canvas) {\n SkColor4f colorRed = { 1, 0, 0, 1 };\n SkColor4f colorNamedRed = SkColor4f::FromColor(SK_ColorRED);\n SkDebugf(\"colorRed %c= colorNamedRed\", colorRed == colorNamedRed ? '=' : '!');\n}", + "hash": "e5b34bcb7f80f2ed890cdacaa059db0d", + "file": "SkColor4f_Reference", + "name": "SkColor4f::operator==(const SkColor4f& other)_const", + "stdout": "colorRed == colorNamedRed" + }, + "SkColor4f_notequal1_operator": { + "code": "void draw(SkCanvas* canvas) {\n SkColor4f colorGray = { .5, .5, .5, 1 };\n SkColor4f colorNamedGray = SkColor4f::FromColor(SK_ColorGRAY);\n SkDebugf(\"colorGray %c= colorNamedGray \", colorGray != colorNamedGray ? '!' : '=');\n}", + "hash": "82f1a9b4c2b27aa547061786d1f33dab", + "file": "SkColor4f_Reference", + "name": "SkColor4f::operator!=(const SkColor4f& other)_const", + "stdout": "colorGray != colorNamedGray" + }, + "SkColor4f_toSkColor": { + "code": "void draw(SkCanvas* canvas) {\n float red = 0.07, green = 0.13, blue = 0.32, alpha = 0.17;\n SkColor4f color4f = { red, green, blue, alpha };\n SkColor argb = color4f.toSkColor();\n SkDebugf(\"red=%d green=%d blue=%d alpha=%d\\n\", SkColorGetR(argb),\n SkColorGetG(argb), SkColorGetB(argb), SkColorGetA(argb));\n SkColor4f fromSkColor = SkColor4f::FromColor(argb);\n SkDebugf(\"red=%g green=%g blue=%g alpha=%g\\n\", fromSkColor.fR, fromSkColor.fG,\n fromSkColor.fB, fromSkColor.fA);\n}", + "hash": "edc5fd18d961f7607d2bcbf7f7d427e5", + "file": "SkColor4f_Reference", + "name": "SkColor4f::toSkColor", + "stdout": "red=75 green=101 blue=153 alpha=43\\nred=0.0703601 green=0.130136 blue=0.318547 alpha=0.168627\\n" + }, + "SkColor4f_vec": { + "code": "void draw(SkCanvas* canvas) {\n SkColor4f color = SkColor4f::FromColor(0x884488CC);\n SkDebugf(\"red=%g green=%g blue=%g alpha=%g\\n\", color.fR, color.fG, color.fB, color.fA);\n const float* array = color.vec();\n SkDebugf(\"[0]=%g [1]=%g [2]=%g [3]=%g\\n\", array[0], array[1], array[2], array[3]);\n}", + "hash": "229057023515224358a36acf15508cf6", + "file": "SkColor4f_Reference", + "name": "SkColor4f::vec()", + "stdout": "red=0.0578054 green=0.246201 blue=0.603827 alpha=0.533333\\n[0]=0.0578054 [1]=0.246201 [2]=0.603827 [3]=0.533333\\n" + }, + "SkColor4f_vec_2": { + "code": "void draw(SkCanvas* canvas) {\n SkColor4f color = SkColor4f::FromColor(0x884488CC);\n SkDebugf(\"red=%g green=%g blue=%g alpha=%g\\n\", color.fR, color.fG, color.fB, color.fA);\n float* array = color.vec();\n array[3] = 1;\n SkDebugf(\"[0]=%g [1]=%g [2]=%g [3]=%g\\n\", array[0], array[1], array[2], array[3]);\n}", + "hash": "7420bf0a7cae5c6577c4c4a4613e7e7e", + "file": "SkColor4f_Reference", + "name": "SkColor4f::vec_2", + "stdout": "red=0.0578054 green=0.246201 blue=0.603827 alpha=0.533333\\n[0]=0.0578054 [1]=0.246201 [2]=0.603827 [3]=1\\n" + }, "SkIPoint_Make": { "code": "void draw(SkCanvas* canvas) {\n SkIPoint pt1 = {45, 66};\n SkIPoint pt2 = SkIPoint::Make(45, 66);\n SkDebugf(\"pt1 %c= pt2\\n\", pt1 == pt2 ? '=' : '!');\n}", "hash": "e5cf5159525bd3140f288a95fe641fae", @@ -3289,7 +3331,7 @@ "code": "void draw(SkCanvas* canvas) {\n std::vector<uint32_t> srcPixels;\n constexpr int width = 256;\n constexpr int height = 256;\n srcPixels.resize(width * height);\n SkImageInfo imageInfo = SkImageInfo::MakeN32Premul(width, height);\n SkPixmap pixmap(imageInfo, &srcPixels.front(), imageInfo.minRowBytes());\n pixmap.erase(SK_ColorTRANSPARENT);\n pixmap.erase(SK_ColorRED, { 24, 24, 192, 192 } );\n pixmap.erase(SK_ColorTRANSPARENT, { 48, 48, 168, 168 } );\n SkBitmap bitmap;\n bitmap.installPixels(pixmap);\n canvas->drawBitmap(bitmap, 0, 0);\n canvas->drawBitmap(bitmap, 48, 48);\n}", "width": 256, "height": 256, - "hash": "cfda8cd3b435bb28e2f4b9c7f15603a6", + "hash": "9ca1e2a5b9b4c92ecf4409d0813867d6", "file": "SkColor_Reference", "name": "Color_Constants_Transparent" }, @@ -3477,13 +3519,13 @@ "file": "SkMatrix_Reference", "name": "MemberIndex" }, - "Paint_Anti_alias": { + "Paint_Anti_Alias": { "code": "void draw(SkCanvas* canvas) {\n SkBitmap bitmap;\n bitmap.allocN32Pixels(50, 50);\n SkCanvas offscreen(bitmap);\n SkPaint paint;\n paint.setStyle(SkPaint::kStroke_Style);\n paint.setStrokeWidth(10);\n for (bool antialias : { false, true }) {\n paint.setColor(antialias ? SK_ColorRED : SK_ColorBLUE);\n paint.setAntiAlias(antialias);\n bitmap.eraseColor(0);\n offscreen.drawLine(5, 5, 15, 30, paint);\n canvas->drawLine(5, 5, 15, 30, paint);\n canvas->save();\n canvas->scale(10, 10);\n canvas->drawBitmap(bitmap, antialias ? 12 : 0, 0);\n canvas->restore();\n canvas->translate(15, 0);\n }\n}\n", "width": 512, "height": 256, "hash": "a6575a49467ce8d28bb01cc7638fa04d", "file": "SkPaint_Reference", - "name": "Anti-alias" + "name": "Anti_Alias" }, "Paint_Blend_Mode_Methods": { "code": "void draw(SkCanvas* canvas) {\n SkPaint normal, blender;\n normal.setColor(0xFF58a889);\n blender.setColor(0xFF8958a8);\n canvas->clear(0);\n for (SkBlendMode m : { SkBlendMode::kSrcOver, SkBlendMode::kSrcIn, SkBlendMode::kSrcOut } ) {\n normal.setBlendMode(SkBlendMode::kSrcOver);\n canvas->drawOval(SkRect::MakeXYWH(30, 30, 30, 80), normal);\n blender.setBlendMode(m);\n canvas->drawOval(SkRect::MakeXYWH(10, 50, 80, 30), blender);\n canvas->translate(70, 70);\n }\n}\n", @@ -4656,8 +4698,8 @@ "SkCanvas_drawString": { "code": "void draw(SkCanvas* canvas) {\n SkPaint paint;\n canvas->drawString(\"a small hello\", 20, 20, paint);\n}", "width": 256, - "height": 256, - "hash": "65cc4b15cd1a8d067eb1dbfd7e2c17dd", + "height": 48, + "hash": "85442cf8d0bce6b5a777853bc36a4dc4", "file": "SkCanvas_Reference", "name": "SkCanvas::drawString" }, @@ -4869,107 +4911,59 @@ "file": "SkCanvas_Reference", "name": "SkCanvas::writePixels_2" }, - "SkColor4f_FromColor": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", - "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", - "file": "SkColor4f_Reference", - "name": "SkColor4f::FromColor" -}, "SkColor4f_Pin": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n uint32_t storage[8];\n SkImageInfo info = SkImageInfo::MakeN32Premul(8, 1);\n SkPixmap pixmap(info, storage, info.minRowBytes());\n pixmap.erase(SK_ColorWHITE);\n SkIRect bounds = {0, 0, 1, 1};\n SkColor4f colors[] = { SkColor4f::Pin(1.5, 0.45f, 0.0, 1), \n SkColor4f::Pin(1, 0.45f, -0.25, 1),\n {1.5, 0.45f, 0.0, 1},\n {1, 0.45f, -0.25, 1},\n };\n for (auto color4f : colors) {\n pixmap.erase(color4f, &bounds);\n bounds.offset(2, 0);\n }\n SkBitmap bitmap;\n canvas->scale(20, 20);\n bitmap.installPixels(pixmap);\n canvas->drawBitmap(bitmap, 0, 0);\n}", "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "height": 40, + "hash": "c989cf16c7f8849874eb008cd701af76", "file": "SkColor4f_Reference", "name": "SkColor4f::Pin" }, - "SkColor4f_equal1_operator": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", - "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", - "file": "SkColor4f_Reference", - "name": "SkColor4f::operator==(const SkColor4f& other)_const" -}, - "SkColor4f_notequal1_operator": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", - "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", - "file": "SkColor4f_Reference", - "name": "SkColor4f::operator!=(const SkColor4f& other)_const" -}, "SkColor4f_pin": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n uint32_t storage[8];\n SkImageInfo info = SkImageInfo::MakeN32Premul(8, 1);\n SkPixmap pixmap(info, storage, info.minRowBytes());\n pixmap.erase(SK_ColorWHITE);\n SkIRect bounds = {0, 0, 1, 1};\n SkColor4f colors[] = { {1.5, 0.45f, 0.0, 1},\n {1, 0.45f, -0.25, 1},\n };\n for (auto color4f : colors) {\n pixmap.erase(color4f, &bounds);\n bounds.offset(2, 0);\n pixmap.erase(color4f.pin(), &bounds);\n bounds.offset(2, 0);\n }\n SkBitmap bitmap;\n canvas->scale(20, 20);\n bitmap.installPixels(pixmap);\n canvas->drawBitmap(bitmap, 0, 0);\n}", "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "height": 40, + "hash": "9e349862c5189a44d2acef5da24f2e79", "file": "SkColor4f_Reference", "name": "SkColor4f::pin()" }, - "SkColor4f_toSkColor": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", - "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", - "file": "SkColor4f_Reference", - "name": "SkColor4f::toSkColor" -}, - "SkColor4f_vec": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", - "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", - "file": "SkColor4f_Reference", - "name": "SkColor4f::vec()" -}, - "SkColor4f_vec_2": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", - "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", - "file": "SkColor4f_Reference", - "name": "SkColor4f::vec_2" -}, "SkColorGetA": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n SkPaint paint;\n paint.setAntiAlias(true);\n paint.setColor(SK_ColorRED);\n for (int alpha = 255; alpha >= 0; alpha -= 17) {\n paint.setAlpha(alpha);\n canvas->drawRect({5, 5, 100, 20}, paint);\n SkAlpha alphaInPaint = SkColorGetA(paint.getColor());\n canvas->drawString(std::to_string(alphaInPaint).c_str(), 110, 18, paint);\n canvas->translate(0, 15);\n }\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "896ce0316b489608a95af5439ca2aab1", "file": "SkColor_Reference", "name": "SkColorGetA" }, "SkColorGetB": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n canvas->drawBitmap(source, 0, 0);\n SkPaint bgPaint;\n bgPaint.setColor(0xafffffff);\n canvas->drawRect({20, 50, 80, 70}, bgPaint);\n uint8_t blue = SkColorGetB(source.getColor(168, 170));\n canvas->drawString(std::to_string(blue).c_str(), 40, 65, SkPaint());\n canvas->drawLine(80, 70, 168, 170, SkPaint());\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "9ee27675284faea375611dc88123a2c5", "file": "SkColor_Reference", "name": "SkColorGetB" }, "SkColorGetG": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n canvas->drawBitmap(source, 0, 0);\n SkPaint bgPaint;\n bgPaint.setColor(0xafffffff);\n canvas->drawRect({20, 50, 80, 70}, bgPaint);\n uint8_t green = SkColorGetG(source.getColor(57, 192));\n canvas->drawString(std::to_string(green).c_str(), 40, 65, SkPaint());\n canvas->drawLine(80, 70, 57, 192, SkPaint());\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "535d38b2c019299d915170f7b03d5fea", "file": "SkColor_Reference", "name": "SkColorGetG" }, "SkColorGetR": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n canvas->drawBitmap(source, 0, 0);\n SkPaint bgPaint;\n bgPaint.setColor(0xafffffff);\n canvas->drawRect({20, 50, 80, 70}, bgPaint);\n uint8_t red = SkColorGetR(source.getColor(226, 128));\n canvas->drawString(std::to_string(red).c_str(), 40, 65, SkPaint());\n canvas->drawLine(80, 70, 226, 128, SkPaint());\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "d6da38577f189eaa6d9df75f6c3ed252", "file": "SkColor_Reference", "name": "SkColorGetR" }, "SkColorSetA": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n canvas->drawBitmap(source, 0, 0);\n for (int y = 0; y < 256; y += 16) {\n for (int x = 0; x < 256; x += 16) {\n SkColor color = source.getColor(x + 8, y + 8);\n SkPaint paint;\n paint.setColor(SkColorSetA(color, x + y));\n canvas->drawRect(SkRect::MakeXYWH(x, y, 16, 16), paint);\n }\n }\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "18f6f376f771f5ffa56d5e5b2ebd20fb", "file": "SkColor_Reference", "name": "SkColorSetA" }, @@ -4990,10 +4984,10 @@ "name": "SkColorSetRGB" }, "SkColorToHSV": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n canvas->drawBitmap(source, 0, 0);\n for (int y = 0; y < 256; ++y) {\n for (int x = 0; x < 256; ++x) {\n SkScalar hsv[3];\n SkColorToHSV(source.getColor(x, y), hsv);\n SkTSwap(hsv[1], hsv[2]);\n SkPaint paint;\n paint.setColor(SkHSVToColor(hsv));\n canvas->drawRect(SkRect::MakeXYWH(x, y, 1, 1), paint);\n }\n }\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "7d7e427e2b181c651abad5732bc46cf7", "file": "SkColor_Reference", "name": "SkColorToHSV" }, @@ -5022,18 +5016,18 @@ "name": "SkColorTypeValidateAlphaType" }, "SkHSVToColor": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n canvas->drawBitmap(source, 0, 0);\n for (int y = 0; y < 256; ++y) {\n for (int x = 0; x < 256; ++x) {\n SkColor color = source.getColor(x, y);\n SkScalar hsv[3];\n SkColorToHSV(color, hsv);\n hsv[0] = hsv[0] + 90 >= 360 ? hsv[0] - 270 : hsv[0] + 90;\n SkPaint paint;\n paint.setColor(SkHSVToColor(x + y, hsv));\n canvas->drawRect(SkRect::MakeXYWH(x, y, 1, 1), paint);\n }\n }\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "311a59931ac340b90f202cd6ac399a0a", "file": "SkColor_Reference", "name": "SkHSVToColor" }, "SkHSVToColor_2": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n canvas->drawBitmap(source, 0, 0);\n for (int y = 0; y < 256; ++y) {\n for (int x = 0; x < 256; ++x) {\n SkColor color = source.getColor(x, y);\n SkScalar hsv[3];\n SkColorToHSV(color, hsv);\n hsv[0] = hsv[0] + 90 >= 360 ? hsv[0] - 270 : hsv[0] + 90;\n SkPaint paint;\n paint.setColor(SkHSVToColor(hsv));\n canvas->drawRect(SkRect::MakeXYWH(x, y, 1, 1), paint);\n }\n }\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "d355a17547908cdbc2c38720974b5d11", "file": "SkColor_Reference", "name": "SkHSVToColor_2" }, @@ -5326,10 +5320,10 @@ "name": "SkImage::MakeRasterData" }, "SkImage_alphaType": { - "code": "void draw(SkCanvas* canvas) {\n const char* alphaTypeStr[] = { \"Unknown\", \"Opaque\", \"Premul\", \"Unpremul\" };\n SkAlphaType alphaType = image->alphaType();\n canvas->drawImage(image, 16, 0);\n SkPaint paint;\n canvas->drawString(alphaTypeStr[(int) alphaType], 20, image->height() + 20, paint);\n}", + "code": "void draw(SkCanvas* canvas) {\n const char* alphaTypeStr[] = { \"Unknown\", \"Opaque\", \"Premul\", \"Unpremul\" };\n SkAlphaType alphaType = image->alphaType();\n canvas->drawImage(image, 16, 0);\n canvas->drawString(alphaTypeStr[(int) alphaType], 20, image->height() + 20, SkPaint());\n}", "width": 256, "height": 96, - "hash": "dac1403132a42459d6881585efbfe74b", + "hash": "1b9f1f05026ceb14ccb6926a13cdaa83", "file": "SkImage_Reference", "name": "SkImage::alphaType" }, @@ -5358,10 +5352,10 @@ "name": "SkImage::colorSpace" }, "SkImage_colorType": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n const char* colors[] = { \"Unknown\", \"Alpha_8\", \"RGB_565\", \"ARGB_4444\", \"RGBA_8888\", \"RGB_888x\",\n \"BGRA_8888\", \"RGBA_1010102\", \"RGB_101010x\", \"Gray_8\", \"RGBA_F16\" };\n SkColorType colorType = image->colorType();\n canvas->drawImage(image, 16, 0);\n canvas->drawString(colors[(int) colorType], 20, image->height() + 20, SkPaint());\n}", "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "height": 96, + "hash": "50396fad4a128f58e400ca00fe09711f", "file": "SkImage_Reference", "name": "SkImage::colorType" }, @@ -7150,26 +7144,26 @@ "name": "SkPoint::operator-=(const SkVector& v)" }, "SkPreMultiplyARGB": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", - "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "code": "void draw(SkCanvas* canvas) {\n SkPMColor premultiplied = SkPreMultiplyARGB(160, 128, 160, 192);\n canvas->drawString(\"Unpremultiplied:\", 20, 20, SkPaint());\n canvas->drawString(\"alpha=160 red=128 green=160 blue=192\", 20, 40, SkPaint());\n canvas->drawString(\"Premultiplied:\", 20, 80, SkPaint());\n std::string str = \"alpha=\" + std::to_string(SkColorGetA(premultiplied));\n str += \" red=\" + std::to_string(SkColorGetR(premultiplied));\n str += \" green=\" + std::to_string(SkColorGetG(premultiplied));\n str += \" blue=\" + std::to_string(SkColorGetB(premultiplied));\n canvas->drawString(str.c_str(), 20, 100, SkPaint());\n}", + "width": 300, + "height": 128, + "hash": "756345484fd48ca0ea7b6cec350f73b8", "file": "SkColor_Reference", "name": "SkPreMultiplyARGB" }, "SkPreMultiplyColor": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", - "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "code": "void draw(SkCanvas* canvas) {\n SkColor unpremultiplied = SkColorSetARGB(160, 128, 160, 192);\n SkPMColor premultiplied = SkPreMultiplyColor(unpremultiplied);\n canvas->drawString(\"Unpremultiplied:\", 20, 20, SkPaint());\n std::string str = \"alpha=\" + std::to_string(SkColorGetA(unpremultiplied));\n str += \" red=\" + std::to_string(SkColorGetR(unpremultiplied));\n str += \" green=\" + std::to_string(SkColorGetG(unpremultiplied));\n str += \" blue=\" + std::to_string(SkColorGetB(unpremultiplied));\n canvas->drawString(str.c_str(), 20, 40, SkPaint());\n canvas->drawString(\"Premultiplied:\", 20, 80, SkPaint());\n str = \"alpha=\" + std::to_string(SkColorGetA(premultiplied));\n str += \" red=\" + std::to_string(SkColorGetR(premultiplied));\n str += \" green=\" + std::to_string(SkColorGetG(premultiplied));\n str += \" blue=\" + std::to_string(SkColorGetB(premultiplied));\n canvas->drawString(str.c_str(), 20, 100, SkPaint());\n}", + "width": 300, + "height": 128, + "hash": "0bcc0f86a2aefc899f3500503dce6968", "file": "SkColor_Reference", "name": "SkPreMultiplyColor" }, "SkRGBToHSV": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n canvas->drawBitmap(source, 0, 0);\n SkPaint bgPaint;\n bgPaint.setColor(0xafffffff);\n canvas->drawRect({20, 30, 110, 90}, bgPaint);\n SkScalar hsv[3];\n SkColor c = source.getColor(226, 128);\n SkRGBToHSV(SkColorGetR(c), SkColorGetG(c), SkColorGetB(c), hsv);\n canvas->drawString((\"h: \" + std::to_string(hsv[0]).substr(0, 6)).c_str(), 27, 45, SkPaint());\n canvas->drawString((\"s: \" + std::to_string(hsv[1]).substr(0, 6)).c_str(), 27, 65, SkPaint());\n canvas->drawString((\"v: \" + std::to_string(hsv[2]).substr(0, 6)).c_str(), 27, 85, SkPaint());\n canvas->drawLine(110, 90, 226, 128, SkPaint());\n}", "width": 256, "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "hash": "4fb2da4a3d9b14ca4ac24eefb0f5126a", "file": "SkColor_Reference", "name": "SkRGBToHSV" }, @@ -7302,18 +7296,18 @@ "name": "SkSurface::readPixels_3" }, "SkSurface_writePixels": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n sk_sp<SkSurface> surf(SkSurface::MakeRasterN32Premul(64, 64));\n auto surfCanvas = surf->getCanvas();\n surfCanvas->clear(SK_ColorRED);\n SkPaint paint;\n paint.setTextSize(40);\n surfCanvas->drawString(\"&\", 16, 40, paint);\n SkPixmap pixmap;\n if (surf->peekPixels(&pixmap)) {\n surf->writePixels(pixmap, 25, 25);\n sk_sp<SkImage> image(surf->makeImageSnapshot());\n canvas->drawImage(image, 0, 0);\n }\n}", "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "height": 96, + "hash": "760793bcf0ef193fa61ea03e6e8fc825", "file": "SkSurface_Reference", "name": "SkSurface::writePixels" }, "SkSurface_writePixels_2": { - "code": "void draw(SkCanvas* canvas) {\n // incomplete\n}", + "code": "void draw(SkCanvas* canvas) {\n sk_sp<SkSurface> surf(SkSurface::MakeRasterN32Premul(64, 64));\n auto surfCanvas = surf->getCanvas();\n surfCanvas->clear(SK_ColorGREEN);\n surf->writePixels(source, 25, 25);\n sk_sp<SkImage> image(surf->makeImageSnapshot());\n canvas->drawImage(image, 0, 0);\n}", "width": 256, - "height": 256, - "hash": "882e8e0103048009a25cfc20400492f7", + "height": 96, + "hash": "d77790dd3bc9f678fa4f582347fb8fba", "file": "SkSurface_Reference", "name": "SkSurface::writePixels_2" } diff --git a/site/user/api/undocumented.md b/site/user/api/undocumented.md index b4f83bd4b4..a3034eb73f 100644 --- a/site/user/api/undocumented.md +++ b/site/user/api/undocumented.md @@ -504,7 +504,7 @@ void <a href='#SkPixelRef_setImmutable'>setImmutable</a>() # <a name='SkRasterHandleAllocator'>Class SkRasterHandleAllocator</a> -# <a name='SkRasterHandleAllocator_Handle'>Typedef SkRasterHandleAllocator::Handle</a> +## <a name='SkRasterHandleAllocator_Handle'>Typedef SkRasterHandleAllocator::Handle</a> # <a name='SkRasterHandleAllocator_Rec'>Struct SkRasterHandleAllocator::Rec</a> @@ -579,7 +579,7 @@ void <a href='#SkRRect_dumpHex'>dumpHex</a>() const # <a name='Scalar'>Scalar</a> -# <a name='SkScalar'>Typedef SkScalar</a> +## <a name='SkScalar'>Typedef SkScalar</a> # <a name='Shader'>Shader</a> |