ComposeDeferredPageLayers
页面布局、矢量图形、内容流
描述
以稳定的升序 z 索引顺序将每个排队的延迟层放置到其目标页面
语法
Delphi
Function TPDFlib.ComposeDeferredPageLayers: Integer;ActiveX
Function PDFlib::ComposeDeferredPageLayers() As LongDLL
int DLComposeDeferredPageLayers(int InstanceID);返回值
返回已合成图层的数量;未排队图层、录制仍在进行、所选页面不是目标页面、其尺寸已改变或捕获的表单不可用时返回 0
备注
该方法按 z-index 和记录顺序对排队图层排序
负图层按升序插入页面原始内容流之前,零和正图层按升序附加到原始内容流之后
每个合成图层都会添加一个内容流,其中包含一个 Form XObject 放置,因此合成成本与图层内绘制操作数量无关
合成后会恢复所选字体、活动内容层、绘制器状态和字距调整设置
前置条件失败时会保留队列,调用方可重新选择目标页面;页面变更后的失败会清除队列,以防重复放置
示例
PDF.BeginDeferredPageLayer(-10);
DrawBackground(PDF);
PDF.EndDeferredPageLayer;
PDF.BeginDeferredPageLayer(10);
DrawForeground(PDF);
PDF.EndDeferredPageLayer;
if PDF.ComposeDeferredPageLayers<> 2 then
HandleCompositionError;