diff --git a/src/component/visualMap/ContinuousView.ts b/src/component/visualMap/ContinuousView.ts index 17b244be08..6d8710cf1c 100644 --- a/src/component/visualMap/ContinuousView.ts +++ b/src/component/visualMap/ContinuousView.ts @@ -191,8 +191,10 @@ class ContinuousView extends VisualMapView { style: createTextStyle(textStyleModel, { x: position[0], y: position[1], - verticalAlign: orient === 'horizontal' ? 'middle' : align as TextVerticalAlign, - align: orient === 'horizontal' ? align as TextAlign : 'center', + verticalAlign: textStyleModel.get('verticalAlign') + || (orient === 'horizontal' ? 'middle' : align as TextVerticalAlign), + align: textStyleModel.get('align') + || (orient === 'horizontal' ? align as TextAlign : 'center'), text }) })); diff --git a/src/component/visualMap/PiecewiseView.ts b/src/component/visualMap/PiecewiseView.ts index 1b49d8cb6d..0d42123241 100644 --- a/src/component/visualMap/PiecewiseView.ts +++ b/src/component/visualMap/PiecewiseView.ts @@ -44,8 +44,6 @@ class PiecewiseVisualMapView extends VisualMapView { const visualMapModel = this.visualMapModel; const textGap = visualMapModel.get('textGap'); const textStyleModel = visualMapModel.textStyleModel; - const textFont = textStyleModel.getFont(); - const textFill = textStyleModel.getTextColor(); const itemAlign = this._getItemAlign(); const itemSize = visualMapModel.itemSize; const viewData = this._getViewData(); @@ -74,17 +72,19 @@ class PiecewiseVisualMapView extends VisualMapView { if (showLabel) { const visualState = this.visualMapModel.getValueState(representValue); + const align = textStyleModel.get('align') || itemAlign as TextAlign; itemGroup.add(new graphic.Text({ - style: { - x: itemAlign === 'right' ? -textGap : itemSize[0] + textGap, + style: createTextStyle(textStyleModel, { + x: align === 'right' ? -textGap : itemSize[0] + textGap, y: itemSize[1] / 2, text: piece.text, - verticalAlign: 'middle', - align: itemAlign as TextAlign, - font: textFont, - fill: textFill, - opacity: visualState === 'outOfRange' ? 0.5 : 1, - }, + verticalAlign: textStyleModel.get('verticalAlign') || 'middle', + align, + opacity: zrUtil.retrieve2( + textStyleModel.get('opacity'), + visualState === 'outOfRange' ? 0.5 : 1 + ), + }), silent })); } diff --git a/test/visualMap-pieces.html b/test/visualMap-pieces.html index aa45419ff7..db03333e1d 100644 --- a/test/visualMap-pieces.html +++ b/test/visualMap-pieces.html @@ -93,14 +93,19 @@ {min: 10, max: 200, label: '10 到 200(自定义label)'}, {value: 123, label: '123(自定义特殊颜色)', color: 'grey'}, {min: 5, max: 5, label: '5(自定义特殊颜色)', color: 'black'}, - {max: 5} + {max: 5, label: '< 5 (测试文本溢出测试文本溢出测试文本溢出)'} ], color: ['#E0022B', '#E09107', '#A3E00B'], textStyle: { textShadowColor: "rgba(255, 0, 255, 1)", textShadowBlur: 5, textShadowOffsetX: 5, - textShadowOffsetY: 5 + textShadowOffsetY: 5, + width: 200, + overflow: 'truncate', + // opacity: 0, + // align: 'left', + // verticalAlign: 'top' } }, toolbox: { @@ -254,4 +259,4 @@ - \ No newline at end of file +