HarmonyOS Canvas如何重置clip
主要代码如下,通过点击事件切换pathType,
1. 初始化运行得到图1,这里是正确的。
2. 点击一下pathType设置为false,得到图2,这里也是正确的。
3. 再次点击pathType设置为true,得到图3,是错误的。正确的应该是和图一一样的。if else里面的clip(path1)同时生效小了。
请问如果才能重置clip,使得if else 里面的path只能生效一个?
if (this.pathType) {
let path1 = new Path2D()
path1.moveTo(0, 0)
path1.lineTo(this.context.width, 0)
path1.lineTo(this.context.width * 0.5, this.context.height)
path1.lineTo(0, this.context.height)
path1.closePath()
this.context.clip(path1)
} else {
let path1 = new Path2D()
path1.moveTo(0, 0)
path1.lineTo(this.context.width * 0.5, 0)
path1.lineTo(this.context.width, this.context.height)
path1.lineTo(0, this.context.height)
path1.closePath()
this.context.clip(path1)
}
图一:
图二:
图三:
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS Canvas Path2D带transform地addPath,再clip会显示异常
489浏览 • 1回复 待解决
HarmonyOS 父组件的clip属性支持分别clip上、下、左、右吗?
597浏览 • 1回复 待解决
HarmonyOS .clip矩形裁切无法生效
475浏览 • 1回复 待解决
HarmonyOS如何手动重置自定义组件?
612浏览 • 1回复 待解决
HarmonyOS 订阅subGroupGenerationId重置相关
390浏览 • 1回复 待解决
HarmonyOS clip如何裁剪顶部和左侧的image内容
182浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何实现手写撤销和重置功能
351浏览 • 1回复 待解决
HarmonyOS 导航栏跳转后重置栈
363浏览 • 1回复 待解决
HarmonyOS TextOverflow.Clip 未达到预期效果
239浏览 • 1回复 待解决
HarmonyOS 应用沙箱存储数据重置问题咨询
379浏览 • 1回复 待解决
HarmonyOS Canvas如何设置圆角
240浏览 • 1回复 待解决
#鸿蒙通关秘籍#在HarmonyOS Next应用中如何重置文件拷贝进度?
466浏览 • 1回复 待解决
HarmonyOS 手机重置数据恢复和深度格式化
442浏览 • 1回复 待解决
HarmonyOS 是否有类似clip切割绘制区域能力
196浏览 • 1回复 待解决
HarmonyOS 如何使用Canvas画扇形
352浏览 • 1回复 待解决
HarmonyOS Canvas如何触发重绘
622浏览 • 1回复 待解决
鸿蒙 | listcontainer滚动时如何防止子view位置被重置
5082浏览 • 1回复 待解决
HarmonyOS Canvas绘制内容如何更新
214浏览 • 1回复 待解决
HarmonyOS 如何使用canvas绘制虚线
175浏览 • 1回复 待解决
HarmonyOS 如何让Canvas重绘
204浏览 • 1回复 待解决
组件的通用属性clip有什么作用?
915浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中实现手写撤销和重置功能?
467浏览 • 1回复 待解决
canvas如何实现水印效果
1257浏览 • 1回复 待解决
如何操作canvas重新绘制
1389浏览 • 1回复 待解决
HarmonyOS Tabs组件onChange后会将index重置为0
406浏览 • 1回复 待解决
可以这么写:
需要把:
替换为: