HTML Canvas масштабировать до курсора, когда он уже частично увеличен - PullRequest
0 голосов
/ 01 октября 2019

Я прочитал каждый SO-ответ, который смог найти, но не могу найти простого решения JavaScript для этой проблемы. Мой вопрос такой же, как вопрос в этом посте , но этот вопрос основан на библиотеке, и я использую vanilla JS.

В основном я могу использовать:

ctx.setTransform(1 ,0 ,0, 1, 0, 0)
ctx.translate(x, y)
ctx.scale(factor, factor)
ctx.translate(-x, -y)

Но если изображение частично увеличено, и я перемещаю мышь, то продолжаю масштабирование, изображение скачет.

Мне нужно рассчитать смещение, если я увеличен, но я в тупике. Как я могу частично увеличить масштаб, переместить мышь и плавно перемещаться вокруг новой позиции?

...