bogdan_uman
@bogdan_uman
шлЫмазл неукЪ-поцЪ

Как выполнять центрирование изображения при масштабировании?

Как правильно центрировать изображение при масштабировании, а то как-то оно не очень по центру. Скорее всего тут школьный курс геометрии, но что-то никак не могу вспомнить как сделать.



function renderImage(canvas, scale) { 
 const context = canvas.getContext('2d');
 const canvasSize = canvas.clientWidth;
 const centerSize = canvasSize/2;
 canvas.width = canvasSize;
 canvas.height = canvasSize;
   
 const scaleKoef = (10 + scale) / 10;
 const scaleSize = canvasSize / scaleKoef;
 
  // Центрируем изображение
 const centerX = (image.width * scaleKoef / 2 - centerSize) ;
 const centerY = (image.height * scaleKoef / 2 - centerSize) ;
 
 context.drawImage(
  image, 
  centerX, centerY, scaleSize, scaleSize,
  0, 0, canvasSize, canvasSize
 );
}
  • Вопрос задан
  • 318 просмотров
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы