--- title: HTMLCanvasElement slug: Web/API/HTMLCanvasElement tags: - API - Canvas - HTML DOM - Interfaccia - Riferimenti translation_of: Web/API/HTMLCanvasElement ---
{{APIRef("Canvas API")}}
L'interfaccia HTMLCanvasElement fornisce proprietà e metodi per manipolare il layout e la presentazione degli elementi del canvas. L'interfaccia HTMLCanvasElement eredita anche le proprietà ed i metodi della interfaccia {{domxref("HTMLElement")}}.

 

Proprietà

Eredita proprietà dalla interfaccia genitore, {{domxref("HTMLElement")}}.

{{domxref("HTMLCanvasElement.height")}}
Intero positivo che rispecchia l'attributo dell'elemento HTML {{htmlattrxref("height", "canvas")}} interpretato in unità pixel CSS. Quando l'attributo non è specificato, o se è impostato ad un valore non valido, come un numero negativo, è usato il valore di default 150.
{{domxref("HTMLCanvasElement.mozOpaque")}} {{non-standard_inline}}
Un {{jsxref("Boolean")}} che rispecchia l'attributo HTML {{htmlattrxref("moz-opaque", "canvas")}} dell'elemento {{HTMLElement("canvas")}}. Permette al canvas di sapere se la traslucenza sarà un fattore. Se il canvas sa che non ci sarà traslucenza, la prestazione del dipingere puo' essere ottimizzata.
{{domxref("HTMLCanvasElement.width")}}
Intero positivo che rispecchia l'attributo HTML {{htmlattrxref("width", "canvas")}} dell'elemento {{HTMLElement("canvas")}} interpretato in unità pixel CSS. Quando l'attributo non è specificato, o se è impostato ad un valore non valido, ad esempio negativo, è usato il valore di default 300.

Metodi

Eredita dal proprio genitore, {{domxref("HTMLElement")}}.

{{domxref("HTMLCanvasElement.captureStream()")}} {{experimental_inline}}
Restituisce un oggetto {{domxref("CanvasCaptureMediaStream")}} che è una capture video in tempo reale della superficie del canvas.
{{domxref("HTMLCanvasElement.getContext()")}}
Restituisce un contesto di disegno sul canvas, oppure null se l'identificativo del contesto non ha supporto. Un contesto di disegno permette di disegnare sul canvas. Chiamare getContext con "2d" come parametro restituisce un oggetto {{domxref("CanvasRenderingContext2D")}}, mentre chiamarlo con "experimental-webgl" (o "webgl") restituisce un oggetto {{domxref("WebGLRenderingContext")}}. Questo contesto è disponibile solo su browsers che implementano WebGL.
{{domxref("HTMLCanvasElement.toDataURL()")}}
Restituisce un URL dati contentente una rappresentazione della immagine nel formato specificato dal parametro tipo (il valore di default è png). L'immagine restituita ha una risoluzione di 96dpi.
{{domxref("HTMLCanvasElement.toBlob()")}}
Crea un oggetto {{domxref("Blob")}} che rappresenta l'immagine contenuta nel canvas; questo file puo' essere immagazzinato temporaneamente su disco oppure nella memoria a discrezione dell'agente per l'utente (user agent).
{{domxref("HTMLCanvasElement.transferControlToOffscreen()")}} {{experimental_inline}}
Trasferisce il controllo ad un oggetto {{domxref("OffscreenCanvas")}}, o nella thread principale oppure in una worker.
{{domxref("HTMLCanvasElement.mozGetAsFile()")}} {{non-standard_inline}} {{deprecated_inline}}
Restituisce un oggetto {{domxref("File")}} che rappresenta l'immagine contenuta nel canvas; questo è un file immagazzinato nella memoria, col nome indicato. Se il tipo del file non è specificato, il tipo di default per l'immagine è image/png.

Specifiche

Specifica Status Commento
{{SpecName('Media Capture DOM Elements', '#html-media-element-media-capture-extensions', 'HTMLCanvasElement')}} {{Spec2('Media Capture DOM Elements')}} Aggiunge il metodo captureStream().
{{SpecName('HTML WHATWG', "#the-canvas-element", "HTMLCanvasElement")}} {{Spec2('HTML WHATWG')}} Il metodo getContext() ora restituisce  {{domxref("RenderingContext")}} invece di un oggetto opaco.
Sono stati aggiunti i metodi probablySupportsContext(), setContext() etransferControlToProxy().
{{SpecName('HTML5.1', "scripting-1.html#the-canvas-element", "HTMLCanvasElement")}} {{Spec2('HTML5.1')}}  
{{SpecName('HTML5 W3C', "scripting-1.html#the-canvas-element", "HTMLCanvasElement")}} {{Spec2('HTML5 W3C')}} Definizione iniziale.

Compatibilità coi Browsers

{{CompatibilityTable}}
Funzionalità Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (2D context) 4.0 {{CompatGeckoDesktop('1.9.2')}} 9.0 9.0 [1] 3.1
toBlob() 50 {{CompatGeckoDesktop('19')}} [2] {{CompatUnknown}} {{CompatUnknown}} {{CompatNo}} (bug 71270)
probablySupportsContext(),
setContext(),
transferControlToProxy() {{experimental_inline}}
{{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
mozGetAsFile() {{non-standard_inline}} {{deprecated_inline}} {{CompatNo}} {{CompatGeckoDesktop('2')}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
captureStream() {{experimental_inline}} {{CompatNo}} {{CompatGeckoDesktop('41')}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
transferControlToOffscreen() {{experimental_inline}} {{CompatNo}} {{CompatGeckoDesktop(44)}} [3] {{CompatNo}} {{CompatNo}} {{CompatNo}}
Funzionalità Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (2D context) 2.1 {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatUnknown}} 10.0 [1] 3.2
webgl context {{CompatUnknown}} {{CompatUnknown}} {{CompatVersionUnknown}} as experimental-webgl {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}
toBlob() {{CompatNo}} (bug 67587) 50 {{CompatGeckoMobile('18')}} [2] {{CompatUnknown}} {{CompatUnknown}} {{CompatNo}} (bug 71270)
probablySupportsContext(),
setContext(),
transferControlToProxy() {{experimental_inline}}
{{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
mozGetAsFile() {{non-standard_inline}} {{deprecated_inline}} {{CompatNo}} {{CompatNo}} {{CompatGeckoMobile('2')}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
captureStream() {{experimental_inline}} {{CompatNo}} {{CompatNo}} {{CompatGeckoMobile('41')}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
transferControlToOffscreen() {{experimental_inline}} {{CompatNo}} {{CompatNo}} {{CompatGeckoMobile(44)}} [3] {{CompatNo}} {{CompatNo}} {{CompatNo}}

[1] Supporto parziale in Opera Mini 5.0 e successivi.

[2] Il supporto per il terzo parametro, è stato aggiunto solo con Gecko 25: quando viene usato col tipo "image/jpeg," questo argomento specifica la qualità dell'immagine.

[3] Da questa funzionalità dipende una impostazione di preferenza di funzionalità. Imposta come true gfx.offscreencanvas.enabled in about:config .

Vedi anche: