как вырезать фото и выложить на веб в скрипте ruby? - PullRequest
1 голос
/ 16 августа 2010

Сценарий отображения фотографий приведен ниже:

    <% if user.image %>
      <%= image_tag user.image.url('100x20') %>
    <% end %>

Как отображать в Интернете только правую сторону фотографии размером 20 x 20.это означает, что отсечение 80% слева показывает только 20% всей картинки.

Большое спасибо!

1 Ответ

2 голосов
/ 16 августа 2010

Вы можете использовать RMagick на стороне сервера.Вам нужно будет

> gem install rmagick

Или использовать любой менеджер пакетов, который у вас есть.После установки вы сможете запустить следующее:

require 'RMagick'

def cropImage(input_filename)
    original = Magick::ImageList.new(filename)
    # NorthEast says take from the top, right, corner. Start
    # at 20,20 and make the final image 20x20.
    crop = original.crop(NorthEast, 20,20,20,20)
    output_filename = "cropped-foo.jpg"
    crop.write(output_filename)
    return  output_filename
end

Это покажет только верхний правый угол изображения.

Если вы хотите обрезать, вам нужно получить привязанное изображение, как вы хотите.Возможно, используя Net :: HTTP, (или из вашей БД, мне непонятно из вашего поста)

Net::HTTP.start("EXAMPLE.COM") { |http|
  resp = http.get("/path/to/X.jpg")
  open("orig.jpg", "wb") do |file|
    file.write(resp.body)
  end

   cropped_filename = cropImage("orig.jpg")
  #put the resulting file in some location where 
  #you can get to it and add that link to your 
  #template. 
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...