Skip to content

Lyrics Card Generator v5.5.1 Release Notes ​

Release date: 2026-07-14

v5.5.1 enables Auto Width by default for new portrait custom lyric cards and further hardens content measurement, candidate selection, line-height normalization, and cross-platform regression coverage.

Highlights ​

  • New portrait custom lyric cards start with Auto Width enabled. The width slider displays the live result and is disabled while active; turning Auto Width off keeps the last calculated width for manual tuning.
  • Line height is consistently limited to 1.5–2.1 in 0.05 steps, with 1.8 as the new-card default. Legacy out-of-range, off-step, and invalid values are normalized safely.
  • A hidden full-size probe measures all 37 candidate widths from 720 to 1440 with the final font. The result depends only on the current content and typography, not on the manual width used before enabling the feature.
  • Candidate sets must be complete and duplicate-free before solving. Scoring is centered on the global median with deterministic tie-breaks, and incomplete measurements never write a questionable width.
  • Lyrics and translations continue to audit serious orphans separately across CJK graphemes, western words, and mixed text. All six built-in examples converge to the same width in Web Lite and desktop from either the narrowest or widest starting point.
  • Built-in targets are Opalite 1380, Opposite 840, Yuusha 1100, Glorious Years 800, Honeybee 880, and Lies 920, with a ±20-pixel allowance for rendering differences.

Scope ​

  • Auto Width remains limited to portrait custom canvases in Lyrics mode. Fixed ratios, landscape cards, and Instrumental mode keep their existing behavior.
  • Legacy states without an autoWidth field remain manual, so saved user widths are not silently replaced.
  • Desktop and Web Lite share the same measurement, scoring, auto-height coordination, and export-safety path.

Validation ​

  • npm run typecheck / npm run lint / npm run core:test / npm run build
  • npm run web-lite:build / npm run web-lite:check / npm run web-lite:smoke
  • npm run desktop:build / npm run desktop:interaction-test / npm run desktop:final-artifact-smoke

Cherry Chu · Projects, notes, and working documentation.