From cd2c56c5109b9bfd58e51b0a7823c501bfa17b10 Mon Sep 17 00:00:00 2001
From: wangxiaoshuang <825034831@qq.com>
Date: Wed, 6 May 2026 13:21:49 +0800
Subject: [PATCH] =?UTF-8?q?=E9=80=82=E5=BA=94=E7=AA=97=E5=8F=A3=E8=B0=83?=
=?UTF-8?q?=E6=95=B4=E5=90=8E=EF=BC=8C=E5=BD=B1=E5=83=8F=E9=A1=B5=E6=95=B0?=
=?UTF-8?q?=E5=BA=94=E8=AF=A5=E4=B8=8D=E5=8F=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../reading/dicoms3D/components/MPRViewport.vue | 12 +++++++-----
.../reading/dicoms3D/components/VolumeViewport.vue | 9 ++++++---
2 files changed, 13 insertions(+), 8 deletions(-)
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/MPRViewport.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/MPRViewport.vue
index 0caaa393..75413209 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/MPRViewport.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/MPRViewport.vue
@@ -41,10 +41,10 @@
Location: {{
`${Number(imageInfo.location).toFixed(digitPlaces)} mm`
- }}
+ }}
Slice Thickness: {{
`${Number(imageInfo.sliceThickness).toFixed(digitPlaces)} mm`
- }}
+ }}
WW/WL: {{ imageInfo.wwwc }}
@@ -564,17 +564,18 @@ export default {
const renderingEngine = getRenderingEngine(this.renderingEngineId)
const viewport = renderingEngine.getViewport(this.viewportId)
if (!viewport) return
-
+ let index = this.series.SliceIndex
if (forceFitToWindow) {
viewport.resetCamera({ resetPan: true, resetZoom: true, resetToCenter: true })
viewport.render()
+ this.setFullScreen(index)
return
}
viewport.resetCamera({ resetPan: true, resetZoom: true, resetToCenter: true })
const canvas = viewport.getCanvas() || this.element.querySelector('canvas')
const imageData = viewport.getImageData()?.imageData
- const dimensions = imageData?.getDimensions?.()
+ const dimensions = imageData?.getDimensions()
const imageWidth = dimensions?.[0]
const imageHeight = dimensions?.[1]
const canvasWidth = canvas?.clientWidth
@@ -582,16 +583,17 @@ export default {
if (!imageWidth || !imageHeight || !canvasWidth || !canvasHeight) {
viewport.render()
+ this.setFullScreen(index)
return
}
const fitScale = Math.min(canvasWidth / imageWidth, canvasHeight / imageHeight)
if (fitScale > 0) {
- // zoom=1 通常是 fit-to-window,这里换算为图像接近 1:1 像素显示
viewport.setZoom(1 / fitScale)
}
viewport.render()
+ this.setFullScreen(index)
},
voiChange(v) {
const renderingEngine = getRenderingEngine(this.renderingEngineId)
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue
index 29c1ffad..30ff1fa5 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/VolumeViewport.vue
@@ -59,10 +59,10 @@
Location: {{
`${Number(imageInfo.location).toFixed(digitPlaces)} mm`
- }}
+ }}
Slice Thickness: {{
`${Number(imageInfo.sliceThickness).toFixed(digitPlaces)} mm`
- }}
+ }}
WW/WL: {{ imageInfo.wwwc }}
@@ -595,10 +595,11 @@ export default {
const renderingEngine = getRenderingEngine(this.renderingEngineId)
const viewport = renderingEngine.getViewport(this.viewportId)
if (!viewport) return
-
+ let index = this.series.SliceIndex
if (forceFitToWindow) {
viewport.resetCamera({ resetPan: true, resetZoom: true, resetToCenter: true })
viewport.render()
+ this.setFullScreen(index)
return
}
@@ -613,6 +614,7 @@ export default {
if (!imageWidth || !imageHeight || !canvasWidth || !canvasHeight) {
viewport.render()
+ this.setFullScreen(index)
return
}
@@ -622,6 +624,7 @@ export default {
}
viewport.render()
+ this.setFullScreen(index)
},
voiChange(v) {
const renderingEngine = getRenderingEngine(this.renderingEngineId)