NewSoftMaskGraphicsState

矢量图形、透明度、表单 XObject

说明

创建或复用一个 ExtGState,以将已捕获的 Form XObject 作为 alpha 或亮度软遮罩应用,或者创建写入 /SMask /None 的重置状态

语法

Delphi

Function TPDFlib.NewSoftMaskGraphicsState(CaptureID, MaskType: Integer; Const Backdrop, TransferFunction: WideString): Integer;

参数

CaptureID已捕获的 Form XObject ID;当 MaskType 为 PDF_SOFT_MASK_NONE 时为 0
MaskTypePDF_SOFT_MASK_ALPHA、PDF_SOFT_MASK_LUMINOSITY 或 PDF_SOFT_MASK_NONE
Backdrop空字符串,或包含恰好三个范围为 0 至 1 的背景分量的 PDF 数字数组,用于隔离的 DeviceRGB 透明度组
TransferFunction空字符串、/Identity,或带数值 FunctionType 的 PDF 函数字典、流或间接引用

返回值

返回可重用图形状态 ID,否则返回 0

备注

捕获的表单被配置为隔离的 DeviceRGB 透明组,相同配置会复用一个 ExtGState

绘制蒙版内容前,请使用 SetGraphicsState 应用返回的 ID,然后应用 PDF_SOFT_MASK_NONE 状态以结束蒙版范围

重置状态要求 CaptureID 为 0,且背景和传输函数字符串为空

文档版本提升至 PDF 1.4,而 PDF/A-1 和 PDF/X-1 模式拒绝此操作

另请参阅

SetGraphicsState, BeginFormXObject, SetCapturedPageTransparencyGroup, SetImageSoftMaskEx