如何使用itext

时间:2016-05-13 21:33:56

标签: java itext digital-signature

我需要签署PDF文档,但我需要知道将签名放在文档上的哪个位置进行扫描并确定最后一页上是否有可用空间,或者我是否需要创建一个新页面来放置签名以及我是否需要多次签名:Screenshot example

我使用itext来操作我正在使用的PDF文档:

availableSpace = stamper.getWriter().getVerticalPosition(true); // to determine the available space 

这就是我绘制矩形的方式:

    Rectangle dimensiones = reader.getPageSizeWithRotation(numberOfPages);
    PdfContentByte dr = stamper.getOverContent(numberOfPages);

    float right = dimensiones.getBorderWidthRight() * (-1);
    float left = dimensiones.getBorderWidthLeft() * (-1);
    float width = dimensiones.getWidth();
    float height = dimensiones.getHeight();
    log.debug("bottom<<"+dimensiones.getBorderWidthBottom());


    width = width - (right+left+80);
    //Rectangle rect = new Rectangle(36, 36, 559, 806);
    Rectangle rect = new Rectangle(80, 36, width, (height-availableSpace));
    rect.setBackgroundColor(BaseColor.BLACK);
    dr.rectangle(rect);

但是有些PDF的availableSpace比它们各自的高度多peudo code: locator.set_start_ticking_at( datetime_dummy ),所以矩形没有正确显示。

我想要的是确定最后一页上留下的空间以添加签名,如果签名没有足够的空间,则添加页面。

我怎样才能做到这一点?

0 个答案:

没有答案