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 |
|---|---|
| MaskType | PDF_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