diff --git a/web/templates/card_creator.html b/web/templates/card_creator.html
index 1cbf90c..7c87fc5 100644
--- a/web/templates/card_creator.html
+++ b/web/templates/card_creator.html
@@ -137,21 +137,25 @@ async function drawCardId() {
function wrapText(text, x, y, maxWidth, lineHeight) {
- const words = text.split(" ");
- let line = "";
- for (let n = 0; n < words.length; n++) {
- const testLine = line + words[n] + " ";
- const metrics = ctx.measureText(testLine);
- const testWidth = metrics.width;
- if (testWidth > maxWidth && n > 0) {
- ctx.fillText(line, x, y);
- line = words[n] + " ";
- y += lineHeight;
- } else {
- line = testLine;
+ const lines = text.split('\n');
+ for (let i = 0; i < lines.length; i++) {
+ let words = lines[i].split(" ");
+ let line = "";
+ for (let n = 0; n < words.length; n++) {
+ const testLine = line + words[n] + " ";
+ const metrics = ctx.measureText(testLine);
+ const testWidth = metrics.width;
+ if (testWidth > maxWidth && n > 0) {
+ ctx.fillText(line, x, y);
+ line = words[n] + " ";
+ y += lineHeight;
+ } else {
+ line = testLine;
+ }
}
+ ctx.fillText(line, x, y);
+ y += lineHeight;
}
- ctx.fillText(line, x, y);
}
// Update card live when inputs change