一个PDF应用程序维护内部数据结构称为图形状态,它生存了当前图形控制参数。这些参数界说在全局框架,在全局框架内可实行图形操纵符。比方:f(填充)操纵符隐式调用当前颜色这个参数,S(描边)操纵符调用了当火线框这个参数从图形状态。
这个说法比较的官方,我个人的理解就是它生存了画笔画刷,线性等一系列跟画图相干的属性,在调用图形操纵符时,直接采用图形状态中的参数来填充画笔画刷等。
目前装备无关的图形状态参数主要有下面几个
参数类型值CTMarray当前变更矩阵,比方: a b c d e f cmclipping path(internal)当前剪切路径,初始值:CropBoxcolor spaceName or array当前颜色空间,分为 fill color(填充色) & stroke color(描边色),初始值:DeviceGraycolor(various)当前颜色。初始值:blacktext statevarious有9个图形状态参数组成,用于文本显示。line widthnumber线宽。初始值:1.0line capinteger线帽,线2端的样式。初始值:0 J(square butt cap)line joininteger线连接的样式 。初始值:0 j (miter join)miter limitinteger尖角限量。 初始值:10 M (11.5°)dash patternarray and number虚线。初始值:[] 0 dblend modename or array当前混淆模式。初始值:Normalsoft maskdictionary or name指定阴影的形状或阴影不透明值用于透明图像模式。初始值:Nonealpha constantnumber透明度。初始值:1.0。 CA(for stroke) ca(fill)alpha sourcebooleanTrue: 由 SMask 指定透明模式
false:由 CA 或 ca 指定透明值 我们目前先容过的图形状态主要有变更矩阵以及裁剪地区。剩下的会在背面的内容中依次先容
图形对象的状态变更