(zoom)
| 918 | } |
| 919 | |
| 920 | applyZoom(zoom) { |
| 921 | const zoomSlider = document.getElementById('previewZoom'); |
| 922 | const zoomValue = document.getElementById('zoomValue'); |
| 923 | |
| 924 | if (zoomSlider) { |
| 925 | zoomSlider.value = zoom; |
| 926 | } |
| 927 | |
| 928 | if (zoomValue) { |
| 929 | zoomValue.textContent = `${zoom}%`; |
| 930 | } |
| 931 | |
| 932 | if (this.processedCanvas) { |
| 933 | const container = this.processedCanvas.parentElement; |
| 934 | const scale = zoom / 100; |
| 935 | |
| 936 | this.processedCanvas.style.transform = `scale(${scale})`; |
| 937 | this.processedCanvas.style.imageRendering = 'pixelated'; |
| 938 | this.processedCanvas.style.transformOrigin = 'center center'; |
| 939 | |
| 940 | // 更新容器样式以适应缩放 |
| 941 | container.style.overflow = zoom > 100 ? 'auto' : 'visible'; |
| 942 | } |
| 943 | } |
| 944 | |
| 945 | handleZoomChange(e) { |
| 946 | const zoom = parseInt(e.target.value); |
no outgoing calls
no test coverage detected