如何使用pdfkit创建linearGradient

时间:2013-05-25 14:59:59

标签: node.js pdf gradient linear-gradients pdfkit

我一直在寻找关于如何将linearGradient与pdfkit一起使用的示例 - 请参阅 https://github.com/devongovett/pdfkit/issues/95 “使用doc.linearGradient和doc.radialGradient创建一个渐变对象,传入所需的参数。然后调用对象上的stop方法添加颜色停止。最后,将fillColor设置为渐变对象。”
< / p>

这是我制作的例子:

  

doc.rect(50,50,100,100)
  .linearGradient(60,60,90,   90)
。停止([100,100],   “blue”)
.fillColor(“red”,   1)

但我收到编译错误:

  

的node.js:201
          扔掉; // process.nextTick错误,或第一次打勾时的'错误'事件
TypeError:Object#&lt; PDFLinearGradient&gt;没办法   “填充颜色

谢谢!

1 个答案:

答案 0 :(得分:1)

你很亲密。该错误是因为linearGradient函数返回了一个PDFLinearGradient对象,并且由于您链接了所有内容,因此正在调整渐变而不是文档上的fillColor方法。

此外,渐变stop方法沿着在两个点(x1,y1)到(x2,y2)之间创建的线而不是显式位置获取百分比(从0到1)。

这是一个有效的例子:

var grad = doc.linearGradient(x1, y1, x2, y2);
grad.stop(0, '#000');
grad.stop(1, '#fff');
doc.fillColor(grad);