1undocumented 2=== 3 4 5<a name='SkBBHFactory'></a> 6 7--- 8 9<a name='GrBackendSemaphore'></a> 10 11--- 12 13<a name='SkClipOp'></a> 14 15--- 16 17### Constants 18 19<table style='border-collapse: collapse; width: 62.5em'> 20 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Const</th> 21<th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> 22<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 23 <tr style='background-color: #f0f0f0; '> 24 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkClipOp_kDifference'><code>SkClipOp::kDifference</code></a></td> 25 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> 26 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 27</td> 28 </tr> 29 <tr> 30 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkClipOp_kIntersect'><code>SkClipOp::kIntersect</code></a></td> 31 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>1</td> 32 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 33</td> 34 </tr> 35</table> 36 37<a name='SkColorFilter'></a> 38 39--- 40 41<a name='SkColorSpace'></a> 42 43--- 44 45<a name='SkColorSpace_MakeSRGBLinear'></a> 46 47--- 48 49<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 50static <a href='#sk_sp'>sk sp</a><<a href='#SkColorSpace'>SkColorSpace</a>> <a href='#SkColorSpace_MakeSRGBLinear'>MakeSRGBLinear</a>() 51</pre> 52 53<a name='SkColorSpace_gammaCloseToSRGB'></a> 54 55--- 56 57<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 58bool <a href='#SkColorSpace_gammaCloseToSRGB'>gammaCloseToSRGB</a>() const 59</pre> 60 61<a name='SkColorSpace_Equals'></a> 62 63--- 64 65<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 66static bool <a href='#SkColorSpace_Equals'>Equals</a>(const <a href='#SkColorSpace'>SkColorSpace</a>* src, const <a href='#SkColorSpace'>SkColorSpace</a>* dst) 67</pre> 68 69<a name='SkCreateColorSpaceXformCanvas'></a> 70 71--- 72 73<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 74std::unique_ptr<<a href='SkCanvas_Reference#SkCanvas'>SkCanvas</a>> SK_API <a href='#SkCreateColorSpaceXformCanvas'>SkCreateColorSpaceXformCanvas</a>(<a href='SkCanvas_Reference#SkCanvas'>SkCanvas</a>* target, 75 <a href='#sk_sp'>sk sp</a><<a href='#SkColorSpace'>SkColorSpace</a>> targetCS) 76</pre> 77 78<a name='SkData'></a> 79 80--- 81 82<a name='DebugCanvas'></a> 83 84--- 85 86<a name='SkDebugf'></a> 87 88--- 89 90<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 91SK_API void <a href='#SkDebugf'>SkDebugf</a>(const char format[], ...) 92</pre> 93 94<a name='SkDeferredDisplayList'></a> 95 96--- 97 98<a name='Recorder'></a> 99 100<a name='SkDeferredDisplayListRecorder'></a> 101 102--- 103 104<a name='SkDeserialProcs'></a> 105 106---<table style='border-collapse: collapse; width: 62.5em'> 107 108 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Type</th> 109<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Member</th> 110<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 111 <tr style='background-color: #f0f0f0; '> 112 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkDeserialPictureProc</td> 113 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkDeserialProcs_fPictureProc'><code>fPictureProc</code></a></td> 114 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 115</td> 116 </tr> 117 <tr> 118 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>void*</td> 119 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkDeserialProcs_fPictureCtx'><code>fPictureCtx</code></a></td> 120 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 121</td> 122 </tr> 123 <tr style='background-color: #f0f0f0; '> 124 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkDeserialTypefaceProc</td> 125 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkDeserialProcs_fTypefaceProc'><code>fTypefaceProc</code></a></td> 126 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 127</td> 128 </tr> 129 <tr> 130 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>void*</td> 131 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkDeserialProcs_fTypefaceCtx'><code>fTypefaceCtx</code></a></td> 132 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 133</td> 134 </tr> 135</table> 136 137<a name='SkBaseDevice'></a> 138 139--- 140 141<a name='SkDocument'></a> 142 143--- 144 145<a name='SkDocument_beginPage'></a> 146 147--- 148 149<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 150<a href='SkCanvas_Reference#SkCanvas'>SkCanvas</a>* <a href='#SkDocument_beginPage'>beginPage</a>(<a href='#SkScalar'>SkScalar</a> width, <a href='#SkScalar'>SkScalar</a> height, const <a href='SkRect_Reference#SkRect'>SkRect</a>* content = NULL) 151</pre> 152 153<a name='PDF'></a> 154 155<a name='SkDrawLooper'></a> 156 157--- 158 159<a name='SkDrawable'></a> 160 161--- 162 163<a name='SkDrawable_draw'></a> 164 165--- 166 167<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 168void <a href='#SkDrawable_draw'>draw</a>(<a href='SkCanvas_Reference#SkCanvas'>SkCanvas</a>*, const <a href='SkMatrix_Reference#SkMatrix'>SkMatrix</a>* = NULL) 169</pre> 170 171<a name='SkFilterQuality'></a> 172 173--- 174 175### Constants 176 177<table style='border-collapse: collapse; width: 62.5em'> 178 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Const</th> 179<th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> 180<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 181 <tr style='background-color: #f0f0f0; '> 182 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='kNone_SkFilterQuality'><code>kNone_SkFilterQuality</code></a></td> 183 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> 184 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 185</td> 186 </tr> 187 <tr> 188 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='kLow_SkFilterQuality'><code>kLow_SkFilterQuality</code></a></td> 189 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>1</td> 190 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 191</td> 192 </tr> 193 <tr style='background-color: #f0f0f0; '> 194 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='kMedium_SkFilterQuality'><code>kMedium_SkFilterQuality</code></a></td> 195 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>2</td> 196 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 197</td> 198 </tr> 199 <tr> 200 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='kHigh_SkFilterQuality'><code>kHigh_SkFilterQuality</code></a></td> 201 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>3</td> 202 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 203</td> 204 </tr> 205</table> 206 207<a name='Nearest_Neighbor'></a> 208 209<a name='Bilerp'></a> 210 211<a name='MipMap'></a> 212 213<a name='BiCubic'></a> 214 215<a name='Advance'></a> 216 217<a name='Engine'></a> 218 219<a name='SkTextEncoding'></a> 220 221--- 222 223### Constants 224 225<table style='border-collapse: collapse; width: 62.5em'> 226 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Const</th> 227<th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> 228<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 229 <tr style='background-color: #f0f0f0; '> 230 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkTextEncoding::kUTF8'><code>SkTextEncoding::kUTF8</code></a></td> 231 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> 232 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 233</td> 234 </tr> 235 <tr> 236 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkTextEncoding::kUTF16'><code>SkTextEncoding::kUTF16</code></a></td> 237 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>1</td> 238 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 239</td> 240 </tr> 241 <tr style='background-color: #f0f0f0; '> 242 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkTextEncoding::kUTF32'><code>SkTextEncoding::kUTF32</code></a></td> 243 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>2</td> 244 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 245</td> 246 </tr> 247 <tr> 248 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkTextEncoding::kGlyphID'><code>SkTextEncoding::kGlyphID</code></a></td> 249 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>3</td> 250 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 251</td> 252 </tr> 253</table> 254 255<a name='SkFont'></a> 256 257--- 258 259<a name='SkFontHinting'></a> 260 261--- 262 263### Constants 264 265<table style='border-collapse: collapse; width: 62.5em'> 266 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Const</th> 267<th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> 268<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 269 <tr style='background-color: #f0f0f0; '> 270 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontHinting::kNone'><code>SkFontHinting::kNone</code></a></td> 271 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> 272 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 273</td> 274 </tr> 275 <tr> 276 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontHinting::kSlight'><code>SkFontHinting::kSlight</code></a></td> 277 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>1</td> 278 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 279</td> 280 </tr> 281 <tr style='background-color: #f0f0f0; '> 282 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontHinting::kNormal'><code>SkFontHinting::kNormal</code></a></td> 283 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>2</td> 284 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 285</td> 286 </tr> 287 <tr> 288 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontHinting::kFull'><code>SkFontHinting::kFull</code></a></td> 289 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>3</td> 290 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 291</td> 292 </tr> 293</table> 294 295<a name='SkFontMetrics'></a> 296 297--- 298 299<a href='#SkFontMetrics'>SkFontMetrics</a> is filled out by <a href='SkPaint_Reference#SkPaint_getFontMetrics'>SkPaint::getFontMetrics</a>. <a href='#SkFontMetrics'>SkFontMetrics</a> contents 300reflect the values 301computed by <a href='#Font_Manager'>Font Manager</a> using <a href='#Typeface'>Typeface</a>. Values are set to zero if they are 302not available. 303 304All vertical values are relative to the baseline, on a y-axis pointing down. 305Zero is on the baseline, negative values are above the baseline, and positive 306values are below the baseline. 307 308<a href='#SkFontMetrics_fUnderlineThickness'>fUnderlineThickness</a> and <a href='#SkFontMetrics_fUnderlinePosition'>fUnderlinePosition</a> have a bit set in <a href='#SkFontMetrics_fFlags'>fFlags</a> if their values 309are valid, since their value may be zero. 310 311<a href='#SkFontMetrics_fStrikeoutThickness'>fStrikeoutThickness</a> and <a href='#SkFontMetrics_fStrikeoutPosition'>fStrikeoutPosition</a> have a bit set in <a href='#SkFontMetrics_fFlags'>fFlags</a> if their values 312are valid, since their value may be zero. 313 314<a name='SkFontMetrics_FontMetricsFlags'></a> 315 316--- 317 318<a href='#SkFontMetrics_FontMetricsFlags'>FontMetricsFlags</a> are set in <a href='#SkFontMetrics_fFlags'>fFlags</a> when underline and strikeout metrics are valid; 319the underline or strikeout metric may be valid and zero. 320Fonts with embedded bitmaps may not have valid underline or strikeout metrics. 321 322### Constants 323 324<table style='border-collapse: collapse; width: 62.5em'> 325 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Const</th> 326<th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> 327<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 328 <tr style='background-color: #f0f0f0; '> 329 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_kUnderlineThicknessIsValid_Flag'><code>SkFontMetrics::kUnderlineThicknessIsValid_Flag</code></a></td> 330 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0x0001</td> 331 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 332set if fUnderlineThickness is valid</td> 333 </tr> 334 <tr> 335 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_kUnderlinePositionIsValid_Flag'><code>SkFontMetrics::kUnderlinePositionIsValid_Flag</code></a></td> 336 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0x0002</td> 337 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 338set if fUnderlinePosition is valid</td> 339 </tr> 340 <tr style='background-color: #f0f0f0; '> 341 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_kStrikeoutThicknessIsValid_Flag'><code>SkFontMetrics::kStrikeoutThicknessIsValid_Flag</code></a></td> 342 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0x0004</td> 343 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 344set if fStrikeoutThickness is valid</td> 345 </tr> 346 <tr> 347 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_kStrikeoutPositionIsValid_Flag'><code>SkFontMetrics::kStrikeoutPositionIsValid_Flag</code></a></td> 348 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0x0008</td> 349 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 350set if fStrikeoutPosition is valid</td> 351 </tr> 352</table><table style='border-collapse: collapse; width: 62.5em'> 353 354 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Type</th> 355<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Member</th> 356<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 357 <tr style='background-color: #f0f0f0; '> 358 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>uint32_t</td> 359 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fFlags'><code>fFlags</code></a></td> 360 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 361is set to FontMetricsFlags when metrics are valid</td> 362 </tr> 363 <tr> 364 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 365 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fTop'><code>fTop</code></a></td> 366 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 367Greatest extent above the baseline for any glyph. 368Typically less than zero. 369</td> 370 </tr> 371 <tr style='background-color: #f0f0f0; '> 372 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 373 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fAscent'><code>fAscent</code></a></td> 374 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 375Recommended distance above the baseline to reserve for a line of text. 376Typically less than zero. 377</td> 378 </tr> 379 <tr> 380 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 381 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fDescent'><code>fDescent</code></a></td> 382 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 383Recommended distance below the baseline to reserve for a line of text. 384Typically greater than zero. 385</td> 386 </tr> 387 <tr style='background-color: #f0f0f0; '> 388 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 389 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fBottom'><code>fBottom</code></a></td> 390 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 391Greatest extent below the baseline for any glyph. 392Typically greater than zero. 393</td> 394 </tr> 395 <tr> 396 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 397 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fLeading'><code>fLeading</code></a></td> 398 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 399Recommended distance to add between lines of text. 400Typically greater than or equal to zero. 401</td> 402 </tr> 403 <tr style='background-color: #f0f0f0; '> 404 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 405 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fAvgCharWidth'><code>fAvgCharWidth</code></a></td> 406 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 407Average character width, if it is available. 408Zero if no average width is stored in the font. 409</td> 410 </tr> 411 <tr> 412 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 413 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fMaxCharWidth'><code>fMaxCharWidth</code></a></td> 414 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 415maximum character width</td> 416 </tr> 417 <tr style='background-color: #f0f0f0; '> 418 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 419 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fXMin'><code>fXMin</code></a></td> 420 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 421Minimum bounding box x-axis value for all <a href='#Glyph'>Glyphs</a>. 422Typically less than zero. 423</td> 424 </tr> 425 <tr> 426 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 427 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fXMax'><code>fXMax</code></a></td> 428 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 429Maximum bounding box x-axis value for all <a href='#Glyph'>Glyphs</a>. 430Typically greater than zero. 431</td> 432 </tr> 433 <tr style='background-color: #f0f0f0; '> 434 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 435 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fXHeight'><code>fXHeight</code></a></td> 436 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 437May be zero if no lower-case height is stored in the font. 438</td> 439 </tr> 440 <tr> 441 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 442 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fCapHeight'><code>fCapHeight</code></a></td> 443 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 444May be zero if no upper-case height is stored in the font. 445</td> 446 </tr> 447 <tr style='background-color: #f0f0f0; '> 448 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 449 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fUnderlineThickness'><code>fUnderlineThickness</code></a></td> 450 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 451If the metric is valid, the <a href='#SkFontMetrics_kUnderlineThicknessIsValid_Flag'>kUnderlineThicknessIsValid Flag</a> is set in <a href='#SkFontMetrics_fFlags'>fFlags</a>. 452If <a href='#SkFontMetrics_kUnderlineThicknessIsValid_Flag'>kUnderlineThicknessIsValid Flag</a> is clear, <a href='#SkFontMetrics_fUnderlineThickness'>fUnderlineThickness</a> is zero. 453</td> 454 </tr> 455 <tr> 456 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 457 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fUnderlinePosition'><code>fUnderlinePosition</code></a></td> 458 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 459Position of the top of the underline stroke relative to the baseline. 460Typically positive when valid. 461 462If the metric is valid, the <a href='#SkFontMetrics_kUnderlinePositionIsValid_Flag'>kUnderlinePositionIsValid Flag</a> is set in <a href='#SkFontMetrics_fFlags'>fFlags</a>. 463If <a href='#SkFontMetrics_kUnderlinePositionIsValid_Flag'>kUnderlinePositionIsValid Flag</a> is clear, <a href='#SkFontMetrics_fUnderlinePosition'>fUnderlinePosition</a> is zero. 464</td> 465 </tr> 466 <tr style='background-color: #f0f0f0; '> 467 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 468 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fStrikeoutThickness'><code>fStrikeoutThickness</code></a></td> 469 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 470If the metric is valid, the <a href='#SkFontMetrics_kStrikeoutThicknessIsValid_Flag'>kStrikeoutThicknessIsValid Flag</a> is set in <a href='#SkFontMetrics_fFlags'>fFlags</a>. 471If <a href='#SkFontMetrics_kStrikeoutThicknessIsValid_Flag'>kStrikeoutThicknessIsValid Flag</a> is clear, <a href='#SkFontMetrics_fStrikeoutThickness'>fStrikeoutThickness</a> is zero. 472</td> 473 </tr> 474 <tr> 475 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 476 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkFontMetrics_fStrikeoutPosition'><code>fStrikeoutPosition</code></a></td> 477 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 478Position of the bottom of the strikeout stroke relative to the baseline. 479Typically negative when valid. 480 481If the metric is valid, the <a href='#SkFontMetrics_kStrikeoutPositionIsValid_Flag'>kStrikeoutPositionIsValid Flag</a> is set in <a href='#SkFontMetrics_fFlags'>fFlags</a>. 482If <a href='#SkFontMetrics_kStrikeoutPositionIsValid_Flag'>kStrikeoutPositionIsValid Flag</a> is clear, <a href='#SkFontMetrics_fStrikeoutPosition'>fStrikeoutPosition</a> is zero. 483</td> 484 </tr> 485</table> 486 487<a name='SkFontMetrics_hasUnderlineThickness'></a> 488 489--- 490 491<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 492bool <a href='#SkFontMetrics_hasUnderlineThickness'>hasUnderlineThickness</a>(<a href='#SkScalar'>SkScalar</a>* thickness) const 493</pre> 494 495<a name='SkFontMetrics_hasUnderlinePosition'></a> 496 497--- 498 499<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 500bool <a href='#SkFontMetrics_hasUnderlinePosition'>hasUnderlinePosition</a>(<a href='#SkScalar'>SkScalar</a>* position) const 501</pre> 502 503<a name='SkFontMetrics_hasStrikeoutThickness'></a> 504 505--- 506 507<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 508bool <a href='#SkFontMetrics_hasStrikeoutThickness'>hasStrikeoutThickness</a>(<a href='#SkScalar'>SkScalar</a>* thickness) const 509</pre> 510 511<a name='SkFontMetrics_hasStrikeoutPosition'></a> 512 513--- 514 515<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 516bool <a href='#SkFontMetrics_hasStrikeoutPosition'>hasStrikeoutPosition</a>(<a href='#SkScalar'>SkScalar</a>* position) const 517</pre> 518 519<a name='GrContext'></a> 520 521--- 522 523<a name='GrContext_flush'></a> 524 525--- 526 527<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 528void <a href='#GrContext_flush'>flush</a>() 529</pre> 530 531<a name='ID'></a> 532 533<a name='ArcTo'></a> 534 535<a name='SkISize'></a> 536 537--- 538 539<a name='SkISize_width'></a> 540 541--- 542 543<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 544int32_t <a href='#SkISize_width'>width</a>() const 545</pre> 546 547<a name='SkISize_height'></a> 548 549--- 550 551<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 552int32_t <a href='#SkISize_height'>height</a>() const 553</pre> 554 555<a name='SkImageFilter'></a> 556 557--- 558 559<a name='SkMaskFilter'></a> 560 561--- 562 563<a name='SkMetaData'></a> 564 565--- 566 567### Constants 568 569<table style='border-collapse: collapse; width: 62.5em'> 570 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Const</th> 571<th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> 572<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 573 <tr> 574 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkPaintDefaults_Hinting'><code>SkPaintDefaults_Hinting</code></a></td> 575 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>2</td> 576 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 577</td> 578 </tr> 579 <tr style='background-color: #f0f0f0; '> 580 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkPaintDefaults_TextSize'><code>SkPaintDefaults_TextSize</code></a></td> 581 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>12</td> 582 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 583</td> 584 </tr> 585 <tr> 586 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkPaintDefaults_MiterLimit'><code>SkPaintDefaults_MiterLimit</code></a></td> 587 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>4</td> 588 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 589</td> 590 </tr> 591 592 593<a name='SkPathOp'></a> 594 595--- 596 597</table> 598 599<a name='Op'></a> 600 601--- 602 603<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 604bool SK_API <a href='#Op'>Op</a>(const <a href='SkPath_Reference#SkPath'>SkPath</a>& one, const <a href='SkPath_Reference#SkPath'>SkPath</a>& two, <a href='#SkPathOp'>SkPathOp</a> op, <a href='SkPath_Reference#SkPath'>SkPath</a>* result) 605</pre> 606 607<a name='SkPathEffect'></a> 608 609--- 610 611<a name='SkPictureRecorder'></a> 612 613--- 614 615<a name='SkPictureRecorder_beginRecording'></a> 616 617--- 618 619<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 620<a href='SkCanvas_Reference#SkCanvas'>SkCanvas</a>* <a href='#SkPictureRecorder_beginRecording'>beginRecording</a>(const <a href='SkRect_Reference#SkRect'>SkRect</a>& bounds, <a href='#SkBBHFactory'>SkBBHFactory</a>* bbhFactory = NULL, 621 uint32_t recordFlags = 0) 622</pre> 623 624<a name='Storage'></a> 625 626<a name='SkPixelRef'></a> 627 628--- 629 630<a name='SkPixelRef_width'></a> 631 632--- 633 634<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 635int <a href='#SkPixelRef_width'>width</a>() const 636</pre> 637 638<a name='SkPixelRef_height'></a> 639 640--- 641 642<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 643int <a href='#SkPixelRef_height'>height</a>() const 644</pre> 645 646<a name='SkPixelRef_isImmutable'></a> 647 648--- 649 650<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 651bool <a href='#SkPixelRef_isImmutable'>isImmutable</a>() const 652</pre> 653 654<a name='SkPixelRef_setImmutable'></a> 655 656--- 657 658<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 659void <a href='#SkPixelRef_setImmutable'>setImmutable</a>() 660</pre> 661 662<a name='SkPoint3'></a> 663 664--- 665 666<a name='Arct'></a> 667 668<a name='SkRSXform'></a> 669 670---<table style='border-collapse: collapse; width: 62.5em'> 671 672 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Type</th> 673<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Member</th> 674<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 675 <tr style='background-color: #f0f0f0; '> 676 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 677 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkRSXform_fSCos'><code>fSCos</code></a></td> 678 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 679</td> 680 </tr> 681 <tr> 682 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 683 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkRSXform_fSSin'><code>fSSin</code></a></td> 684 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 685</td> 686 </tr> 687 <tr style='background-color: #f0f0f0; '> 688 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 689 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkRSXform_fTx'><code>fTx</code></a></td> 690 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 691</td> 692 </tr> 693 <tr> 694 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkScalar</td> 695 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkRSXform_fTy'><code>fTy</code></a></td> 696 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 697</td> 698 </tr> 699</table> 700 701<a name='SkRasterHandleAllocator'></a> 702 703--- 704 705<a name='SkRasterHandleAllocator_Handle'></a> 706 707--- 708 709<a name='SkRasterHandleAllocator_Rec'></a> 710 711--- 712 713<a name='SkRasterHandleAllocator_MakeCanvas'></a> 714 715--- 716 717<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 718static std::unique_ptr<<a href='SkCanvas_Reference#SkCanvas'>SkCanvas</a>> <a href='#SkRasterHandleAllocator_MakeCanvas'>MakeCanvas</a>(std::unique_ptr<<a href='#SkRasterHandleAllocator'>SkRasterHandleAllocator</a>>, 719 const <a href='SkImageInfo_Reference#SkImageInfo'>SkImageInfo</a>&, const <a href='#SkRasterHandleAllocator_Rec'>Rec</a>* rec = nullptr) 720</pre> 721 722<a name='SkRefCnt'></a> 723 724--- 725 726<a name='GrBackendRenderTarget'></a> 727 728--- 729 730<a name='GrBackendRenderTarget_isValid'></a> 731 732--- 733 734<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 735bool <a href='#GrBackendRenderTarget_isValid'>isValid</a>() const 736</pre> 737 738<a name='GrRenderTarget'></a> 739 740--- 741 742<a name='Canvas'></a> 743 744<a name='Arc'></a> 745 746<a name='Sweep_Flag'></a> 747 748<a name='SkScalar'></a> 749 750--- 751 752<a name='SkSerialProcs'></a> 753 754---<table style='border-collapse: collapse; width: 62.5em'> 755 756 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Type</th> 757<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Member</th> 758<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 759 <tr style='background-color: #f0f0f0; '> 760 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkSerialPictureProc</td> 761 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkSerialProcs_fPictureProc'><code>fPictureProc</code></a></td> 762 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 763</td> 764 </tr> 765 <tr> 766 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>void*</td> 767 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkSerialProcs_fPictureCtx'><code>fPictureCtx</code></a></td> 768 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 769</td> 770 </tr> 771 <tr style='background-color: #f0f0f0; '> 772 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>SkSerialTypefaceProc</td> 773 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkSerialProcs_fTypefaceProc'><code>fTypefaceProc</code></a></td> 774 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 775</td> 776 </tr> 777 <tr> 778 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>void*</td> 779 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkSerialProcs_fTypefaceCtx'><code>fTypefaceCtx</code></a></td> 780 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 781</td> 782 </tr> 783</table> 784 785<a name='SkShader'></a> 786 787--- 788 789<a name='SkShader_TileMode'></a> 790 791--- 792 793### Constants 794 795<table style='border-collapse: collapse; width: 62.5em'> 796 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Const</th> 797<th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> 798<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 799 <tr style='background-color: #f0f0f0; '> 800 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkShader_kClamp_TileMode'><code>SkShader::kClamp_TileMode</code></a></td> 801 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> 802 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 803</td> 804 </tr> 805 <tr> 806 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkShader_kRepeat_TileMode'><code>SkShader::kRepeat_TileMode</code></a></td> 807 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>1</td> 808 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 809</td> 810 </tr> 811 <tr style='background-color: #f0f0f0; '> 812 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkShader_kMirror_TileMode'><code>SkShader::kMirror_TileMode</code></a></td> 813 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>2</td> 814 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 815</td> 816 </tr> 817</table> 818 819<a name='SkShader_MakeBitmapShader'></a> 820 821--- 822 823<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 824static <a href='#sk_sp'>sk sp</a><<a href='#SkShader'>SkShader</a>> <a href='#SkShader_MakeBitmapShader'>MakeBitmapShader</a>(const <a href='SkBitmap_Reference#SkBitmap'>SkBitmap</a>& src, <a href='#SkShader_TileMode'>TileMode</a> tmx, <a href='#SkShader_TileMode'>TileMode</a> tmy, 825 const <a href='SkMatrix_Reference#SkMatrix'>SkMatrix</a>* localMatrix = nullptr) 826</pre> 827 828<a name='SkShader_MakeCompose'></a> 829 830--- 831 832<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 833static <a href='#sk_sp'>sk sp</a><<a href='#SkShader'>SkShader</a>> <a href='#SkShader_MakeCompose'>MakeCompose</a>(<a href='#sk_sp'>sk sp</a><<a href='#SkShader'>SkShader</a>> dst, <a href='#sk_sp'>sk sp</a><<a href='#SkShader'>SkShader</a>> src, <a href='SkBlendMode_Reference#SkBlendMode'>SkBlendMode</a> mode, 834 float lerp = 1) 835</pre> 836 837<a name='SkSize'></a> 838 839--- 840 841<a name='SkSize_width'></a> 842 843--- 844 845<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 846int32_t <a href='#SkSize_width'>width</a>() const 847</pre> 848 849<a name='SkSize_height'></a> 850 851--- 852 853<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 854int32_t <a href='#SkSize_height'>height</a>() const 855</pre> 856 857<a name='sk_sp'></a> 858 859--- 860 861<a name='SkStreamAsset'></a> 862 863--- 864 865<a name='SkString'></a> 866 867--- 868 869<a name='SkSurfaceCharacterization'></a> 870 871--- 872 873<a name='SkSurfaceProps'></a> 874 875--- 876 877<a name='Legacy_Font_Host'></a> 878 879<a name='SkSurfaceProps_InitType'></a> 880 881--- 882 883### Constants 884 885<table style='border-collapse: collapse; width: 62.5em'> 886 <tr><th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Const</th> 887<th style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>Value</th> 888<th style='text-align: left; border: 2px solid #dddddd; padding: 8px; '>Description</th></tr> 889 <tr style='background-color: #f0f0f0; '> 890 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a name='SkSurfaceProps_kLegacyFontHost_InitType'><code>SkSurfaceProps::kLegacyFontHost_InitType</code></a></td> 891 <td style='text-align: center; border: 2px solid #dddddd; padding: 8px; '>0</td> 892 <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '> 893</td> 894 </tr> 895</table> 896 897# 898Topic 899 900<a name='GrBackendTexture'></a> 901 902--- 903 904<a name='GrBackendTexture_isValid'></a> 905 906--- 907 908<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 909bool <a href='#GrBackendTexture_isValid'>isValid</a>() const 910</pre> 911 912<a name='ID'></a> 913 914<a name='SkFontID'></a> 915 916--- 917 918<a name='SkTypeface'></a> 919 920--- 921 922<a name='SkTypeface_uniqueID'></a> 923 924--- 925 926<pre style="padding: 1em 1em 1em 1em; width: 62.5em;background-color: #f0f0f0"> 927<a href='#SkFontID'>SkFontID</a> <a href='#SkTypeface_uniqueID'>uniqueID</a>() const 928</pre> 929 930<a name='SkVertices'></a> 931 932--- 933 934<a name='SkVertices_Bone'></a> 935 936--- 937 938<a name='Colors'></a> 939 940<a name='Texs'></a> 941 942<a name='SkXfermodeImageFilter'></a> 943 944--- 945 946<a name='SkYUVAIndex'></a> 947 948--- 949 950