Таким образом, у меня есть требование, где у меня есть «display-div», который находится в конкретном размере пикселя. Тогда у меня будет изображение, над которым «область для отображения» помечена как прямоугольник. Мне нужно придумать точные координаты пикселей для верхнего левого и нижнего правого и значение увеличения / уменьшения, которые необходимы для того, чтобы область отображалась внутри «display-div» как можно лучше.
например, давайте предположим:
The display-div dimensions are: 100px(width) x 200px(height)
And I have an image that is 2000px(width) x 1000px(height)
Region-to-display is from (1000,500)px (top left of image)
to (1200,900)px (bottom right of image)
Итак, я знаю, что width to display is 200px and height to display is 400px
, тем не мение the display-div is 100px x 200px
, Так что мне нужно уменьшить масштаб.
Следовательно, мне нужно будет передать данные, такие как:
top left = (1000,500)px
bottom right= (1200,900)px
zoom:0.5 (since we need to zoom out)[Firstly is 0.5 even correct??]
Теперь моя проблема заключается в том, что мне нужно формализовать это в некую «формулу», которую я могу использовать для любого набора данных, при условии, что я даю координаты display-div и region-to-display, предоставит мне коэффициент масштабирования и пиксели для верхних левых и нижних правых координат.
Также обратите внимание, что рассчитанные координаты области для отображения не обязательно должны быть такими же, как отмеченные. В предыдущем примере это то же самое, потому что соотношение было правильным. Однако иногда масштаб может быть, скажем, 1,3 или аналогичные десятичные значения, в этом случае пиксели области для отображения могут отличаться.
Любые указатели о том, как этого добиться?
Задача ещё не решена.
Других решений пока нет …