phantomjs( markup, fOut, opts, on_error ) {
    // Save the markup to a temporary file
    const tempFile = fOut.replace(/\.pdf$/i, '.pdf.html');
    FS.writeFileSync(tempFile, markup, 'utf8');
    let scriptPath = PATH.relative(process.cwd(), PATH.resolve( __dirname, '../utils/rasterize.js' ));
    scriptPath = SLASH(scriptPath);
    const sourcePath = SLASH(PATH.relative( process.cwd(), tempFile));
    const destPath = SLASH(PATH.relative( process.cwd(), fOut));
    SPAWN('phantomjs', [ scriptPath, sourcePath, destPath ], false, on_error, this);
  }
Generate a PDF from HTML using Phantom's CLI interface.
  Spawns a child process with `phantomjs <script> <source> <target>`. Phantom
  must be installed and path-accessible.
  TODO: If HTML generation has run, reuse that output
  TODO: Local web server to ease Phantom rendering