O'Reilly logo

Professional Ruby on Rails™ by Noel Rappin

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

11.1. Getting Started

I'm going to focus on three different Ruby gems that manage basic graphics transformations — resizing, basic effects, thumbnails, and that kind of thing. The three Ruby gems are wrappers to three different native C libraries, but like a logic puzzle gone slightly awry, there isn't an exact one-to-one correspondence between the gems and the libraries. Two of the gems — RMagick and MiniMagick — can wrap around either ImageMagick or GraphicsMagick, which are two forked versions of the same basic functionality. The third gem, ImageScience, requires a separate graphics library called FreeImage.

As this book was in production, RMagick 2 was released. RMagick 2 does not support GraphicsMagick. Other than that, there are few substantial API differences in the new release. See http://rmagick.rubyforge.org/rmagick2.html for more information.

Installing these gems is somewhat more complex than the typical Ruby gem because the external graphics libraries are so large, have a number of external dependencies, and tend to expect their users to be comfortable with compiling from source (to be fair, it's probably advantageous for performance reasons to compile from source). Unfortunately, this isn't a case where you can just type gem install and be done with it. Don't worry, it's not that hard, and in most cases, there's a helpful installer of one form or another to get you home.

11.1.1. Graphics Packages

RMagick is the oldest and still most commonly used graphics package ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required