SVG_21_逐行展示_观沧海

本文介绍了一种使用animate标签实现的逐行展示动画效果。通过为每一行设置ID,并利用上一个id.end作为下一个animate开始的时间点,实现了流畅的文字逐行显示。此方法在网页设计中可增强视觉效果,无需等待视频审核即可展示动态效果。

今天做了一个逐行展示的效果,一行行的显示,主要使用了animate标签,其中每一个animate标签都是指id,然后下一个animate的begin=“上一个id.end”,然后fill="freeze"表示按照动画结尾的效果冻结。

 

看效果:

PS:有了GIF加成,再也不用等视频审核了。

效果被吞,关门,放GIF

Xi说孔方兄认证

在使用 LVGL 库处理 SVG 图像时,若需要调整 SVG 的视口(viewport)大小以适应显示区域,可以利用 `lv_svg_render_get_viewport_size` 函数来获取 SVG 的推荐视口尺寸,并根据实际显示需求进行调整。 该函数原型如下: ```c lv_result_t lv_svg_render_get_viewport_size(lv_svg_handle_t * handle, lv_coord_t * w, lv_coord_t * h); ``` 此函数会返回 SVG 文件中建议的视口宽度和高度,通常基于 SVG 的 viewBox 属性。开发者可以使用这些值作为参考,来设置 SVG 图像在 LVGL 界面中实际显示的尺寸。例如: ```c lv_coord_t svg_w = 0; lv_coord_t svg_h = 0; lv_svg_render_get_viewport_size(svg_handle, &svg_w, &svg_h); ``` 在获取到 SVG 的原始视口尺寸后,可以根据目标显示区域的大小进行缩放。例如,若希望 SVG 图像自适应一个固定大小的容器(如 200x200 像素),可以将 `svg_w` 和 `svg_h` 设置为该固定值,以实现视口适配: ```c svg_w = 200; svg_h = 200; lv_svg_render_set_viewport_size(svg_handle, svg_w, svg_h); ``` 此外,若需要保持 SVG 图像的宽高比并填充整个显示区域,可以使用 `lv_svg_render_set_align` 函数配合 `LV_SVG_ALIGN_CENTER` 等对齐方式,使 SVG 图像在指定区域内居中显示并自动缩放[^1]。 ### 注意事项 - 在调用 `lv_svg_render_set_viewport_size` 前,确保已正确初始化 SVG 渲染器并加载 SVG 数据。 - 如果 SVG 文件中未定义 viewBox,则默认视口尺寸可能为 0,此时需要手动指定视口大小。 - 为了确保 SVG 图像在不同分辨率或容器大小下良好显示,建议结合 `lv_svg_render_set_align` 和 `lv_svg_render_set_viewport_size` 进行动态适配。 ### 示例代码 ```c lv_svg_handle_t * svg_handle = lv_svg_create_from_file("path/to/image.svg"); lv_coord_t svg_w = 0; lv_coord_t svg_h = 0; lv_svg_render_get_viewport_size(svg_handle, &svg_w, &svg_h); // 假设目标显示区域为 200x200 svg_w = 200; svg_h = 200; lv_svg_render_set_viewport_size(svg_handle, svg_w, svg_h); lv_svg_render_set_align(svg_handle, LV_SVG_ALIGN_CENTER, LV_SVG_FILL_METHOD_ZOOM); // 将 SVG 图像添加到 LVGL 界面中 lv_obj_t * img = lv_img_create(lv_scr_act()); lv_img_set_src(img, svg_handle); ``` 通过上述方法,可以灵活地调整 SVG 视口大小,使其适应不同的显示区域,并保持良好的图像比例和清晰度。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

King·Forward

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值