Simple thumbnail generation server
sudo apt-get install imagemagick graphicsmagick
git clone [email protected]:gnuns/crops.git
cd crops/
npm install
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
Code | Name |
---|---|
0 | Center |
1 | NorthWest |
2 | North |
3 | NorthEast |
4 | West |
5 | East |
6 | SouthWest |
7 | South |
8 | SouthEast |
9 | Smart (default) |
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/
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
inspired by zooniverse/static-crop