سؤال

أريد أن أكون قادرًا على التحقق من أن الصورة معينة تمامًا أو بارتفاع معين، أو إذا كانت مربعة.

في كتلة التحقق من صحة النموذج الذي has_attachment, ، عندما أحاول الوصول image_size, width, ، أو height, ، دائمًا ما يظهر فارغًا.

لقد طرحت السؤال أيضًا هنا إذا كنت تريد المزيد من التفاصيل.

هل كانت مفيدة؟

المحلول

نعم، تحتاج إلى الإختراق قليلا من أجل الحصول على عمل، ولكن ليس كثيرا. التكيف من معالج الصور الخاصة attachment_fu ل:

 validate :validate_image_size

  private

  def validate_image_size
    w, h = width, height

    unless w or h
      with_image do |img|
        w, h = img.columns, img.rows
      end
    end

    errors.add(:width, "must less than 250px")  if w > 250
    errors.add(:height, "must less than 250px")  if h > 250
  end
end

نصائح أخرى

وأنت لم تحدد ما هي اللغة والنظام الذي نعمل على.

ومع ذلك، بالنسبة لمعظم الأطر على شبكة الإنترنت، وأعتقد أن الطريقة القياسية للقيام بذلك عن طريق استخدام صورة السحر. حاول rel="nofollow تحديد وظيفة. .

هل اتخذت نظرة على مصغرة السحر؟

ويمكنك بوابة استنساخ من هنا:

http://github.com/probablycorey/mini_magick/tree/master

إذا كنت بحاجة إلى معرفة المزيد عن بوابة، وتحقق من هذه الروابط:

http://git.or.cz/course/svn.html (دورة مكثفة مع بوابة، مقارنة مع التخريب)

http://github.com/guides/git-screencasts (قطات للشاشة جيثب)

وانها المجمع روبي حول وظائف يماغيماغيك (غير متأكد إذا attachment_fu يستخدم هذا داخليا)، ولكن انها مطلقة قدم وساق أفضل من RMagick (RMagick غير منتفخة للغاية، والكثير من مشاكل في الذاكرة). Anywho، سوف مصغرة السحر تمكنك من القيام بكل الأشياء التي تحتاج إليها وبعد ذلك بعض. تحقق من README المدرجة في الرابط جيثب أعلاه، وأنها سوف تعطيك المتهدمة على كيفية استخدامها.

وهنا مقتطف:

#For resizing an image
image = MiniMagick::Image.from_file("input.jpg")
image.resize "100x100"
image.write("output.jpg")

#For determining properties of an image...
image = MiniMagick::Image.from_file("input.jpg")
image[:width] # will get the width (you can also use :height and :format)

أعتقد أنك تفتقد العناصر الأساسية التي يجب تثبيتها لاستخدام Attach_fu لتغيير حجم الصورة.لقد عملت مع البرنامج المساعد Attach_fu الذي يعتمد على متابعة الأحجار الكريمة

  1. rmagick-2.11.0

  2. image_science-1.2.0

تأكد من أنك قمت بالتثبيت فوق الأحجار الكريمة وقم بإجراء تغييرات على العرض والارتفاع في has_attachment ثم يمكنك رؤية التغييرات.

حظ سعيد !

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top