diff --git a/sdk/fidl/fuchsia.ui.composition/README.md b/sdk/fidl/fuchsia.ui.composition/README.md
index aceb40b..9e67e93 100644
--- a/sdk/fidl/fuchsia.ui.composition/README.md
+++ b/sdk/fidl/fuchsia.ui.composition/README.md
@@ -880,7 +880,7 @@
         </tr></table>
 
 ## Screenshot {#Screenshot}
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=76)*
+*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=41)*
 
 <p>This protocol provides a low-level Screenshot API for clients to use.
 Screenshot clients should familiarize themselves with the sysmem and
@@ -918,71 +918,6 @@
             </td>
         </tr></table>
 
-### RemoveImage {#Screenshot.RemoveImage}
-
-<p>Following a successful call to <a class='link' href='#CreateImage'>CreateImage</a>, clients can call
-RemoveImage to delete the image and its associated metadata.</p>
-
-
-#### Request {#Screenshot.RemoveImage_Request}
-<table>
-    <tr><th>Name</th><th>Type</th></tr>
-    <tr>
-            <td><code>args</code></td>
-            <td>
-                <code><a class='link' href='#RemoveImageArgs'>RemoveImageArgs</a></code>
-            </td>
-        </tr></table>
-
-
-#### Response {#Screenshot.RemoveImage_Response}
-<table>
-    <tr><th>Name</th><th>Type</th></tr>
-    <tr>
-            <td><code>result</code></td>
-            <td>
-                <code><a class='link' href='#Screenshot_RemoveImage_Result'>Screenshot_RemoveImage_Result</a></code>
-            </td>
-        </tr></table>
-
-### TakeScreenshot {#Screenshot.TakeScreenshot}
-
-<p>Following a successful call to <a class='link' href='#CreateImage'>CreateImage</a>, clients can call
-TakeScreenshot giving that same image ID. Clients are responsible for
-determining the rotation of the display, and applying the corrective
-rotation.</p>
-<p>For instance, if the display is mounted 90 degrees clockwise (the &quot;top&quot;
-is on the right, when looking at the display), then the client should specify a
-270 degree rotation to account for it. Similarly, the clients are
-responsible for specifying a buffer big enough for the rotated image. If
-the buffer is too small, a best effort attempt will be made to render
-the image.</p>
-<p>Clients may wait on the zx::event they pass for successful completion of
-the screenshot. It is not guaranteed that the screenshot will be
-completed by the time this function returns.</p>
-
-
-#### Request {#Screenshot.TakeScreenshot_Request}
-<table>
-    <tr><th>Name</th><th>Type</th></tr>
-    <tr>
-            <td><code>args</code></td>
-            <td>
-                <code><a class='link' href='#TakeScreenshotArgs'>TakeScreenshotArgs</a></code>
-            </td>
-        </tr></table>
-
-
-#### Response {#Screenshot.TakeScreenshot_Response}
-<table>
-    <tr><th>Name</th><th>Type</th></tr>
-    <tr>
-            <td><code>result</code></td>
-            <td>
-                <code><a class='link' href='#Screenshot_TakeScreenshot_Result'>Screenshot_TakeScreenshot_Result</a></code>
-            </td>
-        </tr></table>
-
 
 
 ## **STRUCTS**
@@ -1055,23 +990,7 @@
 </table>
 
 ### Screenshot_CreateImage_Response  {#Screenshot_CreateImage_Response data-text="Screenshot_CreateImage_Response"}
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=86)*
-
-
-
-
-&lt;EMPTY&gt;
-
-### Screenshot_RemoveImage_Response  {#Screenshot_RemoveImage_Response data-text="Screenshot_RemoveImage_Response"}
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=92)*
-
-
-
-
-&lt;EMPTY&gt;
-
-### Screenshot_TakeScreenshot_Response  {#Screenshot_TakeScreenshot_Response data-text="Screenshot_TakeScreenshot_Response"}
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=111)*
+*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=51)*
 
 
 
@@ -1121,6 +1040,30 @@
 </td>
         </tr></table>
 
+### CreateImageError [strict](/fuchsia-src/reference/fidl/language/language#strict-vs-flexible){:.fidl-attribute} {#CreateImageError}
+Type: <code>uint32</code>
+
+*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=9)*
+
+<p>The enum of possible errors following a <a class='link' href='#CreateImage'>CreateImage</a> call.</p>
+
+
+
+<table>
+    <tr><th>Name</th><th>Value</th><th>Description</th></tr><tr id="CreateImageError.MISSING_ARGS">
+            <td><code>MISSING_ARGS</code></td>
+            <td><code>1</code></td>
+            <td><p>One or more arguments are missing in <a class='link' href='#CreateImageArgs'>CreateImageArgs</a>.</p>
+
+</td>
+        </tr><tr id="CreateImageError.BAD_OPERATION">
+            <td><code>BAD_OPERATION</code></td>
+            <td><code>2</code></td>
+            <td><p>A general error occurred in <a class='link' href='#CreateImage'>CreateImage</a>.</p>
+
+</td>
+        </tr></table>
+
 ### FlatlandError [strict](/fuchsia-src/reference/fidl/language/language#strict-vs-flexible){:.fidl-attribute} {#FlatlandError}
 Type: <code>uint32</code>
 
