Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 明虾图案_Ruby_Prawn - Fatal编程技术网

Ruby 明虾图案

Ruby 明虾图案,ruby,prawn,Ruby,Prawn,寻找一种可以为对虾添加绘图功能的宝石,我发现它似乎有点过时了。有没有更多的活动gem呢?直接在对虾体内作图没有什么非常活跃的东西,但它是一个高度可配置的活动gem,可以让你制作各种图形 事实上,虾图基本上是一个包装周围的生硬 我的建议是使用gruff生成所需的图表,然后将它们作为图像嵌入到Prawn文档中 所以代码看起来像这样: g = Gruff::Line.new(400) g.title = "Transparent Background" g.theme = { :colors =&

寻找一种可以为对虾添加绘图功能的宝石,我发现它似乎有点过时了。有没有更多的活动gem呢?

直接在对虾体内作图没有什么非常活跃的东西,但它是一个高度可配置的活动gem,可以让你制作各种图形

事实上,虾图基本上是一个包装周围的生硬

我的建议是使用gruff生成所需的图表,然后将它们作为图像嵌入到Prawn文档中

所以代码看起来像这样:

g = Gruff::Line.new(400)
g.title = "Transparent Background"
g.theme = {
  :colors => ['black', 'grey'],
  :marker_color => 'grey',
  :font_color => 'black',
  :background_colors => 'transparent'
}
g.labels = {
  0 => '5/6',
  1 => '5/15',
  2 => '5/24',
  3 => '5/30',
}
g.data(:apples, [-1, 0, 4, -4])
g.data(:peaches, [10, 8, 6, 3])
g.write(path_to_save)

Prawn::Document.generate("graphed-pdf.pdf") do
    text "The image will go right below this line of text."
    image "#{path_to_save}"
end

我创建了一个名为的对虾绘图库,它只依赖对虾,不依赖rMagick和ImageMagick。rMagick和ImageMagick是令人讨厌的依赖项(大文件、安装困难等),与本机解决方案(如对虾图表)相比,它们创建的文件更大

以下是我用对虾图表生成的图形示例:


请随意提交拉取请求-我将合并它们。

@eggie5关于使用gruf with prawn插入图像而不将其保存到磁盘,非常简单:

image StringIO.new(g.to_blob)

有没有办法将图像字节传递给prawn,而不是将其写入磁盘并传递给prawn?@eggie5不可能。