Convert your images to the BPG format
This plugin requires bpgenc which is included in libbpg (libbpg is also available in Homebrew).
In addition, this plugin also requires Grunt >= 0.4
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-bpg --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-bpg');
In your project's Gruntfile, add a section named bpg
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
bpg: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
});
Run bgpenc -h
for the full options.
Type: String
Default value: 'bpgenc'
The location to the bpgenc
binary.
Type: Number
Default value: 27
An integer value to use as the quantizer parameter. set quantizer parameter (smaller gives better quality, range: 0-51, default = 28)
Type: Number
Default value: 420
An integer value to use as the preferred chroma format (420, 422, 444, default=420)
Type: Number
Default value: 'ycbcr'
A string value to use as the preferred color space (ycbcr, rgb, ycgco, ycbcr_bt709, ycbcr_bt2020, default=ycbcr)
Type: Number
Default value: 8
An integer value to use as the bit depth (8 to 12, default = 8)
Type: Boolean
Default value: false
Enable lossless mode
Type: String
Default value: 'jctvc'
The HEVC encoder (jctvc)
Type: Number
Default value: 8
The compression level (1=fast, 9=slow, default = 8)
grunt.initConfig({
bpg: {
options: {},
files: [{
expand: true,
src: ['**/*.{jpg,png}'],
cwd: 'assets/images',
dest: 'build/images'
}]
},
});
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.