2012-01-09 37 views
3

我需要从imagemagick/rmagick库创建一个图像,我应该怎么做? 在PHP中,它与GD库一样在下面完成。如何在rails中创建图像? (从PHP中的imagecreate())

<?php 
     header ("Content-type: image/png"); 
     $handle = ImageCreate (130, 50) or die ("Cannot Create image"); 
     $bg_color = ImageColorAllocate ($handle, 255, 0, 0); 
     ImagePng ($handle); 
    ?> 

在输入中,我给出了图像的颜色,区域标签的图像坐标,就像那个..任何想法?

回答

6

您需要安装在您的系统和RMagick宝石ImagMagick,则:

image = Magick::Image.new(130, 50) 
image.background_color = 'red' 
image.write('someimage.png') 

确保,你的ImageMagick编译PNG支持。

要发送你的形象,你可以做下一件事:

send_data image, :type => 'image/png', :disposition => 'inline' 

然后,除非你希望缓存它,你并不需要保存图像。

关于使用

的更多信息,你可以在这里找到:http://www.imagemagick.org/RMagick/doc/image1.html

2

http://www.imagemagick.org/RMagick/doc/usage.html#reading

require 'RMagick' 
include Magick 
# Create a 100x100 red image. 
f = Image.new(100,100) { self.background_color = "red" } 
f.display 
exit 
+0

嗨anand,我需要有一个图像与给定的坐标一样的线图。感谢您的答案。 – 2012-01-09 12:32:25

2

这是我用来动态地创建内嵌图像:

@placeholder = Magick::Image.new(@book.width, @book.height) 
@placeholder.format = "png" 
@placeholder = "data:image/png;base64,#{Base64.encode64 (@placeholder.to_blob)}" 

和:

<img src="<%= @placeholder %>" /> 

这并不美观,但它现在起作用。