markup-color-extractor
v1.0.2
Published
Extract colors from markup (XML and HTML)
Downloads
19
Maintainers
Readme
node-markup-color-extractor
Description
Extract colors from HTML and XML. This library can detect all of the color types supported by TinyColor.
API
extractColors.from.buffer(opt
)
Extract colors from a buffer
- object
opt
- An options object- buffer
buffer
- A Buffer containing markup - function(null|object
err
, arraycolors
)cb
- A function to be executed after the colors are extracted - boolean
unique
- (Optional) Iftrue
, the color array will not contain duplicates (Defaulttrue
) - boolean
text
- (Optional) Iftrue
, will search element inner text for colors - boolean|array
attributes
- (Optional) Iftrue
, will search all element attributes for colors, or if an array, will search only the attributes listed in the array
- buffer
Example
fs.readFile(path.join(__dirname, 'colors.xml'), function(err, data) {
if (err) { throw err; }
extractColors.from.buffer({
buffer: data,
attributes: true,
text: true,
cb: function(err, colors) {
if (err) { throw err; }
console.log(colors);
}
});
});
extractColors.from.string(opt
)
Extract colors from a string
- object
opt
- An options object- string
string
- A string containing markup - function(null|object
err
, arraycolors
)cb
- A function to be executed after the colors are extracted - boolean
unique
- (Optional) Iftrue
, the color array will not contain duplicates (Defaulttrue
) - boolean
text
- (Optional) Iftrue
, will search element inner text for colors - boolean|array
attributes
- (Optional) Iftrue
, will search all element attributes for colors, or if an array, will search only the attributes listed in the array
- string
Example
extractColors.from.string({
string: '<color value="#E0162B">#0052A5</color>',
text: true,
attributes: ['value'],
cb: function(err, colors) {
if (err) { throw err; }
console.log(colors);
}
});
extractColors.from.file(opt
)
Extract colors from a file
- object
opt
- An options object- string
file
- A path to a file containing markup - function(null|object
err
, arraycolors
)cb
- A function to be executed after the colors are extracted - boolean
unique
- (Optional) Iftrue
, the color array will not contain duplicates (Defaulttrue
) - boolean
text
- (Optional) Iftrue
, will search element inner text for colors - boolean|array
attributes
- (Optional) Iftrue
, will search all element attributes for colors, or if an array, will search only the attributes listed in the array
- string
Example
extractColors.from.file({
file: path.join(__dirname, 'colors.xml'),
attributes: true,
text: true,
cb: function(err, colors) {
if (err) { throw err; }
console.log(colors);
}
});
extractColors.from.url(opt
)
Extract colors from a url
- object
opt
- An options object- string
url
- A url to a file containing markup - function(null|object
err
, arraycolors
)cb
- A function to be executed after the colors are extracted - boolean
unique
- (Optional) Iftrue
, the color array will not contain duplicates (Defaulttrue
) - boolean
text
- (Optional) Iftrue
, will search element inner text for colors - boolean|array
attributes
- (Optional) Iftrue
, will search all element attributes for colors, or if an array, will search only the attributes listed in the array
- string
Example
extractColors.from.url({
url: 'http://site.com/colors.html',
attributes: true,
text: true,
cb: function(err, colors) {
if (err) { throw err; }
console.log(colors);
}
});
Note
You may also supply any of the htmlparser2 parser options in opt
for all of the methods listed above.
Installation
Npm
npm install markup-color-extractor
Tests
Before running the tests, Mocha must be installed:
npm install -g mocha
To run the tests:
npm test