- 浏览: 148588 次
- 性别:
- 来自: 北京
文章分类
最新评论
http://doruby.kbmj.com/nakahira_on_rails/20071227/RMagick_
はじめまして、kbmjでruby on railsの開発をしている中平です。
今回私は、RMagickというrubyで画像処理を行うライブラリの使い方を説明いたします。
まず、RMagickについて。
RMagickとはその名のとおり、ImageMagickをrubyで扱えるようにしたものです。
ですのでRMagickを使う場合は、
ruby本体,ImageMagick,RMagickの3つが必要です。
今回はインストール方法は省きまして、インストール後の使い方とか機能について紹介します。
ImageMagickでできることはたいていRMagickでも出来ますので、rubyだと簡単にできることを知っていただければと・・・・
■rmagickの使い方
説明するよりも実際に試したほうがわかりやすいと思いますので、
rubyとrmagickを使って画像処理をするサンプルコードを記載します。
これを適当に保存して、画像を一枚用意していただき、実行すると
画像処理され保存されていきますので、試してみてください。
サンプルだと、画像名はhogehoge.jpgを使っています。
-------------------------------------
require "RMagick" #RMagickを使えるように
#hogehoge.jpg画像を別名で保存
img = Magick::ImageList.new("hogehoge.jpg")
img.write("orig.jpg")
#画像を反転し保存
img = Magick::ImageList.new("orig.jpg")
img_flop= img.flop #左右反転
img_flip= img.flip #上下反転
img_flop.write("flop.jpg")
img_flip.write("flip.jpg")
#2枚の画像をくっつける
#同じサイズの画像じゃないとおかしなことに・・・・
img_append = Magick::ImageList.new("orig.jpg","flop.jpg")
img_append = img_append.append(false) #trueだと上下、falseだと左右にくっつける
img_append.write("append.jpg")
#画像に文字を挿入
img_string = Magick::ImageList.new("orig.jpg")
md = Magick::Draw.new
md.annotate(img_string, 0, 0, 0, 0, "hogehoge") do
md.gravity = Magick::NorthGravity #表示位置
#NorthWestGravity ( 左上 )
#NorthGravity ( 上 )
#NorthEastGravity ( 右上 )
#WestGravity ( 左 )
#CenterGravity ( 真中 )
#EastGravity ( 右 )
#SouthWestGravity ( 左下 )
#SouthGravity ( 下 )
#SouthEastGravity ( 右下 )
md.pointsize = 30 #フォントサイズ
md.fill = "blue" #文字色
md.stroke = "yellow" #文字の縁取り色
end
img_string.write("string.jpg")
#波紋
img = Magick::ImageList.new("orig.jpg")
img_string=img_string.wave(amplitude=10.0, wavelength=100.0)
img_string.write("wave.jpg")
#画像をぼかす
img = Magick::ImageList.new("orig.jpg")
motion_blur=img.blur_image(radius=10.0, sigma=10.0)
motion_blur.write("blur.jpg")
#画像の回転
img = Magick::ImageList.new("orig.jpg")
#右に90度回転
rotate=img.rotate(90)
#左回りの場合は-90
#rotate=img.rotate(-90)
rotate.write("rotate.jpg")
#画像をねじる?
img = Magick::ImageList.new("orig.jpg")
swirl=img.swirl(360)
swirl.write('swirl.jpg')
#画像をねじる(gif動画)
img = Magick::ImageList.new("orig.jpg")
animation = Magick::ImageList.new
animation << img.first.copy
30.step(360,45) { |degrees| animation << img.swirl(degrees) }
animation.delay = 20
animation.iterations = 10000
animation.write('swirl.gif')
------
他にもいろいろ画像処理機能があり、紹介しきれないのですが、また
面白い画像処理機能があったら紹介しようと思います。
はじめまして、kbmjでruby on railsの開発をしている中平です。
今回私は、RMagickというrubyで画像処理を行うライブラリの使い方を説明いたします。
まず、RMagickについて。
RMagickとはその名のとおり、ImageMagickをrubyで扱えるようにしたものです。
ですのでRMagickを使う場合は、
ruby本体,ImageMagick,RMagickの3つが必要です。
今回はインストール方法は省きまして、インストール後の使い方とか機能について紹介します。
ImageMagickでできることはたいていRMagickでも出来ますので、rubyだと簡単にできることを知っていただければと・・・・
■rmagickの使い方
説明するよりも実際に試したほうがわかりやすいと思いますので、
rubyとrmagickを使って画像処理をするサンプルコードを記載します。
これを適当に保存して、画像を一枚用意していただき、実行すると
画像処理され保存されていきますので、試してみてください。
サンプルだと、画像名はhogehoge.jpgを使っています。
-------------------------------------
require "RMagick" #RMagickを使えるように
#hogehoge.jpg画像を別名で保存
img = Magick::ImageList.new("hogehoge.jpg")
img.write("orig.jpg")
#画像を反転し保存
img = Magick::ImageList.new("orig.jpg")
img_flop= img.flop #左右反転
img_flip= img.flip #上下反転
img_flop.write("flop.jpg")
img_flip.write("flip.jpg")
#2枚の画像をくっつける
#同じサイズの画像じゃないとおかしなことに・・・・
img_append = Magick::ImageList.new("orig.jpg","flop.jpg")
img_append = img_append.append(false) #trueだと上下、falseだと左右にくっつける
img_append.write("append.jpg")
#画像に文字を挿入
img_string = Magick::ImageList.new("orig.jpg")
md = Magick::Draw.new
md.annotate(img_string, 0, 0, 0, 0, "hogehoge") do
md.gravity = Magick::NorthGravity #表示位置
#NorthWestGravity ( 左上 )
#NorthGravity ( 上 )
#NorthEastGravity ( 右上 )
#WestGravity ( 左 )
#CenterGravity ( 真中 )
#EastGravity ( 右 )
#SouthWestGravity ( 左下 )
#SouthGravity ( 下 )
#SouthEastGravity ( 右下 )
md.pointsize = 30 #フォントサイズ
md.fill = "blue" #文字色
md.stroke = "yellow" #文字の縁取り色
end
img_string.write("string.jpg")
#波紋
img = Magick::ImageList.new("orig.jpg")
img_string=img_string.wave(amplitude=10.0, wavelength=100.0)
img_string.write("wave.jpg")
#画像をぼかす
img = Magick::ImageList.new("orig.jpg")
motion_blur=img.blur_image(radius=10.0, sigma=10.0)
motion_blur.write("blur.jpg")
#画像の回転
img = Magick::ImageList.new("orig.jpg")
#右に90度回転
rotate=img.rotate(90)
#左回りの場合は-90
#rotate=img.rotate(-90)
rotate.write("rotate.jpg")
#画像をねじる?
img = Magick::ImageList.new("orig.jpg")
swirl=img.swirl(360)
swirl.write('swirl.jpg')
#画像をねじる(gif動画)
img = Magick::ImageList.new("orig.jpg")
animation = Magick::ImageList.new
animation << img.first.copy
30.step(360,45) { |degrees| animation << img.swirl(degrees) }
animation.delay = 20
animation.iterations = 10000
animation.write('swirl.gif')
------
他にもいろいろ画像処理機能があり、紹介しきれないのですが、また
面白い画像処理機能があったら紹介しようと思います。
发表评论
-
Google App Engine and others
2010-09-15 11:27 797有用的技术文章 先记载 有空 研究下 さくっとRails ... -
基于jquery和mini_magick的图片裁剪
2010-09-15 11:07 1454引用网址 http://duyouhua1214.iteye ... -
ruby gem相关命令使用
2010-08-26 12:45 1594gem相关命令使用 1.显示gem的帮助和版本 gem – ... -
深入理解alias, alias_method和alias_method_chain
2010-08-06 17:14 968http://blackanger.blog.51cto.co ... -
Rails 3 特点
2010-08-06 16:38 907真的想留下来 http://railslove.com/w ... -
Fix N+1 Queries
2010-08-06 16:16 913http://rails-bestpractices.com/ ... -
query-reviewer sql explain and review in the page
2010-08-06 12:20 1324引用网址 http://github.com/dsboulde ... -
request-log-analyzer log分析工具
2010-08-06 12:03 1610参考网址: http://github.com/wvanber ... -
IE7 Bug导致Rails Session保存失败
2010-08-06 10:56 971http://www.letrails.cn/archives ... -
Rails保存记录而不更新时间戳
2010-08-06 10:54 1349引用地址: http://www.letrails.cn/a ... -
how to generate qrcode on ror
2010-02-04 16:27 8711. In your rails project, in ... -
rmagick ror 上 安装
2009-11-18 09:06 854rmgick 安装规范 ror很多人现在在用了,但是发现 ... -
Update Rails to 2.2.2 (Rails 2.2.2)
2009-03-08 14:53 986gem install -v=2.2.2 rails Suc ... -
Use helpers in controllers or models
2009-01-19 16:22 924引用http://snipplr.com/view/2505/ ... -
open-flash-chart
2008-11-07 14:07 2429http://pullmonkey.com/2008/7/23 ... -
rake db:migrate
2008-11-07 11:58 1277【ruby on rails】rake db:migrate ... -
rss maker
2008-11-07 11:43 1092http://gdgdlog.net/log/show/130 ... -
acts_as_authenticated
2008-11-07 11:35 1109ruby script/plugin install act ... -
validates
2008-11-07 11:24 1061先週ずっとインフルエンザでダウンしてました。 今日はvail ... -
rails で model の変更を監視するプラグイン
2008-11-07 11:12 1363acts_as_modified モデルの変更を監視して、各 ...
相关推荐
`rmagick-2.3.0-x86-mswin32.gem` 是一个针对Windows平台的Ruby库,主要用于图像处理和操作。这个库是RMagick的封装,它是一个Ruby接口,允许Ruby程序员充分利用ImageMagick和GraphicsMagick这两个强大的图像处理...
安装redmine-3.2.3 ruby on rails 下的插件 rmagick 2.16.0 gem
RMagick-2.12.0-ImageMagick-6.5.6-8-Q8.rar 包含 rmagick-2.13.2.gem ImageMagick-6.5.6-8-Q8-windows-dll.exe RMagick-2.12.0.tar.gz rmagick-2.12.0-x86-mswin32.gem
rails 插件rmagick 2.10.0 gem
马吉克目录介绍RMagick是Ruby编程语言和ImageMagick图像处理库之间的接口。先决条件最新版本的RMagick需要具备这些先决条件。 操作系统Linux * BSD 苹果系统视窗其他* nix类系统Ruby2.3版或更高版本。 您可以从获得...
hornetseye-rmagick 作者: Jan Wedekind版权所有: 2010许可证: GPL 概要 这个 Ruby 扩展实现了必要的转换,以保存和加载存储在 {Hornetseye::MultiArray} 中的图像。 安装 hornetseye-rmagick使用RMagick Ruby 扩展...
redmine的一个包文件,可以用来导出为pdf,图像的功能
使用MiniMagick,ruby进程的内存仍然很小(它生成了ImageMagick的命令行程序mogrify,该程序也占用了一些内存,但是比RMagick小得多)。 请参阅正在 以下。 MiniMagick使您可以访问ImageMagick拥有的所有命令行...
RuCaptcha 这是Rails应用程序的Captcha宝石,它通过C代码生成验证码图像。 注意:根据Ruby China的使用,验证码看起来被OCR解析的可能性低于5%... 没有RMagick; 用于Rails应用; 简单,易用; 高性能。 用法 将
在这个特定的场景中,我们关注的是一个针对 Windows 操作系统的 Ruby Gem 安装包,它包含了 Rmagick 和 ImageMagick 这两个关键组件。 **Rmagick** 是一个 Ruby 绑定库,它提供了与流行的图像处理库 ImageMagick ...
RMagick的安装通常涉及到两个步骤:首先,你需要在系统上安装ImageMagick,然后通过Ruby的Gem包管理器安装RMagick gem。ImageMagick的安装可能需要根据你的操作系统进行不同的配置,确保所有依赖项都已安装。安装...
- `RMagick-2.11.1.tar.gz` 和 `RMagick-2.11.1.tar.lzma`:这些是RMagick库的源代码压缩包,用于编译和安装。通常,如果你的系统上没有预编译的RMagick Gem,你需要下载源码,解压并编译以安装。 安装过程通常...
6. **RMagick**: RMagick是Ruby绑定的ImageMagick库,用于处理图像,如上传的截图或logo。需要先安装ImageMagick,然后安装RMagick的gem。如果在这个过程中遇到问题,可能是因为系统缺少某些依赖,比如`libiconv`,...
PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), IMagick (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify ...
PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), IMagick (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify ...
4. `RMagick-2.12.0-ImageMagick-6.5.6-8-Q8.zip`:RMagick gem,用于图像处理,Redmine中的问题可以附带图片。 5. `xampp-win32-1.8.3-0-VC11-installer.exe`:XAMPP,一个免费的Web服务器套件,包括Apache、MySQL...
雄oster Drosterize是将图像处理代码从Wolfram语言转换为Ruby的另一项实验。 以前是 ,看看。 当前实验的来源是( )的一篇名为“ 。 Drosterize会执行“ ”(自我,包括递归图像)。 这里有一些例子,后面是...