我正在使用在 Azure 应用服务上运行的 C# WebAPI 中的 Stimulsoft 进行工作。当我将报告导出为 PDF 时,所有文本都呈现为正方形,如下所示
导出为 HTML 时,报告是正确的。在本地或 Azure 中的虚拟机中,pdf 文件是正确的,问题仅出现在 Azure 应用服务上。
这是我用来导出pdf的代码。我使用的字体是Arial,有些部分是粗体或斜体。
var settings = new StiPdfExportSettings() { ImageQuality = 1.0f, ImageResolution = 300, EmbeddedFonts = true, StandardPdfFonts = true };
report.ExportDocument(StiExportFormat.Pdf, ms, settings);
有人可以帮助我吗?
最佳答案
PDF 导出需要访问报告中使用的字体文件。 Stimulsoft 报告引擎使用 GDI+ 来访问有关字体的必要信息。
Azure 网站对 GDI+ 的访问有限制。
唯一的出路是使用 Standard PDF fonts .
或者您可以在本地计算机上准备 PDF 导出所需的字体。在这种情况下,您不需要访问 GDI+ 函数。
工作原理:
使用 the FontInfoCreator utility ,您创建字体文件 (*.fiz)
在应用程序的初始化部分将这些文件加载到字体存储中。
示例代码:
Stimulsoft.Report.Export.FontsInfoStore.LoadFontInfoToStore("Arial", @"fontstore\Arial.fiz");
关于c# - Stimulsoft 导出仅包含正方形的 pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36427939/