diff --git a/demos/06_text.html b/demos/06_text.html index 18f4fe89b7..79f636e663 100644 --- a/demos/06_text.html +++ b/demos/06_text.html @@ -37,7 +37,7 @@ .source(data) .shape('name', 'text') .active(true) - .size(48) // default 1 + .size(12) // default 1 .color('name') .style({ stroke: '#999', diff --git a/src/geom/buffer/point/text.js b/src/geom/buffer/point/text.js index a302e7b36a..0f0285eac7 100644 --- a/src/geom/buffer/point/text.js +++ b/src/geom/buffer/point/text.js @@ -29,7 +29,7 @@ function generateTextBuffer(layerData, fontAtlasManager) { const size = element.size; const pos = element.coordinates; let text = element.shape || ''; - const pen = { x: -text.length * size / 2, y: 0 }; + const pen = { x: -text.length * size / 2 + size / 2, y: 0 }; text = text.toString(); for (let i = 0; i < text.length; i++) { const metric = mapping[text[i]]; diff --git a/src/geom/shader/point_frag.glsl b/src/geom/shader/point_frag.glsl index bfdeaadf5c..f14cbd46c2 100644 --- a/src/geom/shader/point_frag.glsl +++ b/src/geom/shader/point_frag.glsl @@ -54,7 +54,6 @@ void main() { return; }else if(dis2center>ri){ gl_FragColor= u_stroke; - gl_FragColor.a = * u_stroke; return; } } diff --git a/src/geom/shader/text_vert2.glsl b/src/geom/shader/text_vert2.glsl index 6256ee1d74..67d72b48dc 100644 --- a/src/geom/shader/text_vert2.glsl +++ b/src/geom/shader/text_vert2.glsl @@ -18,12 +18,12 @@ varying vec4 v_color; void main(){ mat4 matModelViewProjection=projectionMatrix*modelViewMatrix; vec4 cur_position=matModelViewProjection*vec4(a_position.xy,0,1); - gl_Position=cur_position/cur_position.w+vec4(a_textSize*position.xy/u_glSize/2.,0.,0.)+vec4(a_textOffset/u_glSize,0,0); + gl_Position=cur_position / cur_position.w+ vec4(a_textSize*position.xy/u_glSize, 0., 0.)+vec4(a_textOffset/u_glSize * 2.0,0,0); v_color=vec4(a_color.rgb,a_color.a*u_opacity); if(pickingId == u_activeId) { v_color = u_activeColor; } - v_texcoord=(textUv.xy+vec2(uv.x,1.-uv.y)*textUv.zw)/u_textTextureSize; + v_texcoord=(textUv.xy + vec2(uv.x,1.-uv.y) * textUv.zw)/u_textTextureSize; worldId = id_toPickColor(pickingId); } diff --git a/src/layer/render/point/drawText.js b/src/layer/render/point/drawText.js index cd85745683..69f9ac87bf 100644 --- a/src/layer/render/point/drawText.js +++ b/src/layer/render/point/drawText.js @@ -18,8 +18,8 @@ export default function DrawText(attributes, style) { u_strokeWidth: strokeWidth, u_stroke: stroke, u_textTextureSize: [ attributes.fontAtlas.width, attributes.fontAtlas.height ], - u_gamma: 0.02, - u_buffer: 0.75, + u_gamma: 0.1, + u_buffer: 0.68, u_opacity: opacity, u_glSize: [ width, height ], u_activeColor: activeColor