NewGraphicsState

矢量图形、文本、页面布局

说明

创建或复用一个 PDF ExtGState,它可组合填充透明度、描边透明度、线宽、线端样式、线连接样式和斜接限制设置,以便稍后通过 SetGraphicsState 应用

语法

Delphi

Function TPDFlib.NewGraphicsState(FillTransparency, StrokeTransparency: Integer; LineWidth: Double; LineCap, LineJoin: Integer; MiterLimit: Double): Integer;

ActiveX

Function PDFlib::NewGraphicsState(FillTransparency As Long, StrokeTransparency As Long, LineWidth As Double, LineCap As Long, LineJoin As Long, MiterLimit As Double) As Long

DLL

int DLNewGraphicsState(int InstanceID, int FillTransparency, int StrokeTransparency, double LineWidth, int LineCap, int LineJoin, double MiterLimit);

参数

FillTransparency填充透明度百分比,0 表示不透明,100 表示不可见,-1 表示省略 /ca
StrokeTransparency描边透明度百分比,其中 0 为不透明,100 为不可见,或使用 -1 省略 /CA
LineWidth当前测量单位下的线宽;0 表示 PDF 细线,-1 表示省略 /LW
LineCap线帽样式:0 = 平头,1 = 圆头,2 = 方头,或 -1 以省略 /LC
LineJoin线连接样式:0 = 尖角,1 = 圆角,2 = 斜角,或使用 -1 省略 /LJ
MiterLimit大于 0 的斜接限制比率,或使用 -1 省略 /ML

返回值

0未提供有效的图形状态属性、某个参数超出范围,或当前 PDF/A 模式不允许透明度
>0所选文档可复用的图形状态 ID

备注

相同设置会复用同一 ExtGState 对象,而非写入重复的资源字典

透明度条目会自动将有效文档版本提升到 PDF 1.4;仅线条状态条目会将其提升到 PDF 1.3

返回的 ID 属于当前文档,应在绘制需使用这些设置的内容前将其传递给 SetGraphicsState

另请参阅

NewSoftMaskGraphicsState、SetGraphicsState、FlattenTransparency

示例