Spec-Zone.ru › Web APIs

CanvasRenderingContext2D: свойство imageSmoothingEnabled

Базовая реализация Широко поддерживается

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Свойство imageSmoothingEnabled интерфейса CanvasRenderingContext2D, являющегося частью API Canvas API, определяет, будут ли масштабируемые изображения сглаживаться (true, по умолчанию) или нет (false). При получении значения свойства imageSmoothingEnabled, возвращается последнее заданное значение.

Это свойство полезно для игр и других приложений, использующих пиксель-арт. При увеличении изображений алгоритм по умолчанию для масштабирования будет размывать пиксели. Установите это свойство в значение false, чтобы сохранить четкость пикселей.

Примечание: Вы можете настроить качество сглаживания с помощью свойства imageSmoothingQuality.

Значение

Булево значение, указывающее, нужно ли сглаживать масштабируемые изображения. Значение по умолчанию — true.

Примеры

Отключение сглаживания изображения

В этом примере показано сравнение трёх изображений. Первое изображение отображается в натуральную величину, второе — в масштабе 3x, со включённым сглаживанием, и третье — в масштабе 3x, но со сглаживанием отключено.

HTML

<canvas id="canvas" width="460" height="210"></canvas>

JavaScript

const canvas = document.getElementById("canvas");

const ctx = canvas.getContext("2d");
ctx.font = "16px sans-serif";
ctx.textAlign = "center";

const img = new Image();
img.src =
  "https://interactive-examples.mdn.mozilla.net/media/examples/star.png";
img.onload = () => {
  const w = img.width,
    h = img.height;

  ctx.fillText("Source", w * 0.5, 20);
  ctx.drawImage(img, 0, 24, w, h);

  ctx.fillText("Smoothing = TRUE", w * 2.5, 20);
  ctx.imageSmoothingEnabled = true;
  ctx.drawImage(img, w, 24, w * 3, h * 3);

  ctx.fillText("Smoothing = FALSE", w * 5.5, 20);
  ctx.imageSmoothingEnabled = false;
  ctx.drawImage(img, w * 4, 24, w * 3, h * 3);
};

Результат

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

Спецификация
HTML
# dom-context-2d-imagesmoothingenabled-dev

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
imageSmoothingEnabled 30 15 51 17 9.1 30 51 18 9.3 2.0 4.4

См. также

  • Интерфейс, определяющий это свойство: CanvasRenderingContext2D
  • CanvasRenderingContext2D.imageSmoothingQuality
  • image-rendering

© 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/CanvasRenderingContext2D/imageSmoothingEnabled

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API