--- title: Canvas slug: Web/API/Canvas_API tags: - API - Canvas - Обзор - Справка translation_of: Web/API/Canvas_API ---
{{CanvasSidebar}}

Элемент {{HTMLElement("canvas")}}, добавленный в HTML5, предназначен для создания графики с помощью JavaScript. Например, его используют для рисования графиков, создания фотокомпозиций, анимаций и даже обработки и рендеринга видео в реальном времени.

«Canvas»  в переводе с английского означает «холст».

Приложения от Mozilla поддерживают <canvas> начиная с Gecko 1.8 (т.е. с Firefox 1.5). Этот элемент первоначально был представлен Apple для OS X Dashboard и Safari. Internet Explorer поддерживает <canvas> начиная с 9 версии; для более ранних версий IE поддержку для <canvas> можно добавить с помощью скрипта из проекта Google's Explorer Canvas. Google Chrome и Opera 9 также поддерживают <canvas>.

Элемент <canvas> также используется технологией WebGL для отрисовки аппаратно-ускоренной 3D-графики на веб-страницах.

Пример

Это простой пример использования {{domxref("CanvasRenderingContext2D.fillRect()")}} метода.

HTML

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

JavaScript

var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");

ctx.fillStyle = "green";
ctx.fillRect(10, 10, 100, 100);

Отредактируйте код ниже, чтобы увидеть результат на холсте.

{{ EmbedLiveSample('Playable_code', 700, 360) }}

Справочные материалы

Интерфейсы, связанные с WebGLRenderingContext, ссылаются на WebGL.

Руководства

Canvas tutorial
Подробный учебник, охватывающий как основное использование <canvas>, так и его расширенные функции.
Фрагменты кода: Canvas
Некоторые фрагменты кода, ориентированные на разработчиков, с использованием <canvas>.
Demo: A basic ray-caster
Демо анимации трассировки-лучей используя canvas.
Drawing DOM objects into a canvas
Как рисовать DOM контент, таких как HTML элементы, в canvas.
Manipulating video using canvas
Объединяет {{HTMLElement("video")}} и {{HTMLElement("canvas")}} для манипулирования видео данных в реальном времени.

Ресурсы

Основное

Библиотеки

Спецификации

Спецификация Статус Комментарий
{{SpecName('HTML WHATWG', "the-canvas-element.html", "Canvas")}} {{Spec2('HTML WHATWG')}}  

См.также