我正在尝试放大大图像。为它分配画布元素的CSS zoom属性
zoom(scale: number) {
this.scale = scale;
this.canvas.style.zoom = `${scale * 100}%`;
}
我想将视口相对于图像内容保持在相同位置。因此,缩放前后的视口中心相对于图像位于同一位置。我知道如何计算像素,但是可以将视口移动到X,Y位置。经测试的视口维数为320/640。尝试使用window.scroll(x,y),但它没有移动。尝试了以下所有内容:
// window.scroll(0, 800)
// window.scrollTo(0, 800)
// console.dir(this.container.nativeElement);
// this.container.nativeElement.scrollLeft = 400;
// document.getElementById('canvas').scroll(0, 400)
我的HTML模板:
<div id="container" #container>
<canvas id="canvas"></canvas>
</div>