diff --git a/src/serve_rendered.js b/src/serve_rendered.js index 3a264fd..e39d8d5 100644 --- a/src/serve_rendered.js +++ b/src/serve_rendered.js @@ -305,9 +305,11 @@ module.exports = { }); if (z > 2 && tileMargin > 0) { + const [_, y] = mercator.px(params.center, z); + let yoffset = Math.max(Math.min(0, y - 128 - tileMargin), y + 128 + tileMargin - Math.pow(2, z + 8)); image.extract({ left: tileMargin * scale, - top: tileMargin * scale, + top: (tileMargin + yoffset) * scale, width: width * scale, height: height * scale });