node-lcms

1.0.2 • Public • Published

node-lcms

A little wrapper over LittleCMS utilities.

Installation

You need to have LittleCMS installed. You can build it from source by following these steps (which should work on Unix-based systems, including macOS):

git clone git@github.com:mm2/Little-CMS.git
cd Little-CMS
./configure
make
make check
make install

You can now use node-lcms in your project by installing it from npm into your project:

# using npm 
npm install node-lcms
 
# using yarn 
yarn add node-lcms

API reference

convert(options = {})function(color_arr)

This is a wrapper over the Little CMS's transicc utility, which converts colors based on ICC profiles.

let { convert } = require('node-lcms');
 
let conv = convert({
    profile_out: require.resolve('color-profiles/pso-coated-v3.icc')
});
 
console.log(conv([255, 0, 0]));

intent:

Value Description
0 Perceptual
1 Relative colorimetric
2 Saturation
3 Absolute colorimetric
10 Perceptual preserving black ink
11 Relative colorimetric preserving black ink
12 Saturation preserving black ink
13 Perceptual preserving black plane
14 Relative colorimetric preserving black plane
15 Saturation preserving black plane

Built-in profiles:

Profile Description
*Lab2 D50-based v2 CIELab
*Lab4 D50-based v4 CIELab
*Lab D50-based v4 CIELab
*XYZ CIE XYZ (PCS)
*sRGB sRGB color space
*Gray22 Monochrome of Gamma 2.2
*Gray30 Monochrome of Gamma 3.0
*null Monochrome black for all input
*Lin2222 CMYK linearization of gamma 2.2 on each channel

Acknowledgements

This project is indebted to James Pederson's node-transicc for instructions on how to install LittleCMS from source and how to interface with it in Node.js.

See also

Readme

Keywords

none

Package Sidebar

Install

npm i node-lcms

Weekly Downloads

0

Version

1.0.2

License

MIT

Unpacked Size

5.91 kB

Total Files

6

Last publish

Collaborators

  • danburzo