diff options
| author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
|---|---|---|
| committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
| commit | 33058f2b292b3a581333bdfb21b8f671898c5060 (patch) | |
| tree | 51c3e392513ec574331b2d3f85c394445ea803c6 /files/zh-cn/web/api/canvasgradient | |
| parent | 8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff) | |
| download | translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2 translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip | |
initial commit
Diffstat (limited to 'files/zh-cn/web/api/canvasgradient')
| -rw-r--r-- | files/zh-cn/web/api/canvasgradient/addcolorstop/index.html | 172 | ||||
| -rw-r--r-- | files/zh-cn/web/api/canvasgradient/index.html | 104 |
2 files changed, 276 insertions, 0 deletions
diff --git a/files/zh-cn/web/api/canvasgradient/addcolorstop/index.html b/files/zh-cn/web/api/canvasgradient/addcolorstop/index.html new file mode 100644 index 0000000000..1fd9a8152f --- /dev/null +++ b/files/zh-cn/web/api/canvasgradient/addcolorstop/index.html @@ -0,0 +1,172 @@ +--- +title: CanvasGradient.addColorStop() +slug: Web/API/CanvasGradient/addColorStop +translation_of: Web/API/CanvasGradient/addColorStop +--- +<div>{{APIRef("Canvas")}}</div> + +<p><code><strong>CanvasGradient</strong></code><strong><code>.addColorStop()</code></strong> 方法添加一个由<strong><code>偏移值</code></strong>和<strong><code>颜色值</code></strong>指定的断点到渐变。如果偏移值不在<code>0</code>到<code>1</code>之间,将抛出<code>INDEX_SIZE_ERR</code>错误,如果颜色值不能被解析为有效的CSS颜色值 {{cssxref("<color>")}},将抛出<code>SYNTAX_ERR</code>错误。</p> + +<h2 id="语法">语法</h2> + +<pre class="syntaxbox">void <var><em>gradient</em>.addColorStop(offset, color);</var> +</pre> + +<h3 id="参数">参数</h3> + +<dl> + <dt>offset</dt> + <dd><code>0</code>到<code>1</code>之间的值,超出范围将抛出<code>INDEX_SIZE_ERR</code>错误</dd> + <dt>color</dt> + <dd>CSS颜色值 {{cssxref("<color>")}}。如果颜色值不能被解析为有效的CSS颜色值 <code><color></code>,将抛出<code>SYNTAX_ERR</code>错误。</dd> +</dl> + +<h2 id="示例">示例</h2> + +<h3 id="使用addColorStop方法">使用<code>addColorStop</code>方法</h3> + +<p>一个使用{{domxref("CanvasGradient")}}对象的<code>addColorStop</code> 方法的简单例子</p> + +<h4 id="HTML">HTML</h4> + +<pre class="brush: html"> <canvas id="canvas"></canvas></pre> + +<h4 id="JavaScript">JavaScript</h4> + +<pre class="brush: js; highlight:[5,6]">var canvas = document.getElementById("canvas"); +var ctx = canvas.getContext("2d"); + +var gradient = ctx.createLinearGradient(0,0,200,0); +gradient.addColorStop(0,"green"); +gradient.addColorStop(1,"white"); +ctx.fillStyle = gradient; +ctx.fillRect(10,10,200,100); +</pre> + +<p>编辑以下代码可看到画布变化:</p> + +<div style="display: none;"> +<h6 id="Playable_code">Playable code</h6> + +<pre class="brush: html"><canvas id="canvas" width="400" height="200" class="playable-canvas"></canvas> +<div class="playable-buttons"> + <input id="edit" type="button" value="Edit" /> + <input id="reset" type="button" value="Reset" /> +</div> +<textarea id="code" class="playable-code"> +var gradient = ctx.createLinearGradient(0,0,200,0); +gradient.addColorStop(0,"green"); +gradient.addColorStop(1,"white"); +ctx.fillStyle = gradient; +ctx.fillRect(10,10,200,100);</textarea> +</pre> + +<pre class="brush: js">var canvas = document.getElementById("canvas"); +var ctx = canvas.getContext("2d"); +var textarea = document.getElementById("code"); +var reset = document.getElementById("reset"); +var edit = document.getElementById("edit"); +var code = textarea.value; + +function drawCanvas() { + ctx.clearRect(0, 0, canvas.width, canvas.height); + eval(textarea.value); +} + +reset.addEventListener("click", function() { + textarea.value = code; + drawCanvas(); +}); + +edit.addEventListener("click", function() { + textarea.focus(); +}) + +textarea.addEventListener("input", drawCanvas); +window.addEventListener("load", drawCanvas); +</pre> +</div> + +<p>{{ EmbedLiveSample('Playable_code', 700, 360) }}</p> + +<h2 id="标准">标准</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">标准</th> + <th scope="col">状态</th> + <th scope="col">备注</th> + </tr> + <tr> + <td>{{SpecName('HTML WHATWG', "scripting.html#dom-canvasgradient-addcolorstop", "CanvasGradient.addColorStop")}}</td> + <td>{{Spec2('HTML WHATWG')}}</td> + <td> </td> + </tr> + <tr> + <td>{{SpecName('HTML Canvas 2D Context W3C', "#dom-canvasgradient-addcolorstop", "CanvasGradient.addColorStop")}}</td> + <td>{{Spec2('HTML5 W3C')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="浏览器兼容性">浏览器兼容性</h2> + +<p>{{ CompatibilityTable() }}</p> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>功能</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>基本支持</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>功能</th> + <th>Android</th> + <th>Chrome for Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>基本支持</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + </tr> + </tbody> +</table> +</div> + +<h2 id="请参阅">请参阅</h2> + +<ul> + <li>接口定义 {{domxref("CanvasGradient")}}</li> + <li>{{domxref("CanvasRenderingContext2D.createLinearGradient()")}}</li> + <li>{{domxref("CanvasRenderingContext2D.createRadialGradient()")}}</li> +</ul> diff --git a/files/zh-cn/web/api/canvasgradient/index.html b/files/zh-cn/web/api/canvasgradient/index.html new file mode 100644 index 0000000000..a504dc443b --- /dev/null +++ b/files/zh-cn/web/api/canvasgradient/index.html @@ -0,0 +1,104 @@ +--- +title: CanvasGradient +slug: Web/API/CanvasGradient +translation_of: Web/API/CanvasGradient +--- +<div>{{APIRef("Canvas")}}</div> + +<p><code><strong>CanvasGradient</strong></code> 接口表示描述渐变的不透明对象。通过 {{domxref("CanvasRenderingContext2D.createLinearGradient()")}} 或 {{domxref("CanvasRenderingContext2D.createRadialGradient()")}} 的返回值得到.</p> + +<h2 id="属性">属性</h2> + +<p><em>不透明对象,没有暴露的属性.</em></p> + +<h2 id="方法">方法</h2> + +<p><em>没有继承的方法</em></p> + +<dl> + <dt>{{domxref("CanvasGradient.addColorStop()")}}</dt> + <dd>添加一个由<code>偏移(offset)</code>和颜色(<code>color</code>)定义的断点到渐变中。如果偏移值不在0到1之间,将抛出<code>INDEX_SIZE_ERR错误,如果颜色值不能被解析为有效的</code>CSS颜色值 {{cssxref("<color>")}}<code>,将抛出SYNTAX_ERR</code>错误。</dd> +</dl> + +<h2 id="Specifications" name="Specifications">标准</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">标准</th> + <th scope="col">状态</th> + <th scope="col">备注</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('HTML WHATWG', "the-canvas-element.html#canvasgradient", "CanvasGradient")}}</td> + <td>{{Spec2('HTML WHATWG')}}</td> + <td>同 {{Spec2('HTML Canvas 2D Context W3C')}}</td> + </tr> + <tr> + <td>{{SpecName('HTML Canvas 2D Context W3C', '#canvasgradient', 'CanvasGradient')}}</td> + <td>{{Spec2('HTML Canvas 2D Context W3C')}}</td> + <td>初始定义</td> + </tr> + </tbody> +</table> + +<h2 id="浏览器兼容性">浏览器兼容性</h2> + +<div>{{CompatibilityTable}}</div> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>功能</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>基本支持</td> + <td>4.0</td> + <td>{{CompatGeckoDesktop("3.6")}} [1]</td> + <td>9.0</td> + <td>9.0</td> + <td>3.1</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>功能</th> + <th>Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>基本支持</td> + <td>2.1</td> + <td>{{CompatGeckoMobile("3.6")}} [1]</td> + <td>{{CompatUnknown}}</td> + <td>10.0</td> + <td>3.2</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] 在Gecko 5.0 {{geckoRelease("5.0")}} 以前,通过调用<code>addColorStop()</code>添加颜色断点时给定非有限的值,会错误的抛出 <code>SYNTAX_ERR</code> 而不是<code>INDEX_SIZE_ERR</code>。</p> + +<h2 id="请参考">请参考</h2> + +<ul> + <li>创建方法在{{domxref("CanvasRenderingContext2D")}}.</li> + <li>{{HTMLElement("canvas")}} 元素及其有关接口{{domxref("HTMLCanvasElement")}}.</li> +</ul> |
