我建立的一个Console project作为Demo,我向一个已经存在的pdf文件中写入文字,代码如下:
PdfDocument pdfTemple = new PdfDocument(new PdfReader(templateFile), new PdfWriter(templeFile));
Document documentTemple = new Document(pdfTemple, PageSize.A4);
text = new Text(DateTime.Now.ToString("MM/dd/yyy"))
.SetBackgroundColor(ColorConstants.WHITE)
.SetFontSize(10);
documentTemple.Add(new Paragraph(text).SetFixedPosition(1, 503, 710, 60));
documentTemple.Close();
这个一切正常。
但是当我把这个改为web(MVC)的时候,横坐标正常,但是纵坐标只能在50 - 350之间,否则文字在pdf文件中显示不出来。但是我用Console 做demo的时候,文字的纵坐标在40 - 740之间都能正常显示。
我怎么解决这个问题。谢谢
我使用的操作pdf的包是C#版的 Itext7。
我发现不是SetFixedPosition()在 Web Appilcation上失效了,而是作为模板的pdf文件上有有很多空白,可能就是这些空白覆盖住了我写入的内容:
在photoshop中打开模板pdf:
我在红框中的白色区域写入文字就看不到,在其它区域可以正常写入。
不知道怎么解决这个问题。谢谢