Working with ChemDraw JS
ChemDraw JS is a library for working with chemical structures. Its features include drawing chemical structures and reactions and converting names to structures and structures to names. It also supports hotkeys and shortcuts, structure templates, and structure query tools.
Notable users of ChemDraw JS include ChemDraw Cloud, Signals Notebook Individual Edition, Lead Discovery, and PerkinElmer Signals Lead Discovery.
A demo site (also see archived version) showcases the features of the library.
Using ChemDraw JS
To use ChemDraw JS in your app, you need a license file. You can get the license file by contacting PerkinElmer.
Load the ChemDraw JS script:
<script src="https://chemdrawdirect.perkinelmer.cloud/js/chemdrawweb/chemdrawweb.js"></script>
This script loads the perkinelmer object into the window which is used to create a ChemDraw JS instance:
window.perkinelmer.ChemdrawwebManager.attach({
license: '<?xml version="1.0" encoding="UTF-8" standalone="no"?><License ...',
element: document.getElementById("chemdraw-mounting-point"),
callback: (chemdraw) => {
// Use the `chemdraw` instance here, call APIs, etc.
},
errorCallback: (error) => {
// ...
},
});In the callback callback, use the chemdraw to load an example CDXML:
const dimethylamineCdxml = `<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE CDXML SYSTEM "http://www.cambridgesoft.com/xml/cdxml.dtd">
<CDXML>
<page>
<fragment>
<n id="9" p="106 118" />
<n id="11" p="131.98 103" Element="7" />
<n id="13" p="157.96 118" />
<b id="12" B="9" E="11" />
<b id="14" B="11" E="13" />
</fragment>
</page>
</CDXML>`;
chemdraw.loadCDXML(dimethylamineCdxml);