使用Wicked_PDF(wkhtmltopdf)在PDF中嵌入SVG

Lee*_*lla 4 barcode wkhtmltopdf ruby-on-rails-3 wicked-pdf

当我尝试在由wicked_pdf(wkhtmltopdf)生成的PDF中包含SVG时,它会显示为空白.知道如何让svg在pdf中显示吗?

应用程序/视图/条码/ to_pdf.html.haml

<descriptive text here>
%object#code_image{:data=>"/barcodes/generate_svg?code=4567898", :type=>"image/svg+xml", :height=>70}
Run Code Online (Sandbox Code Playgroud)

条形码控制器

def generate_svg
  require 'barby'
  require 'barby/barcode/code_128'
  require 'barby/outputter/svg_outputter'
  barcode = Barby::Code128B.new(params[:code])
  render :text => barcode.to_svg({:height=>30, :width => 170})
end


def to_pdf
 render :pdf        => 'file_name'      
end
Run Code Online (Sandbox Code Playgroud)

小智 7

我使用这种嵌入SVG的方法让它工作.

使用标记显示内联SVG

更换

"data:image/svg+xml;base64,PD94bWwgdmVy..."
Run Code Online (Sandbox Code Playgroud)

"data:image/svg+xml;base64,#{Base64.encode64(barcode.to_svg)}"
Run Code Online (Sandbox Code Playgroud)


raw*_*ack 1

我在我的一个 Rails 3.0.x 应用程序中使用 wicked_pdf,它的工作方式就像一个魅力。我使用直接嵌入到 HTML 中的 SVG 代码(erb/haml 视图)。没有或 - 只是具有给定“宽度”和“高度”属性的纯标记。它不适用于某些浏览器(Opera、IE<9),但就我而言,我并不关心这一点。也许你可以尝试这样处理你的东西?