【问题标题】:SVG Graph in TCPDF is incorrectly renderedTCPDF 中的 SVG 图形渲染不正确
【发布时间】:2022-01-31 10:45:51
【问题描述】:

我想在 TCPDF 文档中包含一个 SVG 图像文件。我用 SVGGRaph 绘制图形,将其保存到文件中。然后我将文件导入到 TCPDF。

当我自己查看 .svg 文件时,它会正确呈现。但是导入TCPDF时,坐标轴和刻度线都是错误的!

为什么轴会偏移?快把我逼疯了。

svg 图表是使用 SVGGraph 完成的 - 只是他们的简单示例 - 请参见下面的代码:

    $graph =  new Goat1000\SVGGraph\SVGGraph(500, 400);
    $graph->Values(1, 4, 8, 9, 16, 25, 27); 
    $output = $graph->fetch('LineGraph');
    file_put_contents($full_svg_image_path, $output);

现在使用 TCPDF 导入 pdf 文档:

$tcpdf->ImageSVG($full_svg_image_path, $x=15, $y=100, $w=80, $h='', $link='', $align='', $palign='', $border=0, $fitonpage=false);
$tcpdf->Output($full_file_name, 'F');

图片 1 - 直接显示 svg 文件

图 2 - 导入 TCPDF 文档后

【问题讨论】:

  • 可以修改svg文件吗?我相信问题是文本对齐。请确保 text-anchor="end"
  • @enxaneta - 我检查了 svg 文件,并且 text-anchor 正确设置为“end”,因此当我在浏览器中显示 svg 文件时它正确显示。 TCPDF 会改变这一点吗?我可以覆盖它吗?

标签: php pdf svg tcpdf svggraph


【解决方案1】:

在代码的前面,我已经 setCellMargins 为表格做准备。这就是导致文本在 SVG 图形呈现中发生偏移的原因。

我什至没有考虑过干扰。经验教训。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-26
    • 2021-10-29
    • 2012-06-23
    • 2022-11-15
    • 2016-01-13
    • 1970-01-01
    • 2020-02-10
    • 2014-12-24
    相关资源
    最近更新 更多