munsell.js is a JavaScript library primarily focused on converting colors between the Munsell Color System and other color spaces (e.g., RGB).
API Reference provides the detailed information beyond this README.
$ npm install munsell
import * as munsell from 'munsell';
munsell.munsellToRgb255('2.3YR 6.7/4.22');
// => [ 201, 156, 135 ]
const munsell = require('munsell');
munsell.hexToMhvc('#ABCDEF');
// => [ 73.43648829473781, 8.05763439330249, 5.304123165279228 ]
munsell.js represents Munsell colors in two formats: as strings or as triplets of numbers. These formats can be recognized by the function name used. The string format, munsell
, follows the standard string specification of Munsell colors, e.g., "4.2RP 3/11"
, "N 10"
. The triplet format, mhvc
(Munsell Hue, Value, Chroma), expresses colors as three numbers: e.g., [94.2, 3, 11]
, [0, 10, 0]
.
The foundation of this library is the Munsell Renotation Data, which assumes the standard illuminant C as the light source. munsell.js employs the Bradford transformation for chromatic adaptation to other illuminants (e.g., D65).
munsell.js inter- and extrapolates the data via LCHab space, the method of which is in common with dufy, my color library for Common Lisp. The inversion from LCHab to Munsell colors is based on a method proposed by Paul Centore. For more information, refer to the following article.
- Centore, Paul. (2012). An open-source inversion algorithm for the Munsell renotation. Color Research & Application. 37. 10.1002/col.20715.
https://privet-kitty.github.io/albert/ This is a simple web app that uses munsell.js. It is a training tool to guess the Munsell code of a displayed color.
Copyright (c) 2018-2024 Hugo Sansaqua.