Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
47f45b1f
D
Docs
项目概览
OpenHarmony
/
Docs
大约 1 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
47f45b1f
编写于
5月 04, 2023
作者:
L
limeng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add canvaspattern
Signed-off-by:
N
limeng
<
limeng208@huawei.com
>
上级
78f4747d
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
79 addition
and
19 deletion
+79
-19
zh-cn/application-dev/reference/arkui-ts/figures/canvas_pattern.gif
...ication-dev/reference/arkui-ts/figures/canvas_pattern.gif
+0
-0
zh-cn/application-dev/reference/arkui-ts/ts-canvasrenderingcontext2d.md
...ion-dev/reference/arkui-ts/ts-canvasrenderingcontext2d.md
+4
-10
zh-cn/application-dev/reference/arkui-ts/ts-components-canvas-canvaspattern.md
.../reference/arkui-ts/ts-components-canvas-canvaspattern.md
+72
-0
zh-cn/application-dev/reference/arkui-ts/ts-offscreencanvasrenderingcontext2d.md
...eference/arkui-ts/ts-offscreencanvasrenderingcontext2d.md
+3
-9
未找到文件。
zh-cn/application-dev/reference/arkui-ts/figures/canvas_pattern.gif
0 → 100644
浏览文件 @
47f45b1f
47.0 KB
zh-cn/application-dev/reference/arkui-ts/ts-canvasrenderingcontext2d.md
浏览文件 @
47f45b1f
...
@@ -40,9 +40,9 @@ RenderingContextSettings(antialias?: boolean)
...
@@ -40,9 +40,9 @@ RenderingContextSettings(antialias?: boolean)
| 名称 | 类型 | 描述 |
| 名称 | 类型 | 描述 |
| ----------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| ----------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
|
[
fillStyle
](
#fillstyle
)
| string
\|
[CanvasGradient](ts-components-canvas-canvasgradient.md)
\|
[
CanvasPattern
](
#canvaspattern
)
| 指定绘制的填充色。
<br/>
-
类型为string时,表示设置填充区域的颜色。
<br/>
-
类型为CanvasGradient时,表示渐变对象,使用[createLinearGradient](#createlineargradient)方法创建。
<br/>
-
类型为CanvasPattern时,使用
[
createPattern
](
#createpattern
)
方法创建。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
fillStyle
](
#fillstyle
)
| string
\|
[CanvasGradient](ts-components-canvas-canvasgradient.md)
\|
[
CanvasPattern
](
ts-components-canvas-canvaspattern.md
#canvaspattern
)
| 指定绘制的填充色。
<br/>
-
类型为string时,表示设置填充区域的颜色。
<br/>
-
类型为CanvasGradient时,表示渐变对象,使用[createLinearGradient](#createlineargradient)方法创建。
<br/>
-
类型为CanvasPattern时,使用
[
createPattern
](
#createpattern
)
方法创建。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineWidth
](
#linewidth
)
| number | 设置绘制线条的宽度。 |
|
[
lineWidth
](
#linewidth
)
| number | 设置绘制线条的宽度。 |
|
[
strokeStyle
](
#strokestyle
)
| string
\|
[CanvasGradient](ts-components-canvas-canvasgradient.md)
\|
[
CanvasPattern
](
#canvaspattern
)
| 设置描边的颜色。
<br/>
-
类型为string时,表示设置描边使用的颜色。
<br/>
-
类型为CanvasGradient时,表示渐变对象,使用[createLinearGradient](#createlineargradient)方法创建。
<br/>
-
类型为CanvasPattern时,使用
[
createPattern
](
#createpattern
)
方法创建。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
strokeStyle
](
#strokestyle
)
| string
\|
[CanvasGradient](ts-components-canvas-canvasgradient.md)
\|
[
CanvasPattern
](
ts-components-canvas-canvaspattern.md
#canvaspattern
)
| 设置描边的颜色。
<br/>
-
类型为string时,表示设置描边使用的颜色。
<br/>
-
类型为CanvasGradient时,表示渐变对象,使用[createLinearGradient](#createlineargradient)方法创建。
<br/>
-
类型为CanvasPattern时,使用
[
createPattern
](
#createpattern
)
方法创建。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineCap
](
#linecap
)
| CanvasLineCap | 指定线端点的样式,可选值为:
<br/>
-
'butt':线端点以方形结束。
<br/>
-
'round':线端点以圆形结束。
<br/>
-
'square':线端点以方形结束,该样式下会增加一个长度和线段厚度相同,宽度是线段厚度一半的矩形。
<br/>
默认值:'butt'
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineCap
](
#linecap
)
| CanvasLineCap | 指定线端点的样式,可选值为:
<br/>
-
'butt':线端点以方形结束。
<br/>
-
'round':线端点以圆形结束。
<br/>
-
'square':线端点以方形结束,该样式下会增加一个长度和线段厚度相同,宽度是线段厚度一半的矩形。
<br/>
默认值:'butt'
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineJoin
](
#linejoin
)
| CanvasLineJoin | 指定线段间相交的交点样式,可选值为:
<br/>
-
'round':在线段相连处绘制一个扇形,扇形的圆角半径是线段的宽度。
<br/>
-
'bevel':在线段相连处使用三角形为底填充,
每个部分矩形拐角独立。
<br/>
-
'miter':在相连部分的外边缘处进行延伸,使其相交于一点,形成一个菱形区域,该属性可以通过设置miterLimit属性展现效果。
<br/>
默认值:'miter'
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineJoin
](
#linejoin
)
| CanvasLineJoin | 指定线段间相交的交点样式,可选值为:
<br/>
-
'round':在线段相连处绘制一个扇形,扇形的圆角半径是线段的宽度。
<br/>
-
'bevel':在线段相连处使用三角形为底填充,
每个部分矩形拐角独立。
<br/>
-
'miter':在相连部分的外边缘处进行延伸,使其相交于一点,形成一个菱形区域,该属性可以通过设置miterLimit属性展现效果。
<br/>
默认值:'miter'
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
miterLimit
](
#miterlimit
)
| number | 设置斜接面限制值,该值指定了线条相交处内角和外角的距离。
<br/>
默认值:10
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
miterLimit
](
#miterlimit
)
| number | 设置斜接面限制值,该值指定了线条相交处内角和外角的距离。
<br/>
默认值:10
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
...
@@ -1202,11 +1202,11 @@ createPattern(image: ImageBitmap, repetition: string | null): CanvasPattern | nu
...
@@ -1202,11 +1202,11 @@ createPattern(image: ImageBitmap, repetition: string | null): CanvasPattern | nu
| image |
[
ImageBitmap
](
ts-components-canvas-imagebitmap.md
)
| 是 | 图源对象,具体参考ImageBitmap对象。 |
| image |
[
ImageBitmap
](
ts-components-canvas-imagebitmap.md
)
| 是 | 图源对象,具体参考ImageBitmap对象。 |
| repetition | string | 是 | 设置图像重复的方式,取值为:'repeat'、'repeat-x'、 'repeat-y'、'no-repeat'、'clamp'、'mirror'。
<br/>
默认值:'' |
| repetition | string | 是 | 设置图像重复的方式,取值为:'repeat'、'repeat-x'、 'repeat-y'、'no-repeat'、'clamp'、'mirror'。
<br/>
默认值:'' |
**返回值:**
:
**返回值:**
| 类型 | 说明 |
| 类型 | 说明 |
| ------------------------------- | ----------------------- |
| ------------------------------- | ----------------------- |
|
[
CanvasPattern
](
#canvaspattern
)
| 通过指定图像和重复方式创建图片填充的模板对象。 |
|
[
CanvasPattern
](
ts-components-canvas-canvaspattern.md
#canvaspattern
)
| 通过指定图像和重复方式创建图片填充的模板对象。 |
**示例:**
**示例:**
...
@@ -2710,9 +2710,3 @@ struct CanvasExample {
...
@@ -2710,9 +2710,3 @@ struct CanvasExample {
```
```
!
[
zh-cn_image_0000001239032419
](
figures/zh-cn_image_0000001239032420.png
)
!
[
zh-cn_image_0000001239032419
](
figures/zh-cn_image_0000001239032420.png
)
## CanvasPattern
一个Object对象, 通过
[
createPattern
](
#createpattern
)
方法创建。
从API version 9开始,该接口支持在ArkTS卡片中使用。
\ No newline at end of file
zh-cn/application-dev/reference/arkui-ts/ts-components-canvas-canvaspattern.md
0 → 100644
浏览文件 @
47f45b1f
# CanvasPattern
一个Object对象,使用
[
createPattern
](
ts-canvasrenderingcontext2d.md#createpattern
)
方法创建,通过指定图像和重复方式创建图片填充的模板。
> **说明:**
>
> 从 API Version 8 开始支持。从API version 9开始,该接口支持在ArkTS卡片中使用。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
## 接口
### setTransform
setTransform(transform?: Matrix2D): void;
使用Matrix2D对象作为参数、对当前CanvasPattern进行矩阵变换。
从API version 9开始,该接口支持在ArkTS卡片中使用。
**参数:**
| 参数 | 类型 | 必填 | 默认值 | 描述 |
| --------- | --------------------------------------------------------- | ---- | ------ | ---------- |
| transform |
[
Matrix2D
](
ts-components-canvas-matrix2d.md#Matrix2D对象
)
| 否 | null | 转换矩阵。 |
### 示例
```
typescript
// xxx.ets
@
Entry
@
Component
struct
CanvasPatternPage
{
private
settings
:
RenderingContextSettings
=
new
RenderingContextSettings
(
true
)
private
context
:
CanvasRenderingContext2D
=
new
CanvasRenderingContext2D
(
this
.
settings
)
private
matrix
:
Matrix2D
=
new
Matrix2D
()
private
img
:
ImageBitmap
=
new
ImageBitmap
(
"
common/pattern.jpg
"
)
private
pattern
:
CanvasPattern
build
()
{
Column
()
{
Button
(
"
Click to set transform
"
)
.
onClick
(()
=>
{
this
.
matrix
.
scaleY
=
1
this
.
matrix
.
scaleX
=
1
this
.
matrix
.
translateX
=
50
this
.
matrix
.
translateY
=
200
this
.
pattern
.
setTransform
(
this
.
matrix
)
this
.
context
.
fillRect
(
0
,
0
,
480
,
720
)
})
.
width
(
"
45%
"
)
.
margin
(
"
5px
"
)
Canvas
(
this
.
context
)
.
width
(
'
100%
'
)
.
height
(
'
80%
'
)
.
backgroundColor
(
'
#FFFFFF
'
)
.
onReady
(()
=>
{
this
.
pattern
=
this
.
context
.
createPattern
(
this
.
img
,
'
no-repeat
'
)
this
.
context
.
fillStyle
=
this
.
pattern
this
.
matrix
.
scaleY
=
0.5
this
.
matrix
.
scaleX
=
0.5
this
.
matrix
.
translateX
=
50
this
.
matrix
.
translateY
=
50
this
.
pattern
.
setTransform
(
this
.
matrix
)
this
.
context
.
fillRect
(
0
,
0
,
480
,
720
)
})
}
.
width
(
'
100%
'
)
.
height
(
'
100%
'
)
}
}
```
![
CanvasPattern
](
./figures/canvas_pattern.gif
)
\ No newline at end of file
zh-cn/application-dev/reference/arkui-ts/ts-offscreencanvasrenderingcontext2d.md
浏览文件 @
47f45b1f
...
@@ -27,9 +27,9 @@ OffscreenCanvasRenderingContext2D(width: number, height: number, setting: Render
...
@@ -27,9 +27,9 @@ OffscreenCanvasRenderingContext2D(width: number, height: number, setting: Render
| 名称 | 类型 | 描述 |
| 名称 | 类型 | 描述 |
| ----------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| ----------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
|
[
fillStyle
](
#fillstyle
)
| string
\|
[CanvasGradient](ts-components-canvas-canvasgradient.md)
\|
[
CanvasPattern
](
#canvaspattern
)
| 指定绘制的填充色。
<br/>
-
类型为string时,表示设置填充区域的颜色。
<br/>
-
类型为CanvasGradient时,表示渐变对象,使用[createLinearGradient](#createlineargradient)方法创建。
<br/>
-
类型为CanvasPattern时,使用
[
createPattern
](
#createpattern
)
方法创建。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
fillStyle
](
#fillstyle
)
| string
\|
[CanvasGradient](ts-components-canvas-canvasgradient.md)
\|
[
CanvasPattern
](
ts-components-canvas-canvaspattern.md
#canvaspattern
)
| 指定绘制的填充色。
<br/>
-
类型为string时,表示设置填充区域的颜色。
<br/>
-
类型为CanvasGradient时,表示渐变对象,使用[createLinearGradient](#createlineargradient)方法创建。
<br/>
-
类型为CanvasPattern时,使用
[
createPattern
](
#createpattern
)
方法创建。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineWidth
](
#linewidth
)
| number | 设置绘制线条的宽度。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineWidth
](
#linewidth
)
| number | 设置绘制线条的宽度。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
strokeStyle
](
#strokestyle
)
| string
\|
[CanvasGradient](ts-components-canvas-canvasgradient.md)
\|
[
CanvasPattern
](
#canvaspattern
)
| 设置描边的颜色。
<br/>
-
类型为string时,表示设置描边使用的颜色。
<br/>
-
类型为CanvasGradient时,表示渐变对象,使用[createLinearGradient](#createlineargradient)方法创建。
<br/>
-
类型为CanvasPattern时,使用
[
createPattern
](
#createpattern
)
方法创建。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
strokeStyle
](
#strokestyle
)
| string
\|
[CanvasGradient](ts-components-canvas-canvasgradient.md)
\|
[
CanvasPattern
](
ts-components-canvas-canvaspattern.md
#canvaspattern
)
| 设置描边的颜色。
<br/>
-
类型为string时,表示设置描边使用的颜色。
<br/>
-
类型为CanvasGradient时,表示渐变对象,使用[createLinearGradient](#createlineargradient)方法创建。
<br/>
-
类型为CanvasPattern时,使用
[
createPattern
](
#createpattern
)
方法创建。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineCap
](
#linecap
)
| CanvasLineCap | 指定线端点的样式,可选值为:
<br/>
-
'butt':线端点以方形结束。
<br/>
-
'round':线端点以圆形结束。
<br/>
-
'square':线端点以方形结束,该样式下会增加一个长度和线段厚度相同,宽度是线段厚度一半的矩形。
<br/>
-
默认值:'butt'。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineCap
](
#linecap
)
| CanvasLineCap | 指定线端点的样式,可选值为:
<br/>
-
'butt':线端点以方形结束。
<br/>
-
'round':线端点以圆形结束。
<br/>
-
'square':线端点以方形结束,该样式下会增加一个长度和线段厚度相同,宽度是线段厚度一半的矩形。
<br/>
-
默认值:'butt'。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineJoin
](
#linejoin
)
| CanvasLineJoin | 指定线段间相交的交点样式,可选值为:
<br/>
-
'round':在线段相连处绘制一个扇形,扇形的圆角半径是线段的宽度。
<br/>
-
'bevel':在线段相连处使用三角形为底填充,
每个部分矩形拐角独立。
<br/>
-
'miter':在相连部分的外边缘处进行延伸,使其相交于一点,形成一个菱形区域,该属性可以通过设置miterLimit属性展现效果。
<br/>
-
默认值:'miter'。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
lineJoin
](
#linejoin
)
| CanvasLineJoin | 指定线段间相交的交点样式,可选值为:
<br/>
-
'round':在线段相连处绘制一个扇形,扇形的圆角半径是线段的宽度。
<br/>
-
'bevel':在线段相连处使用三角形为底填充,
每个部分矩形拐角独立。
<br/>
-
'miter':在相连部分的外边缘处进行延伸,使其相交于一点,形成一个菱形区域,该属性可以通过设置miterLimit属性展现效果。
<br/>
-
默认值:'miter'。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
miterLimit
](
#miterlimit
)
| number | 设置斜接面限制值,该值指定了线条相交处内角和外角的距离。
<br/>
-
默认值:10。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
|
[
miterLimit
](
#miterlimit
)
| number | 设置斜接面限制值,该值指定了线条相交处内角和外角的距离。
<br/>
-
默认值:10。
<br/>
从API version 9开始,该接口支持在ArkTS卡片中使用。 |
...
@@ -1277,7 +1277,7 @@ createPattern(image: ImageBitmap, repetition: string | null): CanvasPattern | nu
...
@@ -1277,7 +1277,7 @@ createPattern(image: ImageBitmap, repetition: string | null): CanvasPattern | nu
| 类型 | 说明 |
| 类型 | 说明 |
| ------------------------------- | ----------------------- |
| ------------------------------- | ----------------------- |
|
[
CanvasPattern
](
#canvaspattern
)
| 通过指定图像和重复方式创建图片填充的模板对象。 |
|
[
CanvasPattern
](
ts-components-canvas-canvaspattern.md
#canvaspattern
)
| 通过指定图像和重复方式创建图片填充的模板对象。 |
**示例:**
**示例:**
...
@@ -2863,9 +2863,3 @@ struct OffscreenCanvasConicGradientPage {
...
@@ -2863,9 +2863,3 @@ struct OffscreenCanvasConicGradientPage {
```
```
!
[
zh-cn_image_0000001239032419
](
figures/zh-cn_image_0000001239032420.png
)
!
[
zh-cn_image_0000001239032419
](
figures/zh-cn_image_0000001239032420.png
)
## CanvasPattern
一个Object对象, 通过
[
createPattern
](
#createpattern
)
方法创建。
从API version 9开始,该接口支持在ArkTS卡片中使用。
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录