property AsyncRendering: Boolean;
AsyncRendering은 비동기 렌더링 패턴의 시각 절반입니다. 호출자가 소유한 워커가 현재 페이지를 렌더링하는 동안
단일 페이지 페인트 경로가 작은 로딩 표시기(LoadingText와
LoadingColor로 구성)를 렌더링된 페이지 영역 위에 그리게 합니다. 기본값은
False라서 기존 애플리케이션은 시각 변화 없이
업그레이드됩니다
AsyncRendering은 자체적으로 렌더링을 워커
스레드로 넘기지 않습니다. v1.37.0부터 TPdf는 인스턴스별로 렌더
및 페이지 언로드 호출을 직렬화하므로, 워커가 PDFium 렌더 호출을 겹치지 않고 같은 컴포넌트로 렌더링할 수 있습니다. 그래도 워커
디스패치, 비트맵 인수인계, 문서 수명은 호출자가 소유하므로,
렌더가 진행 중인 동안에는 문서를 바꾸거나 언로드하지 마세요. 워커를
구동하려면 FPdfAsync의 TPdfFuture<T>를 쓰고,
진행 중인 렌더 동안의 시각 표시는 AsyncRendering / LoadingText / LoadingColor에 맡기세요
로딩 오버레이는 페이지 영역 중앙에 그려지는 작은 사각형으로, LoadingText 캡션 크기에 맞춰집니다. 다른 위치, 애니메이션, 진행률 백분율이
필요한 애플리케이션은 AsyncRendering을 끄고 오버레이를
OnPaint로 직접 처리해야 합니다
PdfView1.AsyncRendering := True;
PdfView1.LoadingText := 'Rendering...';
PdfView1.LoadingColor := clGray;
// Kick off the actual off-thread render with TPdfFuture (FPdfAsync).
// The worker owns its own TPdf — DO NOT share PdfView1.Pdf.