From e0278e0e9cd406edb4be3f5b46b70565c6d14728 Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Fri, 28 Mar 2014 12:22:10 +0100 Subject: [PATCH] Scale the text offset by the device's pixel ratio Fixes #1918 --- src/ol/render/canvas/canvasimmediate.js | 6 ++++-- src/ol/render/canvas/canvasreplay.js | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/ol/render/canvas/canvasimmediate.js b/src/ol/render/canvas/canvasimmediate.js index 2abdb6e2e5..ae805843ae 100644 --- a/src/ol/render/canvas/canvasimmediate.js +++ b/src/ol/render/canvas/canvasimmediate.js @@ -960,8 +960,10 @@ ol.render.canvas.Immediate.prototype.setTextStyle = function(textStyle) { textTextBaseline : ol.render.canvas.defaultTextBaseline }; this.text_ = goog.isDef(textText) ? textText : ''; - this.textOffsetX_ = goog.isDef(textOffsetX) ? textOffsetX : 0; - this.textOffsetY_ = goog.isDef(textOffsetY) ? textOffsetY : 0; + this.textOffsetX_ = + goog.isDef(textOffsetX) ? (this.pixelRatio_ * textOffsetX) : 0; + this.textOffsetY_ = + goog.isDef(textOffsetY) ? (this.pixelRatio_ * textOffsetY) : 0; this.textRotation_ = goog.isDef(textRotation) ? textRotation : 0; this.textScale_ = this.pixelRatio_ * (goog.isDef(textScale) ? textScale : 1); diff --git a/src/ol/render/canvas/canvasreplay.js b/src/ol/render/canvas/canvasreplay.js index 18a15c9db5..f72584290c 100644 --- a/src/ol/render/canvas/canvasreplay.js +++ b/src/ol/render/canvas/canvasreplay.js @@ -346,9 +346,9 @@ ol.render.canvas.Replay.prototype.replay_ = function( goog.asserts.assert(goog.isString(instruction[3])); text = /** @type {string} */ (instruction[3]); goog.asserts.assert(goog.isNumber(instruction[4])); - var offsetX = /** @type {number} */ (instruction[4]); + var offsetX = /** @type {number} */ (instruction[4]) * pixelRatio; goog.asserts.assert(goog.isNumber(instruction[5])); - var offsetY = /** @type {number} */ (instruction[5]); + var offsetY = /** @type {number} */ (instruction[5]) * pixelRatio; goog.asserts.assert(goog.isNumber(instruction[6])); rotation = /** @type {number} */ (instruction[6]); goog.asserts.assert(goog.isNumber(instruction[7]));