Home

Awesome

ember-cli-image-transformer

Build Status Ember Observer Score

Transform Images for your Ember Application from One Source Image

I hate having to create a bunch of identical images for use as icons and favicon images for my application, so I created this addon to take a single source image and transform it into many images of differing sizes, types, and backgrounds.

It is built using EmberJS and takes advantage of the awesome Sharp library to do the heavy lifting.

Compatibility

Installation

ember install ember-cli-image-transformer

Usage

Create an ember-cli-image-transformer section in your ember-cli-build.js file with an images array. Each element in the array represents a different set of images to be generated.

module.exports = function(defaults) {
  var app = new EmberApp(defaults, {
    'ember-cli-image-transformer': {
      images: [
        {
          inputFilename: 'public/square.svg',
          outputFileName: 'icon-square',
          convertTo: 'png',
          sizes: [16, 32, 45, 900],
        },
        {
          inputFilename: 'public/circle.svg',
          outputFileName: 'transparent-circle',
          convertTo: 'png',
          background: {r: 255, g: 255, b: 255, alpha: 0},
          sizes: [100],
        }
      ]
    }
  });

All generated images will be placed into the public/assets path of your application.

Usage in a template

<!-- application.hbs -->
<img src='assets/transparent-circle100.png'>

Image Options

KeyRequiredDefault ValueExampleDescription
inputFileName:heavy_check_mark:nonepublic/circle.svgWhere (relative to the application root) to find the input image
outputFileName:heavy_check_mark:nonetransparent-circleThis is combined with the convertTo and size to create the output file eg transparent-circle92.png
convertTo:heavy_check_mark:nonepngThe output file type
sizes:heavy_check_mark:none[92, 150]An array of image sizes to produce
destinationassets/iconsimages/wherever/you/wantThe destination directory for the output images relative to /public
backgroundnone{r: 255, g: 255, b: 255, alpha: 0}Add a background color to the image.

Contributing

See the Contributing guide for details.

License

This project is licensed under the MIT License.