0

First plugin with XD and i can't seem to create a instance of class Color.

Their documentation doesn't show any examples and any that i find in other examples just shows new Color() and that i don't have to perform any require.

https://adobexdplatform.com/plugin-docs/reference/Color.html

Plugin ReferenceError: Color is not defined
    at exportToBmpFunction (C:\Users\<useR>\AppData\Local\Packages\Adobe.CC.XD_adky2gkssdxte\LocalState\develop\BMP_Export\main.js:21:21)

What am i doing wrong?

async function exportToBmpFunction(selection) {

  if (selection.items.length == 0) {
    return;
  }

  // Generate PNG rendition of the selected node
  let application = require("application");
  let scenegraph = require("scenegraph");
  let fs = require("uxp").storage.localFileSystem;

  let shape = selection.items[0];
  let file = await fs.getFileForSaving('what.png', { types: ["png"] });
  let renditions = [{
    node: shape,
    outputFile: file,
    type: application.RenditionType.PNG,
    scale: 1,
    background: new Color('#FF00CD', 1)
  }];
  application.createRenditions(renditions).then(function(results) {
    // ...do something with outputFiles on disk...
  });
}

module.exports = {
  commands: {
    exportToBmp: exportToBmpFunction
  }
};
Chris Rice
  • 728
  • 2
  • 9
  • 32

1 Answers1

0

Turns out after digging through other classes in the same 'namespace' that their documentation is just flat out wrong in some places. This is what it should be.

  const Color = require("scenegraph").Color;
  let color = new Color('#FF00CD');

This happens to be in direct contradiction to examples of use of Color in the docs. Yay for freehanding code!

Chris Rice
  • 728
  • 2
  • 9
  • 32
  • Just for reference: There is an issue about this open in the GitHub repository of the documentation (https://github.com/AdobeXD/plugin-docs/issues/147). – pklaschka Dec 12 '19 at 12:39