Crops
Simple thumbnail generation server
Clone & install dependencies
sudo apt-get install imagemagick graphicsmagick
git clone [email protected]:gnuns/crops.git
cd crops/
npm installUsage:
Set the .env variables:
PORT=1337
BASE_SERVER=http://cdn.example.com/
Run!
npm start
To crop the image:
http://cdn.example.com/blah/awsome/potatoe.jpg
You just have to access
http://localhost:1337/crop/200/400/blah/awsome/potatoe.jpg
You can also set the crop gravity:
http://localhost:1337/crop/200/400/blah/awsome/potatoe.jpg?gravity=North or
http://localhost:1337/crop/200/400/blah/awsome/potatoe.jpg?gravity=2
And quality (1-100):
http://localhost:1337/crop/200/400/blah/awsome/potatoe.jpg?quality=70
By default, Crops use quality = 100 and smartcrop to define the best gravity
Valid gravity values:
| Code | Name |
|---|---|
| 0 | Center |
| 1 | NorthWest |
| 2 | North |
| 3 | NorthEast |
| 4 | West |
| 5 | East |
| 6 | SouthWest |
| 7 | South |
| 8 | SouthEast |
| 9 | Smart (default) |
Live demo
I setup a live demo on heroku with BASE_SERVER param as http://, so you can view a cropped version of any image on the web using the URL without http://
Address: https://crops.herokuapp.com/crop/
Example:
Image: http://68.media.tumblr.com/4e097c1aba3644c09121b28c3fc2d468/tumblr_mgtkitzs2I1qlp8dho1_1280.jpg
70% quality 300x300 image: https://crops.herokuapp.com/crop/300/300/68.media.tumblr.com/4e097c1aba3644c09121b28c3fc2d468/tumblr_mgtkitzs2I1qlp8dho1_1280.jpg?quality=70
credits
inspired by zooniverse/static-crop


