自定义 Pdf 签名外观:IText7

问题描述 投票:0回答:0

我想自定义PDF格式的数字签名外观。我正在使用 IText7 (C#)。以下是我在 C# 中的代码摘录:

PdfSignatureAppearance psa = signer.GetSignatureAppearance(); psa.SetRenderingMode(PdfSignatureAppearance.RenderingMode.GRAPHIC);

          psa.SetSignatureGraphic(ImageDataFactory.Create(File.ReadAllBytes("test.jpg")));

            PdfFormXObject pdfFormXObject = psa.GetLayer2();                    
            Canvas canvas = new Canvas(pdfFormXObject, pdfDoc);

            PdfCanvas pdfCanvas = canvas.GetPdfCanvas(); 
            pdfCanvas.AddImageFittedIntoRectangle(ImageDataFactory.Create(File.ReadAllBytes("test.jpg"), rect, false);

            BackgroundImage.Builder builder = new BackgroundImage.Builder();                    
            PdfImageXObject imageXObject = new PdfImageXObject(ImageDataFactory.Create(signingMetadata.SignatureAppearance.SignatureBackgroundImg));                    
            builder.SetImage(imageXObject);
            canvas.SetBackgroundImage(builder.Build());
                                
            iText.Layout.Element.Text line1 = new iText.Layout.Element.Text("Test Line1");                    
            Paragraph p1 = new Paragraph().Add(line1);
            p1.SetTextAlignment(iText.Layout.Properties.TextAlignment.LEFT);
            canvas.Add(p1);

            iText.Layout.Element.Text line2 = new iText.Layout.Element.Text("Test Line2");
            Paragraph p2 = new Paragraph().Add(line2);
            p2.SetTextAlignment(iText.Layout.Properties.TextAlignment.LEFT);
            canvas.Add(p2);
            canvas.Close();

文本可见且对齐正确,但是背景图像不出现。这里可能缺少什么?

c# pdf digital-signature itext7
© www.soinside.com 2019 - 2024. All rights reserved.