Create image, send to rails

Hi, I’m new to this language, so any help will be welcome.

I’m trying to create images at random, not a problem with this, and I
can do
it on ruby alone saving the image to the filesystem and watching it
later on
a viewer.

Buy when I try to use RoR, like creating the image on the fly, not
saving it
to the filesystem, and presenting it on the browser… well, i get
confused. All I can do so far, it’s to show the image i have generated
on
ruby before.

btw, i’m using RMagick to do the trick.

On Jan 5, 2008 12:21 PM, macaco [email protected] wrote:

btw, i’m using RMagick to do the trick.

You can probably use send_data in your controller for this.

On Jan 5, 2008 4:30 PM, Bira [email protected] wrote:

saving it
ActionController::Streaming

Thanks, that was helping, but as I was having troubles with rmagic and
windows, i decided to switch to linux

problem is, after i installed everything listed on
http://rmagick.rubyforge.org/install-linux.html, trought apt-get on
debian,
once I try to run the gem, this is what I get:

*macaco@ig88:/devel/rtst$ sudo gem install rmagick -r
Building native extensions. This could take a while…
ERROR: While executing gem … (Gem::Installer::ExtensionBuildError)
ERROR: Failed to build gem native extension.

ruby extconf.rb install rmagick -r
extconf.rb:1:in `require’: no such file to load – mkmf (LoadError)
from extconf.rb:1

Gem files will remain installed in /var/lib/gems/1.8/gems/rmagick-2.0.0
for
inspection.
Results logged to /var/lib/gems/1.8/gems/rmagick-2.0.0
/ext/RMagick/gem_make.out*

Any help?

It seems that you don’t have building tools, try installing ruby1.8-dev
and
build-essential, libgraphicsmagick1-dev packages.

Juan M.

Thanks Juan M., but it was a little more trickier, had to download
the
ImageMagick from ftp://ftp.imagemagick.org/pub/ImageMagick/ because
debian
gutsy only have the 6.2.4 version, but ruby works with 6.3

anyway, I have this in my controller:

class GenerateController < ApplicationController
require ‘RMagick’
include Magick
def index
end

def generate
render :text => “

hello world


end

def img
imgl = Magick::Image.new(100, 100) { self.background_color = ‘red’ }
img.format = ‘JPG’
send_data(imgl.to_blob, {:type => ‘image/jpeg’, :disposition =>
‘inline’})
end

end

but I get this error in the browser:

SystemStackError in GenerateController#img
stack level too deep

RAILS_ROOT: ./script/…/config/…
Application Trace | Framework Trace |
Full
Trace
/devel/rtst/app/controllers/generate_controller.rb:13:in img' /devel/rtst/app/controllers/generate_controller.rb:13:inimg’

Any help?

On Jan 8, 2008, at 9:16 AM, macaco wrote:

ruby extconf.rb install rmagick -r
extconf.rb:1:in `require’: no such file to load – mkmf (LoadError)
from extconf.rb:1

you ruby is broken. this file cannot be missing in a fully functional
ruby.

a @ http://codeforpeople.com/

Yeah, that was it… i’m sorry for my stupid error

def img
imgl = Magick::Image.new(100, 100) { self.background_color = ‘red’ }
img.format = ‘JPG’ <<<--------- img.format = 'JPG or imgl.format =
‘JPG’
?
send_data(imgl.to_blob, {:type => ‘image/jpeg’, :disposition =>
‘inline’})
end