PDFKit具有填充,笔触和不透明度的路径

时间:2017-11-16 11:32:00

标签: node.js pdfkit node-pdfkit

我一直在使用带有NodeJS的PDFKit为我们正在开发的应用程序生成PDF,而且我无法设置笔触不透明度并将不透明度填充到路径中。

这是一个图像应该是什么样子: Image from the builder

这就是它在PDF中的显示方式:(忽略几个区域的略微灰色,它的水印) PDF Image

两者的不透明度值应为0.6。这就是我尝试应用填充笔划和不透明度的方法:

pdfDocument.path(pathString);
pdfDocument.lineCap('butt');
pdfDocument.lineJoin('miter');
pdfDocument.lineWidth(strokeWidth);

pdfDocument.fillOpacity(opacity);
pdfDocument.strokeOpacity(opacity);

pdfDocument.fillAndStroke(fillColor, strokeColor, fillRule);

pdfDocument.stroke();

我不明白为什么不对笔画和填充应用不透明度。我已经尝试过只使用不透明度功能并移动两组不透明度但没有任何反复发生。

1 个答案:

答案 0 :(得分:0)

调试库后,从2014年发现此问题

Opacity #259

在设置fillColor之前,我们需要设置strokeColor不透明度和fillAndStroke不透明度。

pdfDocument.path(pathString);
pdfDocument.lineCap('butt');
pdfDocument.lineJoin('miter');
pdfDocument.lineWidth(strokeWidth);

// HERE IS THE TRICK.
pdfDocument.fillColor(fillColor, opacity);
pdfDocument.strokeColor(strokeColor, opacity);

pdfDocument.fillAndStroke(fillColor, strokeColor, fillRule);

pdfDocument.stroke();