From 3791dee358c0a145521057957baff5ce116b540d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20Kr=C3=B6g?= Date: Fri, 9 Apr 2021 19:54:06 +0200 Subject: [PATCH] Fix immediate render with pixel ratio != 1 --- src/ol/render/canvas/Immediate.js | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/ol/render/canvas/Immediate.js b/src/ol/render/canvas/Immediate.js index 101d9fe22b..59e51c379e 100644 --- a/src/ol/render/canvas/Immediate.js +++ b/src/ol/render/canvas/Immediate.js @@ -982,24 +982,30 @@ class CanvasImmediateRenderer extends VectorContext { const strokeStyleLineJoin = strokeStyle.getLineJoin(); const strokeStyleWidth = strokeStyle.getWidth(); const strokeStyleMiterLimit = strokeStyle.getMiterLimit(); + const lineDash = strokeStyleLineDash + ? strokeStyleLineDash + : defaultLineDash; this.strokeState_ = { lineCap: strokeStyleLineCap !== undefined ? strokeStyleLineCap : defaultLineCap, - lineDash: strokeStyleLineDash ? strokeStyleLineDash : defaultLineDash, - lineDashOffset: strokeStyleLineDashOffset - ? strokeStyleLineDashOffset - : defaultLineDashOffset, + lineDash: + this.pixelRatio_ === 1 + ? lineDash + : lineDash.map((n) => n * this.pixelRatio_), + lineDashOffset: + (strokeStyleLineDashOffset + ? strokeStyleLineDashOffset + : defaultLineDashOffset) * this.pixelRatio_, lineJoin: strokeStyleLineJoin !== undefined ? strokeStyleLineJoin : defaultLineJoin, lineWidth: - this.pixelRatio_ * (strokeStyleWidth !== undefined ? strokeStyleWidth - : defaultLineWidth), + : defaultLineWidth) * this.pixelRatio_, miterLimit: strokeStyleMiterLimit !== undefined ? strokeStyleMiterLimit