2010-05-03 175 views
5

我使用Java框架iText将图像绘制为pdf。我需要绘制指定宽度的线条。类PdfContentByte中有一个方法setLineWidth(float width)应该改变它。然而,无论我传递什么值作为参数,绘制的线总是非常薄。如何更改iText中的线条粗细?

有一个在setLineWidth javadoc的下面的行:

线宽指定用于行程的路径线的厚度和在用户空间为单位进行测量。

我不知道什么是“空间单位”。 iText中的其他一切似乎都是以点(大约1/72英寸)来衡量的。我无法找到什么是“空间单位”以及如何改变它们。

代码:

to.setLineWidth(thickness); 
to.moveTo(x, y); 
to.lineTo(x + 100, y + 100); 

可变to包含PdfContentByte实例。

回答

9

已解决。 lineTo调用后没有任何笔画方法调用。这就是为什么它在调用stoke方法之前使用另一个行宽。 正确的代码如下所示:

to.setLineWidth(thickness); 
to.moveTo(x, y); 
to.lineTo(x + 100, y + 100); 
to.stroke(); 
相关问题