2011-11-05 3 views
2

내 서비스에는 웹 버전과 iPhone 버전이 있습니다. iPhone에서는 사용자가 업로드 할 때 자르도록하여 정사각형 버전을 제출하도록합니다. 우리는 웹 사이트에서도 업로드를 허용하고 있지만 그러한 기능은 없습니다.mini_magick으로 이미지 크기 조정

이와 같이 업로드 된 이미지를 612 * 612 영역에 맞추기 위해 크기를 조정하고 싶습니다. 이것을 달성하는 가장 좋은 방법은 무엇입니까? 내가 사용하고

루비/mini_magick

답변

9
그냥 MiniMagick에서 resize 방법을 사용하십시오

는 Github에서 페이지에 대한 예제가있다 :

https://github.com/probablycorey/mini_magick

은 아마도 당신은이가 이미지는 다음과 같이 메모리에 바이트로 묶여 있습니다.

image = MiniMagick::Image.read(your_image_bytes) 
image.resize('612x612') 
scaled_image_bytes = image.to_blob 
# Or image.write(filename) 
높이 및 소정의 폭을 유지 종횡비

최대치 :

MiniMagick는 fine manual로부터하는 WxH 형상 크기에 대한 표준 ImageMagick이 형상 문자열을 사용.

'612x612'을 사용하면 가로 세로 비율을 유지하면서 이미지의 크기를 612 픽셀로 조정할 수 있습니다.

웹 사용자가 올린 이미지를 자르면 정사각형에 맞게 잘릴 수 있도록 Jcrop을 사용할 수도 있습니다.

+1

다른 가치있는 보물은 CarrierWave입니다. CarrierWave는 MiniMagick으로 작업 할 때 상당한 고통을 겪습니다. resize_and_pad를 포함하여 몇 가지 옵션이 있습니다. 정사각형 이미지를 만들 수 있지만 중요한 것은 잘라 내지 않습니다. 우리는 이것을 JCrop과 함께 사용합니다. –