|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.itextpdf.text.pdf.PdfSignatureAppearance
public class PdfSignatureAppearance
Class that takes care of the cryptographic options and appearances that form a signature.
Nested Class Summary | |
---|---|
static class |
PdfSignatureAppearance.RenderingMode
Signature rendering modes |
static interface |
PdfSignatureAppearance.SignatureEvent
An interface to retrieve the signature dictionary for modification. |
Field Summary | |
---|---|
static int |
CERTIFIED_FORM_FILLING
Author signature, form filling allowed |
static int |
CERTIFIED_FORM_FILLING_AND_ANNOTATIONS
Author signature, form filling and annotations allowed |
static int |
CERTIFIED_NO_CHANGES_ALLOWED
Author signature, no changes allowed |
static int |
NOT_CERTIFIED
Approval signature |
static String |
questionMark
An appearance that can be used for layer 1 (if acro6Layers is false). |
Method Summary | |
---|---|
void |
close(PdfDictionary update)
This is the last method to be called when using external signatures. |
PdfTemplate |
getAppearance()
Gets the main appearance layer. |
Certificate |
getCertificate()
|
int |
getCertificationLevel()
Gets the certified status of this document. |
String |
getContact()
Gets the signing contact. |
PdfDictionary |
getCryptoDictionary()
Gets the user made signature dictionary. |
String |
getFieldName()
Gets the field name. |
Image |
getImage()
Gets the background image for the layer 2. |
float |
getImageScale()
Gets the scaling to be applied to the background image. |
PdfTemplate |
getLayer(int layer)
Gets a template layer to create a signature appearance. |
Font |
getLayer2Font()
Gets the n2 and n4 layer font. |
String |
getLayer2Text()
Gets the signature text identifying the signer if set by setLayer2Text(). |
String |
getLayer4Text()
Gets the text identifying the signature status if set by setLayer4Text(). |
String |
getLocation()
Gets the signing location. |
String |
getNewSigName()
Gets a new signature field name that doesn't clash with any existing name. |
int |
getPage()
Gets the page number of the field. |
Rectangle |
getPageRect()
Gets the rectangle that represent the position and dimension of the signature in the page. |
InputStream |
getRangeStream()
Gets the document bytes that are hashable when using external signatures. |
String |
getReason()
Gets the signing reason. |
Rectangle |
getRect()
Gets the rectangle representing the signature dimensions. |
PdfSignatureAppearance.RenderingMode |
getRenderingMode()
Gets the rendering mode for this signature. |
int |
getRunDirection()
Gets the run direction. |
PdfSignatureAppearance.SignatureEvent |
getSignatureEvent()
Getter for property signatureEvent. |
Image |
getSignatureGraphic()
Gets the Image object to render. |
Calendar |
getSignDate()
Gets the signature date. |
PdfStamper |
getStamper()
Gets the PdfStamper associated with this instance. |
File |
getTempFile()
Gets the temporary file. |
PdfTemplate |
getTopLayer()
Gets the template that aggregates all appearance layers. |
boolean |
isAcro6Layers()
Gets the Acrobat 6.0 layer mode. |
boolean |
isInvisible()
Gets the visibility status of the signature. |
boolean |
isNewField()
Checks if a new field was created. |
boolean |
isPreClosed()
Checks if the document is in the process of closing. |
void |
preClose(HashMap<PdfName,Integer> exclusionSizes)
This is the first method to be called when using external signatures. |
void |
setAcro6Layers(boolean acro6Layers)
Deprecated. Adobe no longer supports Adobe Acrobat / Reader versions older than 9 |
void |
setCertificate(Certificate signCertificate)
Sets the certificate used to provide the text in the appearance. |
void |
setCertificationLevel(int certificationLevel)
Sets the document type to certified instead of simply signed. |
void |
setContact(String contact)
Sets the signing contact. |
void |
setCryptoDictionary(PdfDictionary cryptoDictionary)
Sets a user made signature dictionary. |
void |
setImage(Image image)
Sets the background image for the layer 2. |
void |
setImageScale(float imageScale)
Sets the scaling to be applied to the background image. |
void |
setLayer2Font(Font layer2Font)
Sets the n2 and n4 layer font. |
void |
setLayer2Text(String text)
Sets the signature text identifying the signer. |
void |
setLayer4Text(String text)
Sets the text identifying the signature status. |
void |
setLocation(String location)
Sets the signing location. |
void |
setReason(String reason)
Sets the signing reason. |
void |
setRenderingMode(PdfSignatureAppearance.RenderingMode renderingMode)
Sets the rendering mode for this signature. |
void |
setRunDirection(int runDirection)
Sets the run direction in the n2 and n4 layer. |
void |
setSignatureEvent(PdfSignatureAppearance.SignatureEvent signatureEvent)
Sets the signature event to allow modification of the signature dictionary. |
void |
setSignatureGraphic(Image signatureGraphic)
Sets the Image object to render when Render is set to RenderingMode.GRAPHIC
or RenderingMode.GRAPHIC_AND_DESCRIPTION . |
void |
setSignDate(Calendar signDate)
Sets the signature date. |
void |
setVisibleSignature(Rectangle pageRect,
int page,
String fieldName)
Sets the signature to be visible. |
void |
setVisibleSignature(String fieldName)
Sets the signature to be visible. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int NOT_CERTIFIED
public static final int CERTIFIED_NO_CHANGES_ALLOWED
public static final int CERTIFIED_FORM_FILLING
public static final int CERTIFIED_FORM_FILLING_AND_ANNOTATIONS
public static final String questionMark
Method Detail |
---|
public void setCertificationLevel(int certificationLevel)
certificationLevel
- the values can be: NOT_CERTIFIED
, CERTIFIED_NO_CHANGES_ALLOWED
,
CERTIFIED_FORM_FILLING
and CERTIFIED_FORM_FILLING_AND_ANNOTATIONS
public int getCertificationLevel()
public String getReason()
public void setReason(String reason)
reason
- the signing reasonpublic String getLocation()
public void setLocation(String location)
location
- the signing locationpublic String getContact()
public void setContact(String contact)
contact
- the signing contactpublic Calendar getSignDate()
public void setSignDate(Calendar signDate)
signDate
- the signature datepublic InputStream getRangeStream() throws IOException
IOException
public PdfDictionary getCryptoDictionary()
public void setCryptoDictionary(PdfDictionary cryptoDictionary)
cryptoDictionary
- a user made signature dictionarypublic void setCertificate(Certificate signCertificate)
signCertificate
- the certificatepublic Certificate getCertificate()
public PdfSignatureAppearance.SignatureEvent getSignatureEvent()
public void setSignatureEvent(PdfSignatureAppearance.SignatureEvent signatureEvent)
signatureEvent
- the signature eventpublic String getFieldName()
public String getNewSigName()
public boolean isNewField()
true
if a new field was created, false
if signing
an existing field or if the signature is invisiblepublic int getPage()
public Rectangle getRect()
null
or have zero width or height for invisible signaturespublic Rectangle getPageRect()
public boolean isInvisible()
public void setVisibleSignature(Rectangle pageRect, int page, String fieldName)
pageRect
- the position and dimension of the field in the pagepage
- the page to place the field. The fist page is 1fieldName
- the field name or null
to generate automatically a new field namepublic void setVisibleSignature(String fieldName)
fieldName
- the existing empty signature field namepublic PdfSignatureAppearance.RenderingMode getRenderingMode()
public void setRenderingMode(PdfSignatureAppearance.RenderingMode renderingMode)
renderingMode
- the rendering modepublic Image getSignatureGraphic()
public void setSignatureGraphic(Image signatureGraphic)
RenderingMode.GRAPHIC
or RenderingMode.GRAPHIC_AND_DESCRIPTION
.
signatureGraphic
- image rendered. If null
the mode is defaulted
to RenderingMode.DESCRIPTION
public boolean isAcro6Layers()
public void setAcro6Layers(boolean acro6Layers)
false
if you want to ignore this recommendation.
acro6Layers
- if true
only the layers n0 and n2 will be presentpublic PdfTemplate getLayer(int layer)
Consult PPKAppearances.pdf for further details.
layer
- the layer
public Image getImage()
public void setImage(Image image)
image
- the background image for the layer 2public float getImageScale()
public void setImageScale(float imageScale)
imageScale
- the scaling to be applied to the background imagepublic void setLayer2Text(String text)
text
- the signature text identifying the signer. If null
or not set
a standard description will be usedpublic String getLayer2Text()
public Font getLayer2Font()
public void setLayer2Font(Font layer2Font)
layer2Font
- the n2 and n4 fontpublic void setRunDirection(int runDirection)
runDirection
- the run directionpublic int getRunDirection()
public void setLayer4Text(String text)
text
- the text identifying the signature status. If null
or not set
the description "Signature Not Verified" will be usedpublic String getLayer4Text()
public PdfTemplate getTopLayer()
Consult PPKAppearances.pdf for further details.
public PdfTemplate getAppearance() throws DocumentException
Consult PPKAppearances.pdf for further details.
DocumentException
- on errorpublic PdfStamper getStamper()
PdfStamper
associated with this instance.
PdfStamper
associated with this instancepublic File getTempFile()
null
is the document is created in memorypublic boolean isPreClosed()
true
if the document is in the process of closing,
false
otherwisepublic void preClose(HashMap<PdfName,Integer> exclusionSizes) throws IOException, DocumentException
If calling preClose() dont't call PdfStamper.close().
exclusionSizes
must contain at least
the PdfName.CONTENTS
key with the size that it will take in the
document. Note that due to the hex string coding this size should be
byte_size*2+2.
exclusionSizes
- a HashMap
with names and sizes to be excluded in the signature
calculation. The key is a PdfName
and the value an
Integer
. At least the PdfName.CONTENTS
must be present
IOException
- on error
DocumentException
- on errorpublic void close(PdfDictionary update) throws IOException, DocumentException
update
is a PdfDictionary
that must have exactly the
same keys as the ones provided in preClose(HashMap)
.
update
- a PdfDictionary
with the key/value that will fill the holes defined
in preClose(HashMap)
DocumentException
- on error
IOException
- on error
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |