diff options
Diffstat (limited to 'site/user/api/SkPicture_Reference.md')
-rw-r--r-- | site/user/api/SkPicture_Reference.md | 196 |
1 files changed, 113 insertions, 83 deletions
diff --git a/site/user/api/SkPicture_Reference.md b/site/user/api/SkPicture_Reference.md index c904aedb18..0992737b04 100644 --- a/site/user/api/SkPicture_Reference.md +++ b/site/user/api/SkPicture_Reference.md @@ -14,15 +14,15 @@ SkPicture can be constructed or initialized by these functions, including C++ cl <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='#SkPicture_MakeFromData'>MakeFromData</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; '>constructs <a href='#Picture'>Picture</a> from data</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_MakeFromStream'>MakeFromStream</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; '>constructs <a href='#Picture'>Picture</a> from stream</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_MakePlaceholder'>MakePlaceholder</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; '>constructs placeholder with unique identifier</td> </tr> </table> @@ -58,7 +58,7 @@ SkPicture uses C++ classes to declare the public data structures and interfaces. <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='#SkPicture_AbortCallback'>AbortCallback</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; '>utility to stop picture playback</td> </tr> </table> @@ -71,39 +71,39 @@ SkPicture 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='#SkPicture_MakeFromData'>MakeFromData</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; '>constructs <a href='#Picture'>Picture</a> from data</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_MakeFromStream'>MakeFromStream</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; '>constructs <a href='#Picture'>Picture</a> from stream</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_MakePlaceholder'>MakePlaceholder</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; '>constructs placeholder with unique identifier</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_approximateBytesUsed'>approximateBytesUsed</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 approximate size</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_approximateOpCount'>approximateOpCount</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 approximate operation count</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_cullRect'>cullRect</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 bounds used to record <a href='#Picture'>Picture</a></td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_playback'>playback</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; '>replays drawing commands on canvas</td> </tr> <tr> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_serialize'>serialize</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; '>writes <a href='#Picture'>Picture</a> to data</td> </tr> <tr style='background-color: #f0f0f0; '> <td style='text-align: left; border: 2px solid #dddddd; padding: 8px; '><a href='#SkPicture_uniqueID'>uniqueID</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 identifier for <a href='#Picture'>Picture</a></td> </tr> </table> @@ -128,6 +128,10 @@ SkPicture member functions read and modify the structure properties. </table> <pre style="padding: 1em 1em 1em 1em;width: 62.5em; background-color: #f0f0f0"> + class <a href='#SkPicture_AbortCallback_empty_constructor'>AbortCallback</a> { + public: + <a href='#SkPicture_AbortCallback_empty_constructor'>AbortCallback()</a> {} + virtual </pre> <a href='undocumented#Subclasses'>Subclasses</a> of this can be passed to <a href='#SkPicture_playback'>playback</a>. During the playback @@ -145,17 +149,15 @@ to the same level it was before the playback call was made. <a href='#SkPicture_AbortCallback_empty_constructor'>AbortCallback</a>() </pre> -### Return Value - -incomplete +Has no effect. -### Example +### Return Value -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +abstract class cannot be instantiated ### See Also -incomplete +<a href='#SkPicture_playback'>playback</a> --- @@ -166,13 +168,11 @@ incomplete virtual </pre> -### Example - -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +Has no effect. ### See Also -incomplete +<a href='#SkPicture_playback'>playback</a> --- @@ -183,20 +183,26 @@ incomplete virtual bool <a href='#SkPicture_AbortCallback_abort'>abort</a>() = 0 </pre> -### Return Value +Stops <a href='#Picture'>Picture</a> playback when some condition is met. A subclass of +<a href='#SkPicture_AbortCallback_empty_constructor'>AbortCallback</a> provides an override for <a href='#SkPicture_AbortCallback_abort'>abort</a> that can stop <a href='#SkPicture_playback'>playback</a> from +drawing the entire picture. -incomplete - -### Example +### Return Value -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +true to stop playback ### See Also -incomplete +<a href='#SkPicture_playback'>playback</a> --- +### Example + +<div><fiddle-embed name="56ed920dadbf2b2967ac45fb5a9bded6"><div>JustOneDraw allows the black rectangle to draw but stops playback before the +white rectangle appears. +</div></fiddle-embed></div> + <a name='SkPicture_MakeFromStream'></a> ## MakeFromStream @@ -204,29 +210,29 @@ incomplete static <a href='undocumented#sk_sp'>sk sp</a><<a href='#SkPicture'>SkPicture</a>> <a href='#SkPicture_MakeFromStream'>MakeFromStream</a>(<a href='undocumented#SkStream'>SkStream</a>* stream, const <a href='undocumented#SkDeserialProcs'>SkDeserialProcs</a>* procs = nullptr) </pre> -Recreate a picture that was serialized into a <a href='#SkPicture_MakeFromStream_stream'>stream</a> or data. +Recreates a picture that was serialized into a <a href='#SkPicture_MakeFromStream_stream'>stream</a>. ### Parameters <table> <tr> <td><a name='SkPicture_MakeFromStream_stream'><code><strong>stream</strong></code></a></td> - <td>incomplete</td> + <td>container for serial data</td> </tr> <tr> <td><a name='SkPicture_MakeFromStream_procs'><code><strong>procs</strong></code></a></td> - <td>incomplete</td> + <td>custom serial data decoders; may be nullptr</td> </tr> </table> ### Return Value -incomplete +<a href='#Picture'>Picture</a> constructed from <a href='#SkPicture_MakeFromStream_stream'>stream</a> data ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="404fb42560a289c2004cad1caf3b96de"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPicture_MakeFromData'>MakeFromData</a><sup><a href='#SkPicture_MakeFromData_2'>[2]</a></sup> <a href='undocumented#SkPictureRecorder'>SkPictureRecorder</a> --- @@ -237,27 +243,29 @@ incomplete static <a href='undocumented#sk_sp'>sk sp</a><<a href='#SkPicture'>SkPicture</a>> <a href='#SkPicture_MakeFromData'>MakeFromData</a>(const <a href='undocumented#SkData'>SkData</a>* data, const <a href='undocumented#SkDeserialProcs'>SkDeserialProcs</a>* procs = nullptr) </pre> +Recreates a picture that was serialized into <a href='#SkPicture_MakeFromData_data'>data</a>. + ### Parameters <table> <tr> <td><a name='SkPicture_MakeFromData_data'><code><strong>data</strong></code></a></td> - <td>incomplete</td> + <td>container for serial <a href='#SkPicture_MakeFromData_data'>data</a></td> </tr> <tr> <td><a name='SkPicture_MakeFromData_procs'><code><strong>procs</strong></code></a></td> - <td>incomplete</td> + <td>custom serial <a href='#SkPicture_MakeFromData_data'>data</a> decoders; may be nullptr</td> </tr> </table> ### Return Value -incomplete +<a href='#Picture'>Picture</a> constructed from <a href='#SkPicture_MakeFromData_data'>data</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="58b44bf47d8816782066618700afdecb"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPicture_MakeFromStream'>MakeFromStream</a> <a href='undocumented#SkPictureRecorder'>SkPictureRecorder</a> --- @@ -271,27 +279,29 @@ static <a href='undocumented#sk_sp'>sk sp</a><<a href='#SkPicture'>SkPicture< ### Parameters <table> <tr> <td><a name='SkPicture_MakeFromData_2_data'><code><strong>data</strong></code></a></td> - <td>incomplete</td> + <td>pointer to serial <a href='#SkPicture_MakeFromData_2_data'>data</a></td> </tr> <tr> <td><a name='SkPicture_MakeFromData_2_size'><code><strong>size</strong></code></a></td> - <td>incomplete</td> + <td><a href='#SkPicture_MakeFromData_2_size'>size</a> of <a href='#SkPicture_MakeFromData_2_data'>data</a></td> </tr> <tr> <td><a name='SkPicture_MakeFromData_2_procs'><code><strong>procs</strong></code></a></td> - <td>incomplete</td> + <td>custom serial <a href='#SkPicture_MakeFromData_2_data'>data</a> decoders; may be nullptr</td> </tr> +Recreates a picture that was serialized into <a href='#SkPicture_MakeFromData_2_data'>data</a>. + </table> ### Return Value -incomplete +<a href='#Picture'>Picture</a> constructed from <a href='#SkPicture_MakeFromData_2_data'>data</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="30b9f1b310187db6aff720a5d67591e2"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPicture_MakeFromStream'>MakeFromStream</a> <a href='undocumented#SkPictureRecorder'>SkPictureRecorder</a> --- @@ -310,25 +320,20 @@ this has the effect of unfurling this picture into the destination ### Parameters <table> <tr> <td><a name='SkPicture_playback_canvas'><code><strong>canvas</strong></code></a></td> - <td>the <a href='#SkPicture_playback_canvas'>canvas</a> receiving the drawing commands. -</td> + <td>receiver of drawing commands</td> </tr> <tr> <td><a name='SkPicture_playback_callback'><code><strong>callback</strong></code></a></td> - <td>a <a href='#SkPicture_playback_callback'>callback</a> that allows interruption of playback</td> + <td>allows interruption of playback</td> </tr> </table> -### Return Value - -incomplete - ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="6b0ffb03ba05f526b345dc65a1c73fe4"></fiddle-embed></div> ### See Also -incomplete +<a href='SkCanvas_Reference#SkCanvas_drawPicture'>SkCanvas::drawPicture</a><sup><a href='SkCanvas_Reference#SkCanvas_drawPicture_2'>[2]</a></sup><sup><a href='SkCanvas_Reference#SkCanvas_drawPicture_3'>[3]</a></sup><sup><a href='SkCanvas_Reference#SkCanvas_drawPicture_4'>[4]</a></sup> --- @@ -339,20 +344,22 @@ incomplete virtual <a href='SkRect_Reference#SkRect'>SkRect</a> <a href='#SkPicture_cullRect'>cullRect</a>() const = 0 </pre> -Return a cull rect for this picture. +Returns cull <a href='SkRect_Reference#Rect'>Rect</a> for this picture. Ops recorded into this picture that attempt to draw outside the cull might not be drawn. ### Return Value -incomplete +bounds passed when <a href='#Picture'>Picture</a> was created ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="15bb9a9596b40c5e2045f76e8c1dcf8e"><div><a href='#Picture'>Picture</a> recorded bounds are smaller than contents; contents outside recorded +bounds may be drawn, and are drawn in this example. +</div></fiddle-embed></div> ### See Also -incomplete +<a href='SkCanvas_Reference#SkCanvas_clipRect'>SkCanvas::clipRect</a><sup><a href='SkCanvas_Reference#SkCanvas_clipRect_2'>[2]</a></sup><sup><a href='SkCanvas_Reference#SkCanvas_clipRect_3'>[3]</a></sup> --- @@ -367,15 +374,24 @@ Returns a non-zero value unique among all pictures. ### Return Value -incomplete +identifier for <a href='#Picture'>Picture</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="8e4257245c988c600410fe4fd7293f07"> + +#### Example Output + +~~~~ +empty picture id = 1 +placeholder id = 2 +~~~~ + +</fiddle-embed></div> ### See Also -incomplete +<a href='undocumented#SkRefCnt'>SkRefCnt</a> --- @@ -386,24 +402,26 @@ incomplete <a href='undocumented#sk_sp'>sk sp</a><<a href='undocumented#SkData'>SkData</a>> <a href='#SkPicture_serialize'>serialize</a>(const <a href='undocumented#SkSerialProcs'>SkSerialProcs</a>* procs = nullptr) const </pre> +Returns storage containing data describing <a href='#Picture'>Picture</a>, using optional custom encoders. + ### Parameters <table> <tr> <td><a name='SkPicture_serialize_procs'><code><strong>procs</strong></code></a></td> - <td>incomplete</td> + <td>custom serial data encoders; may be nullptr</td> </tr> </table> ### Return Value -incomplete +storage containing serialized <a href='#Picture'>Picture</a> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="dacdebe1355c884ebd3c2ea038cc7a20"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPicture_MakeFromData'>MakeFromData</a><sup><a href='#SkPicture_MakeFromData_2'>[2]</a></sup> <a href='undocumented#SkData'>SkData</a> <a href='undocumented#SkSerialProcs'>SkSerialProcs</a> --- @@ -413,23 +431,25 @@ incomplete void <a href='#SkPicture_serialize'>serialize</a>(<a href='undocumented#SkWStream'>SkWStream</a>* stream, const <a href='undocumented#SkSerialProcs'>SkSerialProcs</a>* procs = nullptr) const </pre> +Writes picture to <a href='#SkPicture_serialize_2_stream'>stream</a>, using optional custom encoders. + ### Parameters <table> <tr> <td><a name='SkPicture_serialize_2_stream'><code><strong>stream</strong></code></a></td> - <td>incomplete</td> + <td>writable serial data <a href='#SkPicture_serialize_2_stream'>stream</a></td> </tr> <tr> <td><a name='SkPicture_serialize_2_procs'><code><strong>procs</strong></code></a></td> - <td>incomplete</td> + <td>custom serial data encoders; may be nullptr</td> </tr> </table> ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="30b9f1b310187db6aff720a5d67591e2"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPicture_MakeFromStream'>MakeFromStream</a> <a href='undocumented#SkWStream'>SkWStream</a> <a href='undocumented#SkSerialProcs'>SkSerialProcs</a> --- @@ -440,28 +460,37 @@ incomplete static <a href='undocumented#sk_sp'>sk sp</a><<a href='#SkPicture'>SkPicture</a>> <a href='#SkPicture_MakePlaceholder'>MakePlaceholder</a>(<a href='SkRect_Reference#SkRect'>SkRect</a> cull) </pre> -Return a placeholder <a href='#SkPicture'>SkPicture</a>. +Returns a placeholder <a href='#SkPicture'>SkPicture</a>. This placeholder does not draw anything itself. It has a distinct <a href='#SkPicture_uniqueID'>uniqueID</a> (just like all <a href='#Picture'>Pictures</a>) and will always be visible to <a href='undocumented#SkSerialProcs'>SkSerialProcs</a>. ### Parameters <table> <tr> <td><a name='SkPicture_MakePlaceholder_cull'><code><strong>cull</strong></code></a></td> - <td>the placeholder's dimensions</td> + <td>placeholder dimensions</td> </tr> </table> ### Return Value -incomplete +placeholder with unique identifier ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="32f84819483a906ede9c5525801845ef"> + +#### Example Output + +~~~~ +id:1 bounds:{10, 40, 80, 110} +id:2 bounds:{10, 40, 80, 110} +~~~~ + +</fiddle-embed></div> ### See Also -incomplete +<a href='#SkPicture_MakeFromStream'>MakeFromStream</a> <a href='#SkPicture_MakeFromData'>MakeFromData</a><sup><a href='#SkPicture_MakeFromData_2'>[2]</a></sup> --- @@ -472,22 +501,22 @@ incomplete virtual int <a href='#SkPicture_approximateOpCount'>approximateOpCount</a>() const = 0 </pre> -Return the approximate number of operations in this picture. This +Returns the approximate number of operations in this picture. This number may be greater or less than the number of <a href='SkCanvas_Reference#SkCanvas'>SkCanvas</a> calls recorded: some calls may be recorded as more than one operation, or some calls may be optimized away. ### Return Value -incomplete +approximate operation count ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="4b3d879118ef770d1f11a23c6493b2c4"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPicture_approximateBytesUsed'>approximateBytesUsed</a> --- @@ -498,19 +527,20 @@ incomplete virtual size_t <a href='#SkPicture_approximateBytesUsed'>approximateBytesUsed</a>() const = 0 </pre> -Returns the approximate byte size of this picture, not including large ref'd objects. +Returns the approximate byte size of <a href='#Picture'>Picture</a>. Does not include large objects +referenced <a href='#Picture'>Picture</a>. ### Return Value -incomplete +approximate size ### Example -<div><fiddle-embed name="882e8e0103048009a25cfc20400492f7"></fiddle-embed></div> +<div><fiddle-embed name="ececbda21218bd732394a305dba393a2"></fiddle-embed></div> ### See Also -incomplete +<a href='#SkPicture_approximateOpCount'>approximateOpCount</a> --- |