@@ -1252,70 +1195,6 @@
 </td>
         </tr></table>
 
-### Rotation [strict](/fuchsia-src/reference/fidl/language/language#strict-vs-flexible){:.fidl-attribute} {#Rotation}
-Type: <code>uint32</code>
-
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=30)*
-
-<p>The rotation to be applied to the image.</p>
-<p>If a given display is rotated, say, 270 degrees according to its
-<code>display_info</code> config file, then applying the equal and opposite rotation,
-<a class='link' href='#CW_270_DEGREES'>CW_270_DEGREES</a>, should cancel the display rotation leading to a
-correctly rendered screenshot.</p>
-<p>Clients should allocate an image according to the final dimensions they
-ultimately want to use, i.e. after rotation. These would be identical
-to the <code>width</code> and <code>height</code> values found in the <code>display_info</code> config file.</p>
-
-
-
-<table>
-    <tr><th>Name</th><th>Value</th><th>Description</th></tr><tr id="Rotation.CW_0_DEGREES">
-            <td><code>CW_0_DEGREES</code></td>
-            <td><code>0</code></td>
-            <td>
-</td>
-        </tr><tr id="Rotation.CW_90_DEGREES">
-            <td><code>CW_90_DEGREES</code></td>
-            <td><code>1</code></td>
-            <td>
-</td>
-        </tr><tr id="Rotation.CW_180_DEGREES">
-            <td><code>CW_180_DEGREES</code></td>
-            <td><code>2</code></td>
-            <td>
-</td>
-        </tr><tr id="Rotation.CW_270_DEGREES">
-            <td><code>CW_270_DEGREES</code></td>
-            <td><code>3</code></td>
-            <td>
-</td>
-        </tr></table>
-
-### ScreenshotError [strict](/fuchsia-src/reference/fidl/language/language#strict-vs-flexible){:.fidl-attribute} {#ScreenshotError}
-Type: <code>uint32</code>
-
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=13)*
-
-<p>The enum of possible errors following a <a class='link' href='#CreateImage'>CreateImage</a> or
-<a class='link' href='#TakeScreenshot'>TakeScreenshot</a> call.</p>
-
-
-
-<table>
-    <tr><th>Name</th><th>Value</th><th>Description</th></tr><tr id="ScreenshotError.MISSING_ARGS">
-            <td><code>MISSING_ARGS</code></td>
-            <td><code>1</code></td>
-            <td><p>One or more arguments are missing in the table argument.</p>
-
-</td>
-        </tr><tr id="ScreenshotError.BAD_OPERATION">
-            <td><code>BAD_OPERATION</code></td>
-            <td><code>2</code></td>
-            <td><p>A general error occurred during the method call.</p>
-
-</td>
-        </tr></table>
-
 
 
 ## **TABLES**
@@ -1323,7 +1202,7 @@
 ### CreateImageArgs [resource](/fuchsia-src/reference/fidl/language/language.md#value-vs-resource){:.fidl-attribute} {#CreateImageArgs data-text="CreateImageArgs"}
 
 
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=39)*
+*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=18)*
 
 <p>The table of arguments passed into the <a class='link' href='#CreateImage'>CreateImage</a> call. Note that all
 fields are necessary.</p>
@@ -1363,13 +1242,24 @@
 BufferCollection.</p>
 
 </td>
-        </tr><tr id="CreateImageArgs.size">
+        </tr><tr id="CreateImageArgs.image_width">
             <td>4</td>
-            <td><code>size</code></td>
+            <td><code>image_width</code></td>
             <td>
-                <code><a class='link' href='../fuchsia.math/'>fuchsia.math</a>/<a class='link' href='../fuchsia.math/#SizeU'>SizeU</a></code>
+                <code>uint32</code>
             </td>
-            <td><p>The size of the image in pixels.</p>
+            <td><p>image_width must be valid and in the range of constraints of the specified
+BufferCollection.</p>
+
+</td>
+        </tr><tr id="CreateImageArgs.image_height">
+            <td>5</td>
+            <td><code>image_height</code></td>
+            <td>
+                <code>uint32</code>
+            </td>
+            <td><p>image_height must be valid and in the range of constraints of the specified
+BufferCollection.</p>
 
 </td>
         </tr></table>
@@ -1600,67 +1490,6 @@
 </td>
         </tr></table>
 
