相关问题
HarmonyOS 使用画布 (Canvas)绘制自定义时间轴,放缩重绘闪烁跳动,导致放缩时间轴功能难以使用
677浏览 • 1回复 待解决
画布绘制文字,垂直居中
371浏览 • 1回复 待解决
HarmonyOS 画布问题咨询
250浏览 • 1回复 待解决
HarmonyOS web网页中视频点击全屏时页面闪烁厉害
66浏览 • 1回复 待解决
HarmonyOS 组件通过scale进行缩放时的问题
503浏览 • 1回复 待解决
画布上绘制图片如何实现?
342浏览 • 1回复 待解决
HarmonyOS 绘制组件和画布组件选择问题
412浏览 • 1回复 待解决
动态缩放XComponent大小和视频播放时的性能对比
2031浏览 • 1回复 待解决
HarmonyOS 如何解决canvas设置文字对齐的方法 textAlign不起效果?
17浏览 • 1回复 待解决
Swiper 组件嵌套图片刷新数据会闪烁
1247浏览 • 1回复 待解决
Image组件加载的图片,如何缓解图片在缩放时的锯齿问题
2067浏览 • 1回复 待解决
#鸿蒙通关秘籍# 在HarmonyOS中绘制模拟时钟时,如何处理画布旋转,以避免绘制状态混乱和时间错乱问题?
81浏览 • 0回复 待解决
如何在使用 Canvas 绘制图像时处理像素模糊问题?
171浏览 • 0回复 待解决
HarmonyOS 缩放动画问题
37浏览 • 1回复 待解决
HarmonyOS Swiper嵌套的页面包含Canvas时,如何让Canvas可以响应左右滑动事件,但是不响应上下滑动
50浏览 • 1回复 待解决
Device Tool 点击"Monitor"按钮时失败,怎么解决?
6558浏览 • 1回复 待解决
如何通过定时器和画布实现一个时钟
835浏览 • 1回复 待解决
WebView支持页面缩放吗?
956浏览 • 1回复 待解决
在编译时固件时出现的问题,是什么原因,怎么解决?
8514浏览 • 3回复 已解决
编译ipcamera_hispark_taurus时出错,求解决
7050浏览 • 1回复 已解决
ijkplayer结合XComponent组件播放视频时根据视频尺寸和组件尺寸设置视频缩放模式
2003浏览 • 0回复 待解决
HarmonyOS 阅读器中组件来回翻页文字会闪烁
27浏览 • 1回复 待解决
使用canvas渲染文本时,如何基于文本变化,正确绘制出对应的内容?
1782浏览 • 1回复 待解决
Device Tool点击"Upload"按钮时进行烧录时,出现以下错误,怎么解决?
8213浏览 • 1回复 待解决
使用的核心API
手势事件以及Canvas画布
问题的描述与解释
Canvas画布缩放时已有的绘画路径会闪烁或移动
点击标注进入页面,使用任意一种画笔绘制后,缩放页面,会出现绘制线条闪动的问题
闪烁或移动的原因:
在更新绘制的图案的时候采用的是延迟操作,所以会有闪烁
解决的思路以及核心代码解释
1. 要实现的效果: 绘制的图形要随着捏合的手势进行缩放
2. 遇到问题: Canvas 设计的是,Canvas组件发生大小变化,画布的内容将会被清空,导致之前的绘制的内容被清除,需要根据新的比例重新绘制图形,捏合手势持续回调,会大量的调用重绘代码。 这个就造成了卡顿
3. 解决思路: 在 Canvas 设计不变的情况下,唯一能做的就是 减少重绘代码调用平次。 设计一系列条件点,只有满足该系列条件,才能触发回调重绘,条件设置的越紧,调用的就相对越少,性能就越优越,但是在超过一定条件,肉眼就可以识别出
4. 具体实现:
// 解决问题的思路: 也是尽可能的减少捏合手势持续调用绘制内容。 简单的设置一个临界点,在手势捏合持续回调中,只有满足一定条件才重新绘制// 目前测试不会卡顿以及闪烁,这个临界值以及以什么为参照,开发者可以以最合理的方式处理// 通过捏合比例大于某个值得时候才重新绘制
注明适配的版本信息
IDE版本:4.1.3.500
SDK版本:OpenHarmony 4.1.0(11)