# CanvasRenderingContext2D对象 >![](../../public_sys-resources/icon-note.gif) **说明:** >从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 使用RenderingContext在Canvas组件上进行绘制,绘制对象可以是矩形、文本、图片等。 ## 接口 CanvasRenderingContext2D\(setting: RenderingContextSetting\) - 参数
参数名 |
参数类型 |
必填 |
默认值 |
参数描述 |
---|---|---|---|---|
setting |
是 |
- |
参数名 |
参数类型 |
必填 |
默认值 |
参数描述 |
---|---|---|---|---|
antialias |
bool |
否 |
false |
表明canvas是否开启抗锯齿。 |
alpha |
bool |
否 |
false |
表明canvas包含是否包含一个alpha通道。 |
名称 |
类型 |
默认值 |
描述 |
---|---|---|---|
<color> | CanvasGradient | CanvasPattern |
- |
指定绘制的填充色。
|
|
number |
- |
设置绘制线条的宽度。 |
|
<color> | CanvasGradient | CanvasPattern |
- |
设置描边的颜色。
|
|
string |
'butt' |
指定线端点的样式,可选值为:
|
|
string |
'miter' |
指定线段间相交的交点样式,可选值为:
|
|
number |
10 |
设置斜接面限制值,该值指定了线条相交处内角和外角的距离。 |
|
string |
'normal normal 14px sans-serif' |
设置文本绘制中的字体样式。 语法:ctx.font='font-size font-family'
语法:ctx.font='font-style font-weight font-size font-family'
|
|
string |
'left' |
设置文本绘制中的文本对齐方式,可选值为:
说明:
ltr布局模式下'start'和'left'一致,rtl布局模式下'start'和'right'一致·。 |
|
string |
'alphabetic' |
设置文本绘制中的水平对齐方式,可选值为:
|
|
number |
- |
设置透明度,0.0为完全透明,1.0为完全不透明。 |
|
number |
0.0 |
设置画布的虚线偏移量,精度为float。 |
|
string |
'source-over' |
设置合成操作的方式。类型字段可选值有'source-over','source-atop','source-in','source-out','destination-over','destination-atop','destination-in','destination-out','lighter','copy','xor'。 |
|
number |
0.0 |
设置绘制阴影时的模糊级别,值越大越模糊,精度为float。 |
|
<color> |
- |
设置绘制阴影时的阴影颜色。 |
|
number |
- |
设置绘制阴影时和原有对象的水平偏移值。 |
|
number |
- |
设置绘制阴影时和原有对象的垂直偏移值。 |
|
boolean |
true |
用于设置绘制图片时是否进行图像平滑度调整,true为启用,false为不启用。 |
|
imageSmoothingQuality |
string |
'low' |
用于设置图像平滑度,支持如下三种类型:'low', 'medium', 'high'。 |
名称 |
描述 |
---|---|
source-over |
在现有绘制内容上显示新绘制内容,属于默认值。 |
source-atop |
在现有绘制内容顶部显示新绘制内容。 |
source-in |
在现有绘制内容中显示新绘制内容。 |
source-out |
在现有绘制内容之外显示新绘制内容。 |
destination-over |
在新绘制内容上方显示现有绘制内容。 |
destination-atop |
在新绘制内容顶部显示现有绘制内容。 |
destination-in |
在新绘制内容中显示现有绘制内容。 |
destination-out |
在新绘制内容外显示现有绘制内容。 |
lighter |
显示新绘制内容和现有绘制内容。 |
copy |
显示新绘制内容而忽略现有绘制内容。 |
xor |
使用异或操作对新绘制内容与现有绘制内容进行融合。 |
参数 |
类型 |
必填 |
默认值 |
说明 |
---|---|---|---|---|
x |
number |
是 |
0 |
指定矩形左上角点的x坐标。 |
y |
number |
是 |
0 |
指定矩形左上角点的y坐标。 |
width |
number |
是 |
0 |
指定矩形的宽度。 |
height |
number |
是 |
0 |
指定矩形的高度。 |
参数 |
类型 |
必填 |
默认值 |
说明 |
---|---|---|---|---|
x |
number |
是 |
0 |
指定矩形的左上角x坐标。 |
y |
number |
是 |
0 |
指定矩形的左上角y坐标。 |
width |
number |
是 |
0 |
指定矩形的宽度。 |
height |
number |
是 |
0 |
指定矩形的高度。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x |
number |
是 |
0 |
指定矩形上的左上角x坐标。 |
y |
number |
是 |
0 |
指定矩形上的左上角y坐标。 |
width |
number |
是 |
0 |
指定矩形的宽度。 |
height |
number |
是 |
0 |
指定矩形的高度。 |
参数 |
类型 |
必填 |
默认值 |
说明 |
---|---|---|---|---|
text |
string |
是 |
“” |
需要绘制的文本内容。 |
x |
number |
是 |
0 |
需要绘制的文本的左下角x坐标。 |
y |
number |
是 |
0 |
需要绘制的文本的左下角y坐标。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
text |
string |
是 |
“” |
需要绘制的文本内容。 |
x |
number |
是 |
0 |
需要绘制的文本的左下角x坐标。 |
y |
number |
是 |
0 |
需要绘制的文本的左下角y坐标。 |
参数 |
类型 |
必填 |
默认值 |
说明 |
---|---|---|---|---|
text |
string |
是 |
"" |
需要进行测量的文本。 |
类型 |
说明 |
---|---|
TextMetrics |
文本的尺寸信息 |
属性 |
类型 |
描述 |
---|---|---|
width |
number |
字符串的宽度。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
path |
否 |
null |
需要绘制的Path2D。 |
参数 |
类型 |
必填 |
默认值 |
说明 |
---|---|---|---|---|
x |
number |
是 |
0 |
指定位置的x坐标。 |
y |
number |
是 |
0 |
指定位置的y坐标。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x |
number |
是 |
0 |
指定位置的x坐标。 |
y |
number |
是 |
0 |
指定位置的y坐标。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
image |
是 |
null |
图源对象,具体参考 ImageBitmap对象。 |
|
repetition |
string |
是 |
“” |
设置图像重复的方式,取值为:'repeat'、'repeat-x'、 'repeat-y'、'no-repeat'。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
cp1x |
number |
是 |
0 |
第一个贝塞尔参数的x坐标值。 |
cp1y |
number |
是 |
0 |
第一个贝塞尔参数的y坐标值。 |
cp2x |
number |
是 |
0 |
第二个贝塞尔参数的x坐标值。 |
cp2y |
number |
是 |
0 |
第二个贝塞尔参数的y坐标值。 |
x |
number |
是 |
0 |
路径结束时的x坐标值。 |
y |
number |
是 |
0 |
路径结束时的y坐标值。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
cpx |
number |
是 |
0 |
贝塞尔参数的x坐标值。 |
cpy |
number |
是 |
0 |
贝塞尔参数的y坐标值。 |
x |
number |
是 |
0 |
路径结束时的x坐标值。 |
y |
number |
是 |
0 |
路径结束时的y坐标值。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x |
number |
是 |
0 |
弧线圆心的x坐标值。 |
y |
number |
是 |
0 |
弧线圆心的y坐标值。 |
radius |
number |
是 |
0 |
弧线的圆半径。 |
startAngle |
number |
是 |
0 |
弧线的起始弧度。 |
endAngle |
number |
是 |
0 |
弧线的终止弧度。 |
anticlockwise |
boolean |
否 |
false |
是否逆时针绘制圆弧。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x1 |
number |
是 |
0 |
圆弧经过的第一个点的x坐标值。 |
y1 |
number |
是 |
0 |
圆弧经过的第一个点的y坐标值。 |
x2 |
number |
是 |
0 |
圆弧经过的第二个点的x坐标值。 |
y2 |
number |
是 |
0 |
圆弧经过的第二个点的y坐标值。 |
radius |
number |
是 |
0 |
圆弧的圆半径值。 |
参数 |
类型 |
必填 |
默认值 |
说明 |
---|---|---|---|---|
x |
number |
是 |
0 |
椭圆圆心的x轴坐标。 |
y |
number |
是 |
0 |
椭圆圆心的y轴坐标。 |
radiusX |
number |
是 |
0 |
椭圆x轴的半径长度。 |
radiusY |
number |
是 |
0 |
椭圆y轴的半径长度。 |
rotation |
number |
是 |
0 |
椭圆的旋转角度,单位为弧度。 |
startAngle |
number |
是 |
0 |
椭圆绘制的起始点角度,以弧度表示。 |
endAngle |
number |
是 |
0 |
椭圆绘制的结束点角度,以弧度表示。 |
anticlockwise |
number |
否 |
0 |
是否以逆时针方向绘制椭圆,0为顺时针,1为逆时针。(可选参数,默认为0) |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x |
number |
是 |
0 |
指定矩形的左上角x坐标值。 |
y |
number |
是 |
0 |
指定矩形的左上角y坐标值。 |
width |
number |
是 |
0 |
指定矩形的宽度。 |
height |
number |
是 |
0 |
指定矩形的高度。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
rotate |
number |
是 |
0 |
设置顺时针旋转的弧度值,可以通过Math.PI / 180将角度转换为弧度值。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x |
number |
是 |
0 |
设置水平方向的缩放值。 |
y |
number |
是 |
0 |
设置垂直方向的缩放值。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
scaleX |
number |
是 |
0 |
指定水平缩放值。 |
skewX |
number |
是 |
0 |
指定水平倾斜值。 |
skewY |
number |
是 |
0 |
指定垂直倾斜值。 |
scaleY |
number |
是 |
0 |
指定垂直缩放值。 |
translateX |
number |
是 |
0 |
指定水平移动值。 |
translateY |
number |
是 |
0 |
指定垂直移动值。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
scaleX |
number |
是 |
0 |
指定水平缩放值。 |
skewX |
number |
是 |
0 |
指定水平倾斜值。 |
skewY |
number |
是 |
0 |
指定垂直倾斜值。 |
scaleY |
number |
是 |
0 |
指定垂直缩放值。 |
translateX |
number |
是 |
0 |
指定水平移动值。 |
translateY |
number |
是 |
0 |
指定垂直移动值。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x |
number |
是 |
0 |
设置水平平移量。 |
y |
number |
是 |
0 |
设置竖直平移量。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
image |
是 |
null |
图片资源,请参考ImageBitmap。 |
|
sx |
number |
否 |
0 |
裁切源图像时距离源图像左上角的x坐标值。 |
sy |
number |
否 |
0 |
裁切源图像时距离源图像左上角的y坐标值。 |
sWidth |
number |
否 |
0 |
裁切源图像时需要裁切的宽度。 |
sHeight |
number |
否 |
0 |
裁切源图像时需要裁切的高度。 |
dx |
number |
是 |
0 |
绘制区域左上角在x轴的位置。 |
dy |
number |
是 |
0 |
绘制区域左上角在y 轴的位置。 |
dWidth |
number |
否 |
0 |
绘制区域的宽度。 |
dHeight |
number |
否 |
0 |
绘制区域的高度。 |
参数 |
类型 |
必填 |
默认 |
描述 |
---|---|---|---|---|
width |
number |
是 |
0 |
ImageData的宽度。 |
height |
number |
是 |
0 |
ImageData的高度。 |
参数 |
类型 |
必填 |
默认 |
描述 |
---|---|---|---|---|
imagedata |
Object |
是 |
null |
复制现有的ImageData对象。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
sx |
number |
是 |
0 |
需要输出的区域的左上角x坐标。 |
sy |
number |
是 |
0 |
需要输出的区域的左上角y坐标。 |
sw |
number |
是 |
0 |
需要输出的区域的宽度。 |
sh |
number |
是 |
0 |
需要输出的区域的高度。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
imagedata |
Object |
是 |
null |
包含像素值的ImageData对象。 |
dx |
number |
是 |
0 |
填充区域在x轴方向的偏移量。 |
dy |
number |
是 |
0 |
填充区域在y轴方向的偏移量。 |
dirtyX |
number |
否 |
0 |
源图像数据矩形裁切范围左上角距离源图像左上角的x轴偏移量。 |
dirtyY |
number |
否 |
0 |
源图像数据矩形裁切范围左上角距离源图像左上角的y轴偏移量。 |
dirtyWidth |
number |
否 |
imagedata的宽度 |
源图像数据矩形裁切范围的宽度。 |
dirtyHeight |
number |
否 |
imagedata的高度 |
源图像数据矩形裁切范围的高度。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x0 |
number |
是 |
0 |
起点的x轴坐标。 |
y0 |
number |
是 |
0 |
起点的y轴坐标。 |
x1 |
number |
是 |
0 |
终点的x轴坐标。 |
y1 |
number |
是 |
0 |
终点的y轴坐标。 |
参数 |
类型 |
必填 |
默认值 |
描述 |
---|---|---|---|---|
x0 |
number |
是 |
0 |
起始圆的x轴坐标。 |
y0 |
number |
是 |
0 |
起始圆的y轴坐标。 |
r0 |
number |
是 |
0 |
起始圆的半径。必须是非负且有限的。 |
x1 |
number |
是 |
0 |
终点圆的x轴坐标。 |
y1 |
number |
是 |
0 |
终点圆的y轴坐标。 |
r1 |
number |
是 |
0 |
终点圆的半径。必须为非负且有限的。 |