canvas | метод toDataURL(type, quality)

canvas | метод toDataURL(type, quality)

Для веб-разработчиков (не нормативно)

url = canvas.toDataURL([ type [, quality ] ])

Возвращает data: URL изображения на холсте.

Первый аргумент, если он указан, управляет типом возвращаемого изображения (например, PNG или JPEG). По умолчанию это «image/png»; этот тип также используется, если данный тип не поддерживается. Второй аргумент применяется, если тип представляет собой формат изображения, который поддерживает переменное качество (например, «image/jpeg»), и представляет собой число в диапазоне от 0.0 до 1.0 включительно, указывающее желаемый уровень качества для результирующего изображения.

При попытке использовать типы, отличные от «image/png», авторы могут проверить, действительно ли изображение было возвращено в запрошенном формате, проверив, начинается ли возвращаемая строка с одной из точных строк «data:image/png,» или «data:image/png;«. Если это так, то это изображение PNG, и, следовательно, запрошенный тип не поддерживался. (Единственное исключение из этого — если холст не имеет высоты или ширины, и в этом случае результатом может быть просто «data:,».)

 

Метод toDataURL(typequality) при вызове должен выполнить следующие шаги:

1. Если для флага очистки источника растрового изображения этого элемента холста canvas установлено значение false, генерируется исключение DOMException «SecurityError».
2. Если в растровом изображении этого элемента холста canvas нет пикселей (т.е. либо его горизонтальный размер, либо его вертикальный размер равен нулю), то верните строку «data:,». (Это самый короткий data: URL; он представляет собой пустую строку в "text/plain" ресурсе.)
3. Пусть файл file будет сериализацией растрового изображения этого элемента холста canvas в виде файла, передавая тип type и качество quality, если они указаны.
4. Если файл file является null, верните «data:,».
5. Вернуть data: URL, представляющий файл file. [RFC2397]

 

Информационные ссылки

Стандарт HTML — Раздел «The toDataURL(type, quality) method» — https://html.spec.whatwg.org/multipage/canvas.html#dom-canvas-todataurl