Cleanup legacy rendering code and files
also removes dockerfile and imagemagick.
This commit is contained in:
@@ -1,42 +0,0 @@
|
||||
const { spawn } = require('child_process');
|
||||
const crypto = require('crypto');
|
||||
const fs = require('fs');
|
||||
const { Card } = require('../models');
|
||||
|
||||
//TODO: Handle missing images
|
||||
module.exports = {
|
||||
name: "Compositing",
|
||||
renderProfile: async function(profile, background, renderedCards) {
|
||||
let hash = crypto.createHash('md5').update(JSON.stringify(profile) + background).digest('hex');
|
||||
|
||||
let outFile = `/app/assets/image_cache/profiles/${hash}.gif`;
|
||||
console.log('Rendering profile to ' + outFile);
|
||||
|
||||
//composite {overlay} {background} [{mask}] [-compose {method}] {result}
|
||||
let args = ['png:-', 'null:',
|
||||
'\(', `${renderedCards[0]}`, '-coalesce', '\)',
|
||||
'-geometry', '+25+85', '-compose', 'over', '-layers', 'composite',
|
||||
'null:', '\(', `${renderedCards[1]}`, '-coalesce', '-resize', '170x283', '\)',
|
||||
'-geometry', '+350+300', '-compose', 'over', '-layers', 'composite',
|
||||
'null:', '\(', `${renderedCards[2]}`, '-coalesce', '-resize', '170x283', '\)',
|
||||
'-geometry', '+535+300', '-compose', 'over', '-layers', 'composite',
|
||||
'null:', '\(', `${renderedCards[3]}`, '-coalesce', '-resize', '170x283', '\)',
|
||||
'-geometry', '+720+300', '-compose', 'over', '-layers', 'composite',
|
||||
'-layers', 'optimize', outFile];
|
||||
|
||||
console.log('GM Args: ' + args);
|
||||
|
||||
const composite = spawn('convert', args);
|
||||
composite.stdin.write(background);
|
||||
composite.stdin.end();
|
||||
|
||||
composite.stderr.on('data', (data) => {
|
||||
console.log(`stdout: ${data}`);
|
||||
});
|
||||
const exitCode = await new Promise( (resolve, reject) => {
|
||||
composite.on('close', resolve);
|
||||
})
|
||||
|
||||
return outFile;
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,4 @@
|
||||
require("dotenv").config();
|
||||
const sharp = require('sharp');
|
||||
const crypto = require('crypto');
|
||||
const fs = require('fs');
|
||||
const { Character } = require('../models');
|
||||
const axios = require('axios').default
|
||||
|
||||
@@ -14,7 +11,6 @@ const QualityColors = {
|
||||
6: {r: 255, g: 255, b: 0} //shiny
|
||||
}
|
||||
|
||||
//TODO: Handle missing images
|
||||
module.exports = {
|
||||
name: "Rendering",
|
||||
renderCardStack: async function(cards) {
|
||||
@@ -71,17 +67,7 @@ module.exports = {
|
||||
}
|
||||
});
|
||||
|
||||
/* if (!card.userId) {
|
||||
return './assets/cards/card_cover.png';
|
||||
} */
|
||||
/**
|
||||
let hash = crypto.createHash('md5').update(character.imageIdentifier + card.quality + (card.userId == 1 ? 'unclaimed' : 'claimed')).digest('hex');
|
||||
//TODO: Add switch to turn off or bypass caching
|
||||
if (fs.existsSync(`./assets/image_cache/${hash}.gif`)) {
|
||||
return `./assets/image_cache/${hash}.gif`;
|
||||
}
|
||||
**/
|
||||
console.log(`Rendering card or character ${character.name} ${character.imageIdentifier}`);
|
||||
console.log(`Rendering card ${card.id} ${character.name} ${character.imageIdentifier}`);
|
||||
|
||||
let characterImage = `${process.env.ASSET_URL}/cards/${character.imageIdentifier}`;
|
||||
|
||||
@@ -91,7 +77,6 @@ module.exports = {
|
||||
character.name = ' ';
|
||||
}
|
||||
|
||||
console.log("Character iomage ", characterImage);
|
||||
let job = {
|
||||
"type": "card",
|
||||
"size": {
|
||||
@@ -132,6 +117,5 @@ module.exports = {
|
||||
let { data } = await axios.post(`${process.env.JOSE_ENDPOINT}/jobs`, job);
|
||||
console.log("Fetched ", data["path"]);
|
||||
return data["path"];
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user