【发布时间】:2016-08-17 16:15:26
【问题描述】:
以同样的方式创建 2 个 PdfSignatureFormFields,我在 Adobe Reader 中得到了 2 个不同显示的字段:一个带有指示签名字段的小图片,另一个没有指示。
我使用 Cell setNextRenderer 调用来创建这些字段,如下一个摘录所示:
static private Cell createSignatureFieldCell(PdfDocument document, String name, String label, PdfFont font) {
Cell cell = new Cell();
cell.setHeight(100);
cell.setNextRenderer(new SignatureCellEvent(cell,name,label));
return cell;
}
static private class SignatureCellEvent extends CellRenderer
{
protected String fieldname;
protected String labelcontent;
public SignatureCellEvent(Cell modelElement, String fieldname,String label) {
super(modelElement);
this.fieldname=fieldname;
this.labelcontent=label;
}
@Override
public void draw(DrawContext drawContext)
{
float x = getOccupiedAreaBBox().getLeft() ;
float y = (getOccupiedAreaBBox().getTop() + getOccupiedAreaBBox().getBottom()) / 2;
PdfDocument doc=drawContext.getDocument();
PdfAcroForm form=PdfAcroForm.getAcroForm(doc, true);
Rectangle rect = new Rectangle(x, y - 10, 50, 50);
PdfSignatureFormField field = PdfFormField.createSignature(doc,rect);
field.setFieldName(fieldname);
field.setRequired(true);
form.addField(field);
}
}
【问题讨论】:
-
请分享有问题的pdf。
标签: java pdf digital-signature itext7