SVG_27_指尖魔法_等你施法_斗罗大陆史莱克七怪_闪亮登场

斗罗大陆粉丝创作暗黑风格GIF动画
斗罗大陆粉丝使用PS调整图片曲线,将史莱克七怪形象暗黑化,并通过animate控制透明度实现GIF动画效果。公众号提供详细教程。

作为斗罗大陆粉丝,在使用图片时,自然考虑到史莱克七怪。

图片暗黑化是使用PS简单调整了下曲线,比较丑,见笑。

好了,废话不多说,看效果。

 

Q:暗黑的是不是不好看? 

A:你指尖有魔法,点击一下变好看吧。

 

不管认不认得他们,释放一点指尖魔法看看。

 

实现原理其实很简单:就是利用animate控制透明度opacity。

 

开灯后,有没有刺眼的感觉,让我们一起施法开灯。

 

统一制作成了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 视口大小,使其适应不同的显示区域,并保持良好的图像比例和清晰度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

King·Forward

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

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

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

打赏作者

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

抵扣说明:

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

余额充值