我有一个在SVG中定义的Bezier曲线,我想用jsPDF绘制。我无法使用jsPDF正确渲染曲线。 如何使用jsPDF绘制下面SVG中定义的Bezier曲线?
SVG中的曲线:
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="192" version="1.1" height="288">
<path fill="black" stroke="black" d="M19.0544,25.8288C24.2384,43.2816,22.3952,46.9968,18.7376,50.510400000000004" stroke-width="0" font=" 10pt Arial"></path>
</svg>
我使用jsPDF尝试曲线:
var doc = new jsPDF();
doc.lines([[24.2384, 43.2816, 22.3952, 46.9968, 18.7376, 50.5104]], null, null, [1, 1], 'FD');
渲染时SVG产生的内容(左)和我的jsPDF代码产生的内容(右):
答案 0 :(得分:2)
我没有看到您的代码中反映的初始移动。根据我对文档的阅读,这不应该更像是以下内容吗?
var doc = new jsPDF();
doc.lines([[24.2384, 43.2816, 22.3952, 46.9968, 18.7376, 50.5104]], 19.0544,25.8288, [1, 1]);
<强>更新强>
没有注意到文档说coords是相对的(感谢Pomax),所以试试吧。
var doc = new jsPDF();
var x = 19.0544;
var y = 25.8288;
doc.lines([[24.2384-x, 43.2816-y, 22.3952-x, 46.9968-y, 18.7376-x, 50.5104-y]], x,y, [1, 1]);