aspectratio
Version:
Image aspect ratio utility
75 lines (50 loc) • 2.55 kB
Markdown
# aspectratio
[](https://app.wercker.com/project/bykey/90dda5965d63c43c484b2e29c7d4ba92)
[](https://www.npmjs.com/package/aspectratio)
[](https://www.npmjs.com/package/aspectratio)
[](https://www.npmjs.com/package/aspectratio)
[](https://david-dm.org/turistforeningen/node-aspectratio)
Image aspect ratio utilities.
## Install
```
npm install aspectratio --save
```
## API
```js
var aspect = require('aspectratio');
```
### crop(**integer** `width`, **integer** `height`, **string** `ratio`)
Apply a fixed aspect `ratio` crop without distoring the image aspect ratio.
* **integer** `width` - original image width
* **integer** `height` - original image height
* **string** `ratio` - new image ratio
> The `ratio` must be on the following format: `x`:`y` where `x` and `y` are
> integers. The order of `x` and `z` does not matter and `3:4` will be treated
> as `4:3`.
> By default #crop() will match the orientation of the original image unless a
> forced orientation is given on the follwing format: `x`:`y`!`z` where `z` is
> the orientation (`v` for vertical, or `h` for horizontal).
#### Return
This will return an `Array` of four values:
1. **integer** `x` - top lef x coordinate
2. **integer** `y` - top lef y coordinate
3. **integer** `width` - new image width
4. **integer** `height` - new image height
#### Example
```js
var crop = aspect.crop(2048, 768, '4:3');
// [512, 768, 1024, 768]
```

### resize(**integer** `x`, **integer** `y`, **integer** `maxX`, **integer** `maxY`)
Get resized height and width of an image while perserving the aspect ratio of
the image.
* **integer** `x` - original image width
* **integer** `y` - original image height
* **integer** `maxX` - max image width
* **integer** `maxY` - max image height
### Return
Returns an `Array` of the resized `x` and `y` values:
* **integer** `x` - resized image width
* **integer** `y` - resized image height
## [MIT License](https://github.com/Turistforeningen/node-aspectratio/blob/master/LICENSE)