Turn audio into a shareable video. forked from nypublicradio/audiogram

initialize-canvas.js 766B

12345678910111213141516171819202122232425262728293031323334
  1. var fs = require("fs"),
  2. path = require("path"),
  3. Canvas = require("canvas"),
  4. getRenderer = require("../renderer/");
  5. function initializeCanvas(theme, cb) {
  6. // Fonts pre-registered in bin/worker
  7. var renderer = getRenderer(theme);
  8. if (!theme.backgroundImage) {
  9. return cb(null, renderer);
  10. }
  11. // Load background image from file (done separately so renderer code can work in browser too)
  12. fs.readFile(path.join(__dirname, "..", "settings", "backgrounds", theme.backgroundImage), function(err, raw){
  13. if (err) {
  14. return cb(err);
  15. }
  16. const canvas = Canvas.createCanvas();
  17. var bg = canvas.Image;
  18. bg.src = raw;
  19. renderer.backgroundImage(bg);
  20. return cb(null, renderer);
  21. });
  22. }
  23. module.exports = initializeCanvas;