PDFium Delphi Component 文件

AsyncRendering 属性

组件: TPdfView  ·  单元: PDFium
可选标志,告诉视图在长时间渲染期间绘制一个小型“Loading...”覆盖层,以便使用自有工作线程进行后台渲染的应用获得一致的视觉提示

Syntax

property AsyncRendering: Boolean;

Description

AsyncRendering 是异步渲染模式的视觉部分:它 告诉单页绘制路径在 调用方拥有的 worker 渲染当前页面时,在渲染的页面区域上绘制一个小型加载指示器 (通过 LoadingText 和 LoadingColor 配置)。默认值为 False,因此现有应用程序升级无视觉 变化

AsyncRendering 本身不将渲染推到 worker 线程。自 v1.37.0 起,TPdf 按实例序列化渲染 和页面卸载调用,因此 worker 可以通过 同一组件渲染而不会重叠 PDFium 渲染调用。调用方 仍拥有 worker 分派、位图交接和文档生命周期: 在渲染进行中不要变更或卸载文档。使用 FPdfAsync 中的 TPdfFuture<T> 驱动 worker,并让 AsyncRendering / LoadingText / LoadingColor 处理 进行中渲染的视觉提示

加载覆盖层是绘制在页面区域中心的小矩形, 大小适配 LoadingText 标题。需要 不同位置、动画或进度百分比的应用程序 应保持 AsyncRendering 关闭,并直接通过 OnPaint 处理覆盖层

Remarks

Example

PdfView1.AsyncRendering := True;
PdfView1.LoadingText := 'Rendering...';
PdfView1.LoadingColor := clGray;

// 使用 TPdfFuture(FPdfAsync)启动实际的离线程渲染
// worker 拥有自己的 TPdf — 不要共享 PdfView1.Pdf

See Also

LoadingText, LoadingColor, RenderPage