discord-card-canvas
Version:
👾 Simple creating cards using canvas. Welcome, Rank, Info and so on.
30 lines (29 loc) • 1.03 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.loadFont = loadFont;
exports.loadFonts = loadFonts;
const canvas_1 = require("canvas");
const path_1 = require("path");
const registeredFonts = new Set();
function loadFont(fontPath, fontFace) {
const fontKey = `${fontFace.family}-${fontFace.weight || 'normal'}-${fontFace.style || 'normal'}-${fontPath}`;
if (registeredFonts.has(fontKey)) {
return;
}
(0, canvas_1.registerFont)(fontPath, fontFace);
registeredFonts.add(fontKey);
}
function loadFonts(fonts, basePath = __dirname) {
if (!fonts) {
throw new Error('No fonts provided');
}
fonts.forEach((font) => {
const fontPath = (0, path_1.resolve)(basePath, font.path);
try {
loadFont(fontPath, { family: font.family, weight: font.weight, style: font.style });
}
catch (error) {
console.error(`Failed to register font: ${font.family}, weight: ${font.weight}`, error);
}
});
}
;