c# - Stimulsoft 导出仅包含正方形的 pdf

标签 c# azure pdf report stimulsoft

我正在使用在 Azure 应用服务上运行的 C# WebAPI 中的 Stimulsoft 进行工作。当我将报告导出为 PDF 时,所有文本都呈现为正方形,如下所示

enter image description here

导出为 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/

相关文章:

c# - 访问同一个类中的公共(public)方法需要一个实例?

基于 Azure Blob 存储角色的访问控制

wcf - 在 Azure 上的 WCF 中通过 SSL 配置 webHTTP 和 NetHTTP 绑定(bind)

json - config.GetSection 在 Azure Functions 中不起作用吗?推荐的替代方案是什么?

c# - 如何将 PDF 文件转换为图像

android - 在 Android 中显示 PDF

c# - 未使用的方法和属性对库或可执行文件的影响

c# - try catch 性能 c#

c# - 如何在 Gridview 页脚中添加 2 行

java - 将 LineSeparator 移动到页面底部