-### RemoveImageArgs [resource](/fuchsia-src/reference/fidl/language/language.md#value-vs-resource){:.fidl-attribute} {#RemoveImageArgs data-text="RemoveImageArgs"}
-
-
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=54)*
-
-
-
-
-<table>
-    <tr><th>Ordinal</th><th>Name</th><th>Type</th><th>Description</th></tr>
-    <tr id="RemoveImageArgs.image_id">
-            <td>1</td>
-            <td><code>image_id</code></td>
-            <td>
-                <code><a class='link' href='#ImageId'>ImageId</a></code>
-            </td>
-            <td><p>The image ID for the image to be removed.</p>
-
-</td>
-        </tr></table>
-
-### TakeScreenshotArgs [resource](/fuchsia-src/reference/fidl/language/language.md#value-vs-resource){:.fidl-attribute} {#TakeScreenshotArgs data-text="TakeScreenshotArgs"}
-
-
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=59)*
-
-
-
-
-<table>
-    <tr><th>Ordinal</th><th>Name</th><th>Type</th><th>Description</th></tr>
-    <tr id="TakeScreenshotArgs.image_id">
-            <td>1</td>
-            <td><code>image_id</code></td>
-            <td>
-                <code><a class='link' href='#ImageId'>ImageId</a></code>
-            </td>
-            <td><p>The ID of the image previously allocated with <a class='link' href='#CreateImage'>CreateImage</a>.</p>
-
-</td>
-        </tr><tr id="TakeScreenshotArgs.rotation">
-            <td>2</td>
-            <td><code>rotation</code></td>
-            <td>
-                <code><a class='link' href='#Rotation'>Rotation</a></code>
-            </td>
-            <td><p>The rotation to be applied to the image. Not necessary; default value is
-no rotation.</p>
-
-</td>
-        </tr><tr id="TakeScreenshotArgs.event">
-            <td>3</td>
-            <td><code>event</code></td>
-            <td>
-                <code>handle&lt;event&gt;</code>
-            </td>
-            <td><p>The event to fire upon successful completion.</p>
-
-</td>
-        </tr></table>
-
 ### ViewBoundProtocols [resource](/fuchsia-src/reference/fidl/language/language.md#value-vs-resource){:.fidl-attribute} {#ViewBoundProtocols data-text="ViewBoundProtocols"}
 
 
@@ -1768,7 +1597,7 @@
         </tr></table>
 
 ### Screenshot_CreateImage_Result [strict](/fuchsia-src/reference/fidl/language/language#strict-vs-flexible){:.fidl-attribute}  {#Screenshot_CreateImage_Result data-text="Screenshot_CreateImage_Result"}
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=86)*
+*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=51)*
 
 
 
@@ -1783,51 +1612,7 @@
         </tr><tr id="Screenshot_CreateImage_Result.err">
             <td><code>err</code></td>
             <td>
-                <code><a class='link' href='#ScreenshotError'>ScreenshotError</a></code>
-            </td>
-            <td>
-</td>
-        </tr></table>
-
-### Screenshot_RemoveImage_Result [strict](/fuchsia-src/reference/fidl/language/language#strict-vs-flexible){:.fidl-attribute}  {#Screenshot_RemoveImage_Result data-text="Screenshot_RemoveImage_Result"}
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=92)*
-
-
-
-<table>
-    <tr><th>Name</th><th>Type</th><th>Description</th></tr><tr id="Screenshot_RemoveImage_Result.response">
-            <td><code>response</code></td>
-            <td>
-                <code><a class='link' href='#Screenshot_RemoveImage_Response'>Screenshot_RemoveImage_Response</a></code>
-            </td>
-            <td>
-</td>
-        </tr><tr id="Screenshot_RemoveImage_Result.err">
-            <td><code>err</code></td>
-            <td>
-                <code><a class='link' href='#ScreenshotError'>ScreenshotError</a></code>
-            </td>
-            <td>
-</td>
-        </tr></table>
-
-### Screenshot_TakeScreenshot_Result [strict](/fuchsia-src/reference/fidl/language/language#strict-vs-flexible){:.fidl-attribute}  {#Screenshot_TakeScreenshot_Result data-text="Screenshot_TakeScreenshot_Result"}
-*Defined in [fuchsia.ui.composition/screenshot.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=111)*
-
-
-
-<table>
-    <tr><th>Name</th><th>Type</th><th>Description</th></tr><tr id="Screenshot_TakeScreenshot_Result.response">
-            <td><code>response</code></td>
-            <td>
-                <code><a class='link' href='#Screenshot_TakeScreenshot_Response'>Screenshot_TakeScreenshot_Response</a></code>
-            </td>
-            <td>
-</td>
-        </tr><tr id="Screenshot_TakeScreenshot_Result.err">
-            <td><code>err</code></td>
-            <td>
-                <code><a class='link' href='#ScreenshotError'>ScreenshotError</a></code>
+                <code><a class='link' href='#CreateImageError'>CreateImageError</a></code>
             </td>
             <td>
 </td>
@@ -1866,7 +1651,7 @@
 
 </td>
         </tr><tr id="ImageId">
-            <td><a href="https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=9">ImageId</a></td>
+            <td><a href="https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.composition/screenshot.fidl;l=6">ImageId</a></td>
             <td>
                 <code>uint64</code></td>
             <td>
