in src/utils/image.ts [18:68]
export async function createLogo(): Promise<Buffer> {
const logoParts = [
{
input: await sharp(createLogoConfig({ r: 255, g: 255, b: 102, alpha: 1 }))
.png()
.toBuffer(),
left: 0,
top: 0,
},
{
input: await sharp(createLogoConfig({ r: 66, g: 255, b: 255, alpha: 1 }))
.png()
.toBuffer(),
left: LOGO_SIZE,
top: 0,
},
{
input: await sharp(createLogoConfig({ r: 81, g: 218, b: 76, alpha: 1 }))
.png()
.toBuffer(),
left: LOGO_SIZE * 2,
top: 0,
},
{
input: await sharp(createLogoConfig({ r: 255, g: 110, b: 60, alpha: 1 }))
.png()
.toBuffer(),
left: LOGO_SIZE * 3,
top: 0,
},
{
input: await sharp(createLogoConfig({ r: 60, g: 70, b: 255, alpha: 1 }))
.png()
.toBuffer(),
left: LOGO_SIZE * 4,
top: 0,
},
];
return await sharp({
create: {
width: LOGO_SIZE * 5,
height: LOGO_SIZE,
channels: 4,
background: { r: 255, g: 255, b: 255, alpha: 0 },
},
})
.composite(logoParts)
.png()
.toBuffer();
}