private void TimestampPdf()
{
using (var pdfReader = new PdfReader(this.PdfProcessingPath))
{
using (var pdfStamper = new PdfStamper(pdfReader, new FileStream(this.PdfPath, FileMode.Create)))
{
var parentField = PdfFormField.CreateTextField(pdfStamper.Writer, false, false, 0);
parentField.FieldName = FieldName;
var lineSeparator = new LineSeparator();
for (var pageNumber = 1; pageNumber <= pdfReader.NumberOfPages; pageNumber++)
{
var pdfContentByte = pdfStamper.GetOverContent(pageNumber);
TextField textField = null;
if (this.Orientation == PdfOrientation.Portrait)
{
lineSeparator.DrawLine(pdfContentByte, PortraitFieldLeftX, PortraitFieldRightX, PortraitFieldUnderlineHeight);
textField = new TextField(pdfStamper.Writer, new Rectangle(PortraitFieldLeftX, PortraitFieldLeftY, PortraitFieldRightX, PortraitFieldRightY), null);
textField.Visibility = TextField.HIDDEN_BUT_PRINTABLE;
}
var childField = textField.GetTextField();
parentField.AddKid(childField);
childField.PlaceInPage = pageNumber;
}
pdfStamper.AddAnnotation(parentField, 1);
var pdfAction = PdfAction.JavaScript(LoadTimestampScript(), pdfStamper.Writer);
pdfStamper.Writer.SetAdditionalAction(PdfWriter.WILL_PRINT, pdfAction);
}
}
}