Carrierwave Zuschneiden

Ich habe eine CarrierWave ImageUploader, schafft ein paar Versionen von einem original Bild, die müssen zugeschnitten werden, basierend auf Werten, die in meinem Modell (crop_x, crop_y, crop_w, und crop_h).

class ImageUploader < CarrierWave::Uploader::Base

  include CarrierWave::MiniMagick
  ...
  version :t do
    process :cropper
    process :resize_to_fill => [75, 75]
  end
  ...
  def cropper
    manipulate! do |img| 
      img = img.crop "#{model.crop_x}x#{model.crop_y}+#{model.crop_w}+#{model.crop_h}"
      img
    end 
  end

end

Das problem, dass ich habe ist, dass ich brauche, um zu berechnen, einige Standard-cropping-Werte, wenn wir nicht jeden Satz, aber ich weiß nicht, wohin diese Logik. Ich habe versucht, dies in meinem Foto-Modell (das der uploader montiert ist) in einer before_validation aber dies scheint aufgerufen werden, nachdem die cropper-Funktion ausgeführt wurde. Ich denke, dass Es entweder braucht, um sein in der ImageUploader-Datei, oder in einigen Rückruf, der Auftritt, bevor die thumbs erstellt werden.

InformationsquelleAutor Kyle Decot | 2011-07-20
Schreibe einen Kommentar