2012-06-20 2 views
0

Я исследовал этот вопрос большую часть дня. У меня есть существующее приложение, которое использует iTextSharp для подписывания документов PDF. Цифровая подпись существует, и текстовое представление отображается в поле Подписи в PDF, но изображение подписи не отображается.iTextSharp Подпись Изображение не показано в PDF Поле подписи

Ниже приведен код. Я ценю любую помощь/советы, которые вы можете предложить.

if (signatureBitmap != null) 
{ 
    if (reader == null) reader = new PdfReader(PDFByteArray); 

    pdfStamper = PdfStamper.CreateSignature(reader, outputStream, PDFVersion, null, true); 

    PdfSignatureAppearance signatureAppearance = pdfStamper.SignatureAppearance; 

    //Add digital certificate to field 
    signatureAppearance.SetCrypto(Key, Certificate, null, PdfSignatureAppearance.SELF_SIGNED); 
    signatureAppearance.Reason = Reason; 
    signatureAppearance.Location = Location; 

    signatureAppearance.Render = PdfSignatureAppearance.SignatureRender.GraphicAndDescription; 

    if (signatureBitmap != null) 
    { 
     iTextSharp.text.Image signatureFieldImage = iTextSharp.text.Image.GetInstance(signatureBitmap, System.Drawing.Imaging.ImageFormat.Bmp); 
     signatureAppearance.SignatureGraphic = signatureFieldImage; 
    } 

    signatureAppearance.Acro6Layers = acroLayer; 
    signatureAppearance.SetVisibleSignature(acrobatSignatureFieldName); 
    pdfStamper.Close(); 
    reader.Close(); 
    reader = null; 

} 

ответ

0

вам нужно положение о вашей подписи, попробуйте с этим:

Rectangle rSignature= new Rectangle(100,100); 
signatureAppearance.setVisibleSignature(rSignature, 1, "a name"); 
Смежные вопросы