利用iTextSharp生成PDF,在本地调试和运行是可以的,发布到服务器上之后就报“The document has no pages.”的错误,经过排查,是字体的问题:
BaseFont baseFont = BaseFont.CreateFont("C:\\WINDOWS\\FONTS\\STSONG.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
这一句,STSONG.TTF是华文宋体,在本机系统有这个字体,但是服务器环境没有,所以会报错。换成服务器有的字体就可以了。
比如黑体:
BaseFont baseFont = BaseFont.CreateFont("C:\\WINDOWS\\FONTS\\SIMHEI.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
本文介绍在使用iTextSharp生成PDF时遇到的“Thedocumenthasnopages.”错误,详细解释了此问题源于字体资源缺失,并提供了解决方案,即确保服务器环境拥有正确的字体文件。
1991





