blob: 1ff37ba996ae7852be0498d5547e94beee26cb43 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
---
title: feComposite
slug: Web/SVG/Element/feComposite
tags:
- SVG
- SVG滤镜
- 元素
- 需要兼容性表
- 需要示例
translation_of: Web/SVG/Element/feComposite
---
<div>{{SVGRef}}</div>
<p>该滤镜执行两个输入图像的智能像素组合,在图像空间中使用以下Porter-Duff合成操作之一:over、in、atop、xor。另外,还可以应用一个智能组件<code>arithmetic操作(结果被压到[0,1]范围内)。</code></p>
<p><code><font face="Open Sans, Arial, sans-serif">该</font>arithmetic操作对组合来自</code>{{SVGElement("feDiffuseLighting")}}滤镜和来自{{SVGElement("feSpecularLighting")}} 滤镜的<code>输出以及组合纹理数据很有用</code>。如果选择了<code>arithmetic</code>操作,每个结果像素都要经过下面的方程式的计算:</p>
<pre>result = k1*i1*i2 + k2*i1 + k3*i2 + k4
</pre>
<p>在这里:</p>
<ul>
<li><code>i1</code>和<code>i2标</code>示了输入图像相应的像素通道值,分别映射到{{SVGAttr("in")}}和{{SVGAttr("in2")}}。</li>
<li><code>k1、k2、k3</code>和<code>k4标示了同名的属性值。</code></li>
</ul>
<h2 id="用法">用法</h2>
<p>{{svginfo}}</p>
<h2 id="示例">示例</h2>
<h2 id="属性">属性</h2>
<h3 id="全局属性">全局属性</h3>
<ul>
<li><a href="/en/SVG/Attribute#Core" title="en/SVG/Attribute#Core">核心属性</a> »</li>
<li><a href="/en/SVG/Attribute#Presentation" title="en/SVG/Attribute#Presentation">外观属性</a> »</li>
<li><a href="/en/SVG/Attribute#Filter" title="en/SVG/Attribute#Filter">滤镜属性</a> »</li>
<li>{{ SVGAttr("class") }}</li>
<li>{{ SVGAttr("style") }}</li>
</ul>
<h3 id="专有属性">专有属性</h3>
<ul>
<li>{{ SVGAttr("in") }}</li>
<li>{{ SVGAttr("in2") }}</li>
<li>{{ SVGAttr("operator") }}</li>
<li>{{ SVGAttr("k1") }}</li>
<li>{{ SVGAttr("k2") }}</li>
<li>{{ SVGAttr("k3") }}</li>
<li>{{ SVGAttr("k4") }}</li>
</ul>
<h2 id="DOM_接口">DOM 接口</h2>
<p>该元素实现了<code><a href="/en/DOM/SVGFECompositeElement" title="en/DOM/SVGFECompositeElement">SVGFECompositeElement</a></code>接口。</p>
<h2 id="参见">参见</h2>
<ul>
<li>{{ SVGElement("filter") }}</li>
<li>{{ SVGElement("animate") }}</li>
<li>{{ SVGElement("set") }}</li>
<li>{{ SVGElement("feBlend") }}</li>
<li>{{ SVGElement("feColorMatrix") }}</li>
<li>{{ SVGElement("feComponentTransfer") }}</li>
<li>{{ SVGElement("feConvolveMatrix") }}</li>
<li>{{ SVGElement("feDiffuseLighting") }}</li>
<li>{{ SVGElement("feDisplacementMap") }}</li>
<li>{{ SVGElement("feFlood") }}</li>
<li>{{ SVGElement("feGaussianBlur") }}</li>
<li>{{ SVGElement("feImage") }}</li>
<li>{{ SVGElement("feMerge") }}</li>
<li>{{ SVGElement("feMorphology") }}</li>
<li>{{ SVGElement("feOffset") }}</li>
<li>{{ SVGElement("feSpecularLighting") }}</li>
<li>{{ SVGElement("feTile") }}</li>
<li>{{ SVGElement("feTurbulence") }}</li>
<li><a href="/en/SVG/Tutorial/Filter_effects" title="en/SVG/Tutorial/Filter_effects">SVG教程:滤镜效果</a></li>
</ul>
|