Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/runlevel5/aspect_ratio
A TypeScript module for image aspect calculation
https://github.com/runlevel5/aspect_ratio
Last synced: 24 days ago
JSON representation
A TypeScript module for image aspect calculation
- Host: GitHub
- URL: https://github.com/runlevel5/aspect_ratio
- Owner: runlevel5
- License: mit
- Created: 2020-08-07T09:53:38.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2020-08-07T10:06:59.000Z (about 4 years ago)
- Last Synced: 2024-04-15T09:16:17.377Z (7 months ago)
- Language: TypeScript
- Size: 10.7 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# aspect_ratio
Image aspect ratio utilities module for Deno
This module is a TypeScript port of [node-aspectratio](https://github.com/Turistforeningen/node-aspectratio)
## API
```ts
import { crop, resize } from 'https://deno.land/x/[email protected]/mod.ts';
```### 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]
```Image: [Crop with fixed ratio](./image.png)
### 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](LICENSE)