微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么Itext7 .NET 中SetFixedPosition() 的纵坐标在Web 应用程序中不能正常工作?

如何解决为什么Itext7 .NET 中SetFixedPosition() 的纵坐标在Web 应用程序中不能正常工作?

我使用 itext7 .NET 制作了一个控制台项目的演示,以将文本添加到现有的 pdf 中。代码如下:

            PdfDocument pdfTemple = new PdfDocument(new PdfReader(templateFile),new PdfWriter(templeFile));

            Document documentTemple = new Document(pdfTemple,PageSize.A4);
            
            Text text = new Text(string.Format(@"{0} / {1} ",month,year))
                .SetBackgroundColor(ColorConstants.WHITE)
                .SetBold()
                .SetFontSize(11);
            documentTemple.Add(new Paragraph(text).SetFixedPosition(1,424,740,60));

            text = new Text(DateTime.Now.ToString("MM/dd/yyy"))
                .SetBackgroundColor(ColorConstants.WHITE)
                //.SetBold()
                .SetFontSize(10);
            documentTemple.Add(new Paragraph(text).SetFixedPosition(1,503,710,60));

            documentTemple.Close();

它在控制台项目演示中运行良好。但是当我在 Web 应用程序(MVC、.NET4.7.2)中使用相同的代码时,它不起作用。创建的pdf文件只能显示纵坐标在50-350之间的文字

我需要在 pdf 文件上的位置添加文本,纵坐标在 40 到 740 之间。如何让它在我的 Web 应用程序(MVC、.NET4.7.2)中工作?

谢谢。

补充:

我发现如果我用photoshop打开模板pdf(我在里面写文本),我会得到这样的屏幕:

pdf screen

如果我在上面屏幕截图中显示的白色区域中写入文本,则文本将不会显示在 pdf 文件中。但如果我将文本写入另一个区域,文本将显示在 pdf 文件中。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。