修复 PDF 渲染超时问题

This article was translated from English: Does it need improvement?
Translated
View the article in English
  • 无法从HTML渲染PDF
  • 无法从URL渲染PDF
  • 生成 PDF 时出现错误
  • 从 URL 生成 PDF 时出错
  • 未指定的本机异常

    这些通用错误信息表示Chrome渲染引擎已指示出现故障。

    应用以下代码片段将生成“Default.log”日志文件,有助于确定故障原因。

IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
IronPdf.Logging.Logger.LogFilePath = "Default.log";

渲染超时

Timeout是IronPDF中实现的一项功能,用于防止应用程序因PDF渲染时间过长而出现死锁和变得无响应,这主要可以帮助用户管理资源,确保诸如CPU、内存和网络带宽等资源不会被占用过久的进程所束缚。 如果PDF渲染过程未能及时完成,将会抛出以下超时错误。

  • 在从HTML渲染PDF时,超时为60秒
  • 渲染来自 URL 的 pdf 超时,时间为 60s
  • 生成 PDF 时超时
  • 从 URL 生成 PDF 时超时
  • 在从HTML渲染PDF时超时
  • 渲染来自 URL 的 PDF 时发生超时

    IronPDF中渲染时间过长可能导致超时错误的原因有很多,例如渲染大型或复杂的PDF文件、检索用于渲染PDF的远程资源/资产,或在渲染过程中出现问题。 但是,覆盖超时持续时间通常可以解决问题。

    要覆盖默认设置,用户可以访问超时属性类中的 ChromePdfRenderOptions 并将其设置为更高值。

RenderingOptions.Timeout = 120; // seconds;

请注意
从 2021.12.4995 版开始,IronPDF 的默认渲染超时时间为 60 秒。

渲染延迟

在某些情况下,IronPDF 渲染了

  • 空白PDF

  • PDF 中的不完整内容

  • PDF 中缺少图像资源

    这个问题可能是因为在调用检索资源内容或资产之前,PDF文档已经被渲染完成,而资源的获取没有及时完成。

    将 RenderDelay 应用于 PDF 渲染器通常有助于解决问题。 这将指示渲染器延迟PDF渲染一段固定时间,以便在PDF渲染之前及时加载内容或资源。 要做到这一点,只需访问渲染延迟()方法,将所需的持续时间设置为方法参数,并将其作为 ChromePdfRenderOptions 属性之一应用于渲染器。

RenderingOptions.WaitFor.RenderDelay(5000);  //miliseconds

请注意
默认渲染延迟时间为 20 毫秒

除了RenderDelay()方法中的其他方法。等待可用的包装器对象。

有关日志和报告错误以供我们的工程师审核的更多信息,请查看如何提出IronPDF的工程支持请求.