Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.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 on rails 发送_数据不发送png数据对吗_Ruby On Rails_Svg_Png - Fatal编程技术网

Ruby on rails 发送_数据不发送png数据对吗

Ruby on rails 发送_数据不发送png数据对吗,ruby-on-rails,svg,png,Ruby On Rails,Svg,Png,我正在一个Rails站点上工作,该站点创建动态svg图像,并允许用户下载他们制作的png文件格式的图像。我在视图中有一个按钮,可以发布到控制器中的下载方法。我的第一个问题是它没有在@Circuit中获取svg数据集,但我现在将它设置为读取包含svg的文件 使用该图像,它会下载一个png文件,但该文件小于1k,并且在尝试查看时无法打开。我已经测试过将图像写入本地服务器上的一个文件,它工作正常,并且图像打开正确,所以问题在于我发送数据设置的方式 我无法让它在@Circuit中使用svg,但我已经让它

我正在一个Rails站点上工作,该站点创建动态svg图像,并允许用户下载他们制作的png文件格式的图像。我在视图中有一个按钮,可以发布到控制器中的下载方法。我的第一个问题是它没有在@Circuit中获取svg数据集,但我现在将它设置为读取包含svg的文件

使用该图像,它会下载一个png文件,但该文件小于1k,并且在尝试查看时无法打开。我已经测试过将图像写入本地服务器上的一个文件,它工作正常,并且图像打开正确,所以问题在于我发送数据设置的方式


我无法让它在@Circuit中使用svg,但我已经让它能够将@Circuit的内容保存为svg文件,然后转换为png文件并下载:

def download

 img=Magick::Image.read("circuit.svg").first {format="svg"}
 img.format = 'PNG'
 send_data img.to_blob ,type: "image/png" , disposition: "attachment"
 end

你能试着把这个斑点寄出去吗?发送数据块,类型:image/png,配置:attachment@steakchaser是的,我试过了,并在alsoI之前尝试过发送,我刚刚用下面的'img=Magick::Image.readRails.root.joinapp/assets/images/logo.png.first{format=png}发送数据img.to_blob,键入:Image/png,处置:附件'。很好。这是在rmagick 2.13.1ok中实现的,这是我从svg转换为png的方式,因为加载png并像您显示的那样使用send_数据确实有效。谢谢你帮我看我的臭虫在哪里。我正在使用rmagick 2.13.1also@steakchaser这可以加载svg文件并作为png发送:'code'def download img=Magick::Image.readcircuit.svg.first{format=svg}img.format='png'send_data img.to_blob,type:Image/png,disposition:attachment end'code',但它没有使用我用于webfonts的样式表。。。但是谢谢你的帮助
def download

 img=Magick::Image.read("circuit.svg").first {format="svg"}
 img.format = 'PNG'
 send_data img.to_blob ,type: "image/png" , disposition: "attachment"
 end