随笔-167  评论-65  文章-0  trackbacks-0
环境:ubuntu 8.1.0 + ruby1.8.7 + rails 2.1.0 + rmagick 2.9.2
最近在用ruby的rmagick库
http://www.imagemagick.org/RMagick/doc/image3.html#resize_to_fit
改变图片的大小,使用了resize, resize_to_fill,resize_to_fit 原来api提供的方法,可以就是不成功,一直提示 undefined method resize_to_fit等方法找不到,网上有n多人遇到,可以我折腾了一个上午还是没搞定,最后准备另辟蹊径的,但是在这里发现了方法,另外一个函数处理的:
http://www.goodbyehelicopter.com/2007/07/25/rails-is-bailing-out-in-rmagick/#comment-1594
那个里面的图片看起来很想无锡的 灵山大佛
原来的那个demo里 AspectGeometry用的是 ! ,最后resize后的图片width:height总是4:3,不知道为什么,最后我把参数换成
Magick::AspectGeometry 
就ok了

我的demo:

# RMagick Test
require 'rubygems'
require 
'RMagick'
include Magick

image_to_alter 
= 'public/upload/52/1.jpg'
img 
= Image.read(image_to_alter)[0]
thumbnail_height 
= 100
thumbnail_width 
= 100
geometry_obj 
= Geometry.new(thumbnail_width, thumbnail_height, nil, nil, Magick::AspectGeometry)
chg_geom_img 
= img.change_geometry(geometry_obj) {|cols, rows, image| image.resize(cols, rows)}
chg_geom_img.write(
"public/upload/52/thumb1.jpg")


api:
http://www.simplesystems.org/RMagick/doc/struct.html#Geometry






write by feng
posted on 2009-06-23 18:24 fl1429 阅读(405) 评论(0)  编辑  收藏 所属分类: Rails

只有注册用户登录后才能发表评论。


网站导航:
 
已访问数:
free counters