在 php 中使用 svg 原始数据生成 PDF

Posted

技术标签:

【中文标题】在 php 中使用 svg 原始数据生成 PDF【英文标题】:Generate PDF using svg raw data in php 【发布时间】:2018-05-07 01:50:37 【问题描述】:

是否可以在 php 端使用 svg 原始数据(从 fabric js 获取)生成 pdf?

我搜索了一下,找到了这个例子:

https://tcpdf.org/examples/example_058/

但它除了 svg 图像而不是 svg 原始数据,那么如何使用 php 在服务器端使用 svg 原始数据生成 pdf?

【问题讨论】:

【参考方案1】:

只需将您的 svg 原始数据传递给 ImageSVG

$svgRaw = '<svg  >
  <g fill="none">
    <path stroke="red" d="M5 20 l215 0" />
    <path stroke="black" d="M5 40 l215 0" />
    <path stroke="blue" d="M5 60 l215 0" />
  </g>
  Sorry, your browser does not support inline SVG.
</svg>';


$pdf->ImageSVG('@' . $svgRaw, $x=15, $y=30, $w='', $h='', $link='http://www.tcpdf.org', $align='', $palign='', $border=1, $fitonpage=false);

$pdf->Write(0, $txt='', '', 0, 'L', true, 0, false, false, 0);

【讨论】:

以上是关于在 php 中使用 svg 原始数据生成 PDF的主要内容,如果未能解决你的问题,请参考以下文章

SVG 到 PDF 在 Rails 5.0 中无法正常工作

使用 SVG 渲染 Pdf 后,文本内容副本无法正常工作

使用 PHP 生成 SVG 文件

从原始 HTML/CSS 内容从 ASP.NET 生成 PDF?

生成的 PDF 是原始 PDF 大小的两倍

PHP/Ajax PDF 生成超时