如何在表格单元格中绘制矩形?

时间:2016-11-23 11:02:14

标签: java itext itext7

我有一个带有单元格的表,想要在其中放置一个水平条形图。我想在此单元格中使用矩形绘制此图表,以避免使用其他库。

我需要画布来绘制矩形吗?如何将画布放在单元格中以及如何在(单元格的)右页面上创建画布?

谢谢!

1 个答案:

答案 0 :(得分:0)

iText7有两种画布对象:

布局Canvas,一个高级对象,充当高级和低级操作之间的桥梁,允许您将高级对象添加到指定区域。这个画布没有页面的概念。

PdfCanvas,允许您对特定页面或表单XObject执行低级操作,例如绘制线条,在绝对位置添加文字,...

Canvas的构造函数需要表单XObjectPdfCanvas,因此可以通过这种方式为Canvas指定页面。

现在,为了将矩形绘制到单元格中,我建议实现自己的单元格事件,并使用PdfCanvas在事件处理代码中绘制矩形。

一些有用的链接: 关于事件处理程序的教程部分(最后一个例子是你想要的那个):http://developers.itextpdf.com/content/itext-7-jump-start-tutorial/chapter-3-using-renderers-and-event-handlers

使用pdfCanvas绘图: http://developers.itextpdf.com/content/itext-7-jump-start-tutorial/chapter-2-adding-low-level-content