Image aspect ratio utilities.
The Ruby port of node-aspectratio npm module.
Install globally
gem install aspect_ratio
OR
Install locally with Bundler
Please include
gem 'aspect_ratio'
in your Gemfile then bundle install
ruby test/aspect_ratio_test.rb
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
ratiomust be on the following format:x:ywherexandyare integers. The order ofxandzdoes not matter and3:4will be treated as4:3.
By default #crop() will match the orientation of the original image unless a forced orientation is given on the follwing format:
x:y!zwherezis the orientation (vfor vertical, orhfor horizontal).
This will return an Array of four values:
- integer
x- top lef x coordinate - integer
y- top lef y coordinate - integer
width- new image width - integer
height- new image height
require 'aspect_ratio'
AspectRatio.crop(2048, 768, '4:3');
// [512, 768, 1024, 768]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 - boolean
enlarge- enlarge when original is smaller than the max - default true
Returns an Array of the resized x and y values:
- integer
x- resized image width - integer
y- resized image height
require 'aspect_ratio'
AspectRatio.resize(2048, 768, 640, 640);
// [640, 240]