O método CanvasRenderingContext2D.rect() da Canvas 2D API cria um path (trajeto) para um retângulo na posição (x, y), cujo tamanho é determinado pelo width (largura) e height (altura). Esses quatro pontos estão conectados por linhas retas e o sub-path (sub-trajeto) é marcado como fechado, para que você possa fill (preencher) ou stroke (contornar) o retângulo.

Sintaxe

void ctx.rect(x, y, width, height);

Parameters

x
O valor da coordenada x que indica ponto de início (superior esquerdo) do retângulo.
y
O valor da coordenada y que indica ponto de início (superior esquerdo) do retângulo.
width
A largura do retângulo.
height
A altura do retângulo.

Exemplos

Usando o método rect

Isto é somente um simples fragmentode código que usa o método rect para criar um path. Para verdadeiramente desenhar um path no canvas, você pode usar o método fill() ou o stroke(). Veja também os métodos fillRect() e strokeRect(), que podem fazer isto em um único passo.

HTML

<canvas id="canvas"></canvas>

JavaScript

var canvas = document.getElementById('canvas');
var ctx = canvas.getContext('2d');
ctx.rect(10, 10, 100, 100);
ctx.fill();

Edite o código abaixo e veja as alterações instantâneas no canvas:

Playable code
<canvas id="canvas" width="400" height="200" class="playable-canvas"></canvas>
<div class="playable-buttons">
  <input id="edit" type="button" value="Edit" />
  <input id="reset" type="button" value="Reset" />
</div>
<textarea id="code" class="playable-code">
ctx.rect(10, 10, 100, 100);
ctx.fill();</textarea>
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
var textarea = document.getElementById("code");
var reset = document.getElementById("reset");
var edit = document.getElementById("edit");
var code = textarea.value;

function drawCanvas() {
  ctx.clearRect(0, 0, canvas.width, canvas.height);
  eval(textarea.value);
}

reset.addEventListener("click", function() {
  textarea.value = code;
  drawCanvas();
});

edit.addEventListener("click", function() {
  textarea.focus();
})

textarea.addEventListener("input", drawCanvas);
window.addEventListener("load", drawCanvas);

Especificações

Especificação Estado Comentário
HTML Living Standard
The definition of 'CanvasRenderingContext2D.rect' in that specification.
Padrão em tempo real  

Compatibilidade em Navegadores

Estamos convertendo nossos dados de compatibilidade para o formato JSON. Esta tabela de compatibilidade ainda usa o formato antigo, pois ainda não convertemos os dados que ela contém. Descubra como você pode ajudar!

Característica Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
Característica Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Veja também

Etiquetas do documento e colaboradores

Colaboradores desta página: MarceloBRN
Última atualização por: MarceloBRN,