diff --git a/src/components/TargetCanvas.vue b/src/components/TargetCanvas.vue index 7026814..5d4e6e0 100644 --- a/src/components/TargetCanvas.vue +++ b/src/components/TargetCanvas.vue @@ -164,6 +164,8 @@ const defaultHighlightStyle = { color: "rgba(255, 228, 0, 0.6)", strokeColor: "rgba(254, 216, 71, 0.82)", lineWidthRatio: 0.003, + // 在最小线宽计算后应用倍数,确保不同靶面尺寸下按比例加粗。 + lineWidthScale: 1, }; // 合并默认靶纸样式和外部传入样式,ringColors 单独深合并。 @@ -319,7 +321,7 @@ const drawSectorHighlight = ( (angles.endAngle - angles.startAngle) * safeRevealProgress, style.color, style.strokeColor, - Math.max(1, targetRadius * style.lineWidthRatio) + Math.max(1, targetRadius * style.lineWidthRatio) * style.lineWidthScale ); }); }; diff --git a/src/pages/training/components/BowTarget.vue b/src/pages/training/components/BowTarget.vue index ee3338c..5c507c3 100644 --- a/src/pages/training/components/BowTarget.vue +++ b/src/pages/training/components/BowTarget.vue @@ -546,6 +546,7 @@ onBeforeUnmount(() => { :showCrosshair="false" :showRingLabels="false" :highlightOnly="true" + :highlightStyle="{ strokeColor: '#00fffc', lineWidthScale: 3 }" :sectorCount="sectorCount" :activeSector="activeSector" :activeRings="activeRings"