From 7aaaabc47fefda46328bcc4e8a84e4b1e22c3bcc Mon Sep 17 00:00:00 2001 From: Ryos Suzuki Date: Mon, 3 Oct 2022 15:46:43 +0900 Subject: [PATCH] Fix a bug: under vflip and compact mode. --- lib/render.js | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/lib/render.js b/lib/render.js index 81ad021..f1dae62 100644 --- a/lib/render.js +++ b/lib/render.js @@ -202,14 +202,27 @@ const compactLabels = (desc, opt) => { const mask = getLabelMask(desc, mod); - for (let i = 0; i < mod; i++) { - const idx = vflip ? i : (mod - i - 1); - if (mask[idx]) { - labels.push(text( - idx, - step * (i + .5), - 0.5 * fontsize + 4 - )); + if (opt.compact) { + let a = [0, mod-1]; + + a.map(i => { + const idx = vflip ? i : (mod - i - 1); + labels.push(text( + idx, + step * (i + .5), + 0.5 * fontsize + 4 + )); + }); + } else { + for (let i = 0; i < mod; i++) { + const idx = vflip ? i : (mod - i - 1); + if (mask[idx]) { + labels.push(text( + idx, + step * (i + .5), + 0.5 * fontsize + 4 + )); + } } } @@ -286,8 +299,10 @@ const cage = (desc, opt) => { res.push(vline(-(height >>> 3), xj, height)); } if (opt.compact && k !== 0 && !skipDrawingEmptySpace(desc, opt, k - 1, mod, i - 1)) { - res.push(hline(width / mod, xj, 0)); - res.push(hline(width / mod, xj, height)); + const delta_x = (opt.compact && opt.vflip)?width / mod:0; + + res.push(hline(width / mod, xj - delta_x, 0)); + res.push(hline(width / mod, xj - delta_x, height)); } i++; j += delta;