如何用iText获得Paragraph absolut坐标?

时间:2014-03-03 14:21:12

标签: java android pdf pdf-generation itext

我需要获取已添加到文档中的段落的绝对坐标,并加入附近的图像。

一般来说我的问题如下: 我在每行之前都有一张带有图像的清单(已选中/未选中)。我已经这样做但是如果检查项目采用例如2行,那么第二行从页面的开头开始。我想要的是从第一行开始的位置开始第二行。它等于第二行是否有余量。 提前谢谢!

1 个答案:

答案 0 :(得分:1)

我认为你的问题是错误的。请允许我解释一下:您有一个特定的要求:您想要创建一个带有图像(表示已选中/未选中的复选标记)的行,该图像充当子弹。更具体地说:您希望子弹后面的文本正确对齐。这是一个有效的要求。

但是,在你的问题中,你问的是具体的实现。你想要与Y位置(检查一个段落是否有一行或多行)和X位置(使用特定缩进开始第二行)。

虽然可能有可能使用页面事件实现你想要的东西(询问段落的开始和结束位置),但我认为你实际上是在寻求开箱即用的功能:为什么不使用{ {1}}将图像块作为子弹?

我写了一些示例代码ListWithImageAsBullet,其中我使用灯泡作为子弹(在您的情况下,您使用复选框图像)。我已经向List添加了三个项目,第二个项目需要多行。如您所见,第二行正确缩进(您可以使用List类中提供的不同方法来扩充缩进。)

请查看resulting PDF。这就是你要找的东西吗?

如果是这样,这就是它的完成方式:

List

请注意,我将图像缩放到12 x 12磅,因为12pt是默认的字体大小。另外,不要忘记禁用图像的自动缩放(否则,你最终会得到非常小的图像作为子弹)。