Skip to content

Lyrics Card Generator v5.5.0 Release Notes ​

Release date: 2026-07-14

v5.5.0 adds optional Auto Width to portrait custom lyric cards, producing more comfortable wrapping for similarly sized lines without needlessly stretching the canvas.

Highlights ​

  • A disabled-by-default Auto Width switch is available under Portrait → Custom → Lyrics. While active, the width slider shows the live pixel result and is disabled; turning it off keeps the calculated width for manual tuning.
  • A hidden full-size layout probe measures real browser lines with the final font. It does not estimate from character counts or use the scaled visible preview.
  • Original lyrics and translations are measured independently across CJK graphemes, western words, and mixed text to prevent a visual line from containing only one or two characters or short words.
  • Global candidate scoring, representative-line sampling, and outlier down-weighting keep very short ad-libs or isolated long lyrics/translations from stretching the card to its maximum. Translations participate in orphan constraints without dominating the canvas.
  • Content, font, size, and translation changes are recalculated after a 300ms debounce, with a settling threshold that prevents repeated small jumps while typing.
  • Width settles before measured auto height runs. Export stays blocked during the transition, and real overflow checks still protect manually fixed heights.

Scope ​

  • Auto Width is limited to portrait custom canvases in Lyrics mode. Fixed ratios, landscape cards, and Instrumental mode keep their existing behavior.
  • Older states without the field default to Auto Width off. Size history is preserved when moving among portrait, landscape, fixed, custom, and instrumental layouts.
  • Desktop and Web Lite share the same measurement, scoring, auto-height coordination, and export-safety path.

Validation ​

  • npm run typecheck / 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

Cherry Chu · Projects, notes, and working documentation.