在红宝石中缩放图像

时间:2009-11-03 07:20:22

标签: ruby-on-rails

有人能告诉我在Ruby上放大图像的方法吗?

2 个答案:

答案 0 :(得分:0)

你应该更清楚。

如果您想要做的是允许用户放大图像,那么您应该看一下javascript 例如jqzoom,当鼠标在图像上时,它会对图像进行缩放。

如果你想要的是将图像大小调整到特定大小,那么这就是ruby / rails问题 您可以使用paperclip来执行此操作。

在您的模型中,您需要添加以下内容:

has_attached_file :my_image, :styles => { :thumb => ["32x32#", :png] }

“32x32”将是调整大小后图像的大小。

然后按照回形针的自述文件查看要添加到视图的迁移和信息 当您验证表单时,图像将自动上传并调整大小。

如果您不想在调整文件大小之前上传文件,可以直接使用Paperclip::Thumbnail

使用以下内容调整图像大小:

Paperclip::Thumbnail.new('/path/to/your/file', { :geometry => '32x32#' }).make

你会得到你的缩略图。

答案 1 :(得分:0)

图像裁剪有railscast #182

如果您使用的是Paperclip,您可以为缩略图指定不同的尺寸,如下所示:

class Client < ActiveRecord::Base

  LOGO_STYLES = {
    :original => ['1024x768>', :jpg],
    :big      => ['512x384#', :jpg],
    :medium   => ['256x192#', :jpg],
    :small    => ['128x96#', :jpg]
  }

  has_attached_file :logo, :styles => Client::LOGO_STYLES
  attr_protected :logo_file_name, :logo_content_type, :logo_size

最后,如果你已经拥有了你想要的大小的图像,并且你只想改变它在客户端上的外观,那么你的问题不是红宝石 - 它是javascript。 Google为“javascript zoom”而不是“rails zoom”:)

相关问题