Skip to content

Commit 913ac82

Browse files
Create Canvas Rendering.md (#29747)
* Create Canvas Rendering.md * Fix canvas rendering page — rename to .mdx, add frontmatter, move image to local assets, fix headings and formatting * Restore PM's performance statistics (10x, 30fps) * Remove sidebar order — let product owner decide placement --------- Co-authored-by: Cody Anthony <canthony@cloudflare.com>
1 parent 71b5852 commit 913ac82

2 files changed

Lines changed: 79 additions & 0 deletions

File tree

62 KB
Loading
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
---
2+
pcx_content_type: concept
3+
title: Canvas rendering
4+
sidebar: {}
5+
---
6+
7+
import { Details } from "~/components";
8+
9+
Canvas rendering is a Browser Isolation capability that optimizes performance for web applications using the HTML5 Canvas API. It sends vector draw commands to the client instead of rasterized bitmaps, reducing bandwidth consumption and improving frame rates for productivity applications.
10+
11+
## How it works
12+
13+
Browser Isolation uses Network Vector Rendering (NVR) to deliver efficient vector commands rather than rendered pixels. However, HTML5 Canvas content previously required server-side rasterization, sending large bitmaps for every frame.
14+
15+
Canvas rendering extends NVR to Canvas-based applications by:
16+
17+
1. Capturing draw commands made to the HTML5 Canvas element.
18+
2. Converting and sending those commands to the client as NVR instructions.
19+
3. Rendering the Canvas content on the client onto an offscreen texture.
20+
4. Compositing the texture into the final document output.
21+
22+
## Supported applications
23+
24+
Canvas rendering improves performance for productivity applications that rely on the HTML5 Canvas API:
25+
26+
| Application | Improvement |
27+
| ------------------------------------ | ------------------------------------------ |
28+
| Microsoft Word | 10x bandwidth reduction |
29+
| Microsoft Excel | Smooth scrolling and data entry |
30+
| Microsoft PowerPoint | Fluid animations |
31+
| Google Sheets | Consistent 30fps rendering |
32+
| Google Maps | Smooth panning and zooming |
33+
| Web-based terminals and AI notebooks | Fast and responsive text input and display |
34+
35+
## Limitations
36+
37+
Canvas rendering supports 2D Canvas contexts only. The following are not supported:
38+
39+
- WebGL and WebGPU contexts
40+
- 3D graphics applications
41+
- Advanced Canvas features requiring GPU acceleration
42+
43+
## Enable or disable canvas rendering
44+
45+
Canvas rendering is on by default for all Browser Isolation customers. No configuration is required.
46+
47+
![Canvas rendering context menu option](~/assets/images/cloudflare-one/remote-browser-isolation/canvas-rendering-context-menu.png)
48+
49+
### Disable canvas rendering for the current session
50+
51+
1. Right-click on the background of the isolated webpage.
52+
2. Select **Disable Canvas Rendering** from the context menu.
53+
54+
### Re-enable canvas rendering
55+
56+
1. Right-click on the background of the isolated webpage.
57+
2. Select **Enable Canvas Rendering** from the context menu.
58+
59+
## Troubleshooting
60+
61+
<Details header="Canvas content renders slowly">
62+
63+
If Canvas-based applications appear choppy or consume excessive bandwidth:
64+
65+
1. Verify canvas rendering is on by right-clicking the page background.
66+
2. Check that the context menu shows **Disable Canvas Rendering** (indicating it is active).
67+
3. If the issue persists, open a support case and provide the Ray ID from the error page.
68+
69+
</Details>
70+
71+
<Details header="Graphical glitches or missing elements">
72+
73+
If Canvas content displays incorrectly after reconnecting from a network interruption:
74+
75+
1. Refresh the isolated page.
76+
2. If the issue persists, select **Disable Canvas Rendering** from the right-click menu.
77+
3. Re-enable canvas rendering after the page reloads.
78+
79+
</Details>

0 commit comments

Comments
 (0)