OffscreenCanvas: метод convertToBlob()
Базовая версия 2023 *
Новое
С марта 2023 года эта функция работает на последних версиях устройств и браузеров. Эта функция может не работать на старых устройствах или браузерах.
* Некоторые части этой функции могут иметь различный уровень поддержки.
Примечание: Эта функция доступна в Потоках Web Workers.
Метод OffscreenCanvas.convertToBlob() создаёт объект Blob, представляющий изображение, содержащееся в холсте.
Можно указать требуемый формат файла и качество изображения. Если формат файла не указан или заданный формат не поддерживается, данные будут экспортированы в формате image/png. Браузеры должны поддерживать image/png; многие будут поддерживать дополнительные форматы, включая image/jpeg и image/webp.
Созданное изображение будет иметь разрешение 96 dpi для форматов файлов, которые поддерживают метаданные о разрешении кодирования.
Синтаксис
convertToBlob() convertToBlob(options)
Параметры
optionsНеобязательно-
Объект со следующими свойствами:
type-
Строка, указывающая формат изображения. По умолчанию тип
image/png; этот формат изображения также будет использован, если указанный тип не поддерживается. quality-
Numberмежду0и1, указывающий качество изображения при создании изображений с использованием форматов файлов, поддерживающих сжатие с потерями (таких какimage/jpegилиimage/webp). Агент пользователя использует значение по умолчанию, если этот параметр не указан или число находится вне допустимого диапазона.
Возвращаемое значение
Исключения
Обещание может быть отклонено со следующими исключениями:
-
InvalidStateErrorDOMException -
OffscreenCanvasне отделен; другими словами, он по-прежнему связан с DOM, а не с текущим потоком. -
SecurityErrorDOMException -
Режим контекста холста 2d, а растровый бит не является чисто исходным; по крайней мере, некоторые его содержимое загружены с сайта, отличного от сайта, с которого загружен сам документ.
-
IndexSizeErrorDOMException -
В растровом бите холста нет пикселей (горизонтальная или вертикальная размерность равна нулю).
-
EncodingErrorDOMException -
Файл BLOB не смог быть создан из-за ошибки кодирования.
Примеры
const offscreen = new OffscreenCanvas(256, 256);
const gl = offscreen.getContext("webgl");
// Perform some drawing using the gl context
offscreen.convertToBlob().then((blob) => console.log(blob));
// Blob { size: 334, type: "image/png" }
Спецификации
| Спецификация |
|---|
| HTML # dom-offscreencanvas-converttoblob-dev |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
convertToBlob |
69 | 79 | 105 | 56 | 16.4 | 69 | 105 | 48 | 16.4 | 10.0 | 69 |
option_type_parameter_webp |
69 | 79 | 105 | 56 | Нет | 69 | 105 | 48 | Нет | 10.0 | Нет |
См. также
- Интерфейс, определяющий этот метод,
OffscreenCanvas.
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/OffscreenCanvas/convertToBlob