**Please do not work on this issue unless you have applied to the outreachy project.**

The [node/pdf2png/pdf2png.js](https://github.com/mozilla/pdf.js/blob/master/examples/node/pdf2png/pdf2png.js) example currently uses the older style of `promise.then` and callbacks. Convert it to use an `async` function and `await` style.

NodeCanvasFactory.prototype = {
  create: function NodeCanvasFactory_create(width, height) {
    assert(width > 0 && height > 0, "Invalid canvas size");
    const canvas = Canvas.createCanvas(width, height);
    const context = canvas.getContext("2d");
    return {
      canvas,
      context,
    };
  },
  reset: function NodeCanvasFactory_reset(canvasAndContext, width, height) {
    assert(canvasAndContext.canvas, "Canvas is not specified");
    assert(width > 0 && height > 0, "Invalid canvas size");
    canvasAndContext.canvas.width = width;
    canvasAndContext.canvas.height = height;
  },
  destroy: function NodeCanvasFactory_destroy(canvasAndContext) {