(fonts: { name: string; base64?: string | null }[])
| 73 | } |
| 74 | |
| 75 | function css(fonts: { name: string; base64?: string | null }[]): string { |
| 76 | let css = ""; |
| 77 | for (const font of fonts) { |
| 78 | if (!font.base64) { |
| 79 | continue; |
| 80 | } |
| 81 | css += `@font-face {font-family:"${font.name}";src:url("${font.base64}") format("woff2")}`; |
| 82 | } |
| 83 | css += `*{font-family:${fonts |
| 84 | .map((font) => |
| 85 | ["monospace", "sans-serif", "sans"].includes(font.name) ? font.name : `"${font.name}"`, |
| 86 | ) |
| 87 | .join(",")}}`; |
| 88 | return css; |
| 89 | } |