Parse and convert JCAMP-DX data
Maintained by Zakodium
NB: migrated from https://github.com/cheminfo/jcampconverter/commit/be9f772a7b852a1ca0cd7f00efce278f6413b67e
[![NPM version][npm-image]][npm-url]
[![npm download][download-image]][download-url]

Parse and convert JCAMP-DX data.
``shell`
npm install jcampconverter
Converts the jcamp using options.
Returns an object with information about the converted file and uncompressed spectra data.
Arguments
- jcamp - String or ArrayBuffer containing the JCAMP-DX dataoptions
- - Object with options to pass to the converter
Options
- keepRecordsRegExp - regexp to select which records should be placed in the info field. By default: :/^\$/} (nothing is kept)
- withoutXY - do not parse XYDATA or PEAKTABLE fields. Useful to only extract metadata fields (combine this option with keepRecordsRegExp)
- chromatogram - use the new GC/MS data format output (default: false)
- canonicDataLabels - canonize data labels (uppercase) (default: true).
- canonicMetadataLabels - canonize data labels (uppercase) (default: false).
- dynamicTyping - When parsing field convert to number if a number (default: true)
2D NMR options:
- noContour - if true, the contour levels will not be generated. Instead the raw data will be available in result.minMax.z (default: false)
- nbContourLevels - number of contour levels to use in each positive and negative sides (default: 7)
- noiseMultiplier - default: 5
- keepSpectra - Generate array for 2D NMR spectra (default: false)
#### Node.js
`javascript
var converter = require('jcampconverter');
var jcamp = require('fs').readFileSync('path/to/jcamp.dx', 'utf8');
var result = converter.convert(jcamp);
// if there is only one spectrum it will be in
console.log(result.flatten[0]);
// the converter will also keep the full jcamp tree
`
`console`
npm install
npm test
npm run build
`console``
npm run benchmark
© 2025 Zakodium Sàrl. This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. CC BY-NC-SA 4.0
This package is based on MIT-licensed code that can be found here: https://doi.org/10.5281/zenodo.5091526
[npm-image]: https://img.shields.io/npm/v/jcampconverter.svg
[npm-url]: https://npmjs.org/package/jcampconverter
[download-image]: https://img.shields.io/npm/dm/jcampconverter.svg
[download-url]: https://npmjs.org/package/jcampconverter