EmilTholin/image-trace-loader
EmilTholin/image-trace-loader has 1,224 GitHub stars and 19 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-09 07:38 UTC. Last push 2023-01-07.
Loads images and exports traced outlines as image/svg+xml URL-encoded data
Measured star growth
- in 24h
- 0
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalImage Trace Loader
Loads images and exports traced outlines as image/svg+xml URL-encoded data
Install
npm install --save-dev image-trace-loader
Inspiration
I saw Mikael Ainalem's fantastic CodePen showcasing this technique, and I wanted a way to automate the process.
Usage
The image-trace-loader loads your image and exports the url of the image as src and the image/svg+xml URL-encoded data as trace.
import { src, trace } from './image.png';
webpack.config.js
module.exports = {
module: {
rules: [
{
test: /\.(gif|png|jpe?g)$/i,
use: [
{
loader: 'image-trace-loader'
}
]
}
]
}
}
It can also be used in conjunction with url-loader or file-loader.
webpack.config.js
module.exports = {
module: {
rules: [
{
test: /\.(gif|png|jpe?g)$/i,
use: [
{
loader: 'image-trace-loader'
},
{
loader: 'url-loader',
options: {
limit: 8192
}
}
]
}
]
}
}
Options
The loader options allows you to specify values for all the parameters of the Potrace class, with the addition of skipTraceIfBase64.
| Name | Type | Default | Description |
|---|---|---|---|
turnPolicy |
{String} |
TURNPOLICY_MINORITY |
How to resolve ambiguities in path decomposition. Possible values are TURNPOLICY_BLACK, TURNPOLICY_WHITE, TURNPOLICY_LEFT, TURNPOLICY_RIGHT, TURNPOLICY_MINORITY, TURNPOLICY_MAJORITY. Refer to page 4 of this document for more information |
turdSize |
{Number} |
100 |
Suppress speckles of up to this size. Larger values significantly reduce the size of the traced outline |
alphaMax |
{Number} |
1 |
Corner threshold parameter. Lower values results in rougher edges, but significantly reduces the size of the traced outline |
optCurve |
{Boolean} |
true |
Curve optimization |
optTolerance |
{Number} |
0.2 |
Curve optimization tolerance |
threshold |
{Number|String} |
THRESHOLD_AUTO |
Threshold below which the color is considered color. Should be a number in range 0..255 or THRESHOLD_AUTO in which case threshold will be selected automatically using Algorithm For Multilevel Thresholding |
flipColors |
{Boolean} |
false |
Specifies whether fill color and background color should be swapped |
color |
{String} |
COLOR_AUTO |
Fill color. COLOR_AUTO will extract and use the most prominent color of the source image |
background |
{String} |
COLOR_TRANSPARENT |
Background color |
skipTraceIfBase64 |
{Boolean} |
false |
If set to true, will not generate a traced outline if the image already is base64 encoded. Useful when the inlined base64 representation is enough, and you don't want to bloat your files with unused traces |
Explore related projects
ytdl-org/youtube-dl
Command-line program to download videos from YouTube.com and other video sites
141,500 starsexcalidraw/excalidraw
Virtual whiteboard for sketching hand-drawn like diagrams
135,396 starsgodotengine/godot
Godot Engine – Multi-platform 2D and 3D game engine
119,840 starsmrdoob/three.js
JavaScript 3D Library.
117,905 stars