【Rive】波动文字
1 前言
本文将使用文本修改器(Text Modifiers)做文字动画,实现文字波动效果。
按以下步骤可以创建一个 Modifier Group 和 Range。

部分参数的释义如下。
- Range: Modifier 作用的范围。
- Falloff: Modifier 在最大值时的范围,Falloff 一般是 Range 的子集。
- Offset: Range 的偏移。
本节完整资源详见 → Android中使用Rive实现文字波动特效。
2 第一种波形
1)Modifier 配置

2)时间线
将 Modifier 的 PostionY、Offset 参数添加到时间线中,如下。

PositionY 对应的 4 帧的值分别为 100、-100、100、-100,4 帧的插值器都是 S 型;Offset 对应的 2 帧的值分别为 -0.4、1。
3 第二种波形
1)Modifier 配置

2)时间线
将 Modifier Group 1 和 Modifier Group 2 的 Offset 参数添加到时间线中,如下。

Modifier Group 1 的 Offset 对应的 4 帧的值分别为 0、1、-1、0,第 2 、3 两帧相隔 1 帧,第 2 帧的插值器是 Z 型;Modifier Group 2 的 Offset 对应的 4 帧的值分别为 -0.5、1、-1、-0.5,第 2 、3 两帧相隔 1 帧,第 2 帧的插值器是 Z 型。
4 Android 中代码
Rive 在 Android 中的环境配置详见 → Rive在Android上的简单应用。
1)MainActivity
package com.zhyan8.waveText
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
2)layout_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.zhyan8.waveText.MainActivity"
android:orientation="vertical"
android:gravity="center">
<app.rive.runtime.kotlin.RiveAnimationView
android:layout_width="match_parent"
android:layout_height="200dp"
app:riveFit="COVER"
app:riveResource="@raw/wave_text"
app:riveArtboard="Artboard_1"/>
<app.rive.runtime.kotlin.RiveAnimationView
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_marginTop="20dp"
app:riveFit="COVER"
app:riveResource="@raw/wave_text"
app:riveArtboard="Artboard_2"/>
</LinearLayout>
5 运行效果

声明:本文转自【Rive】波动文字。
【Rive】波动文字的更多相关文章
- JS边角料: NodeJS+AutoJS+WebSocket+TamperMonkey实现局域网多端文字互传
---阅读时间约 7 分钟,复现时间约 15 分钟--- 由于之前一直在用的扩展 QPush 停止服务了,苦于一人凑齐了 Window, Android, Mac, ios 四种系统的设备,Apple ...
- echarts系列-带图教你调整左右位置x轴样式网格虚线刻度居中双轴Y轴滚动上下移动文字旋转改分割线颜色部分字体改色折注混合,X轴的颜色,X轴字体颜色,调整柱子颜色,调整小图标图例的大小和位置,鼠标hover时候的样式,用纵向阴影
上面先说注意事项 1.如果使用show hidden控制图表显示隐藏,某些切换效果很奇怪,比如饼图,会从左上角开始放大,很丑,这个时候我们可以设置其宽高来解决问题,给其设置宽高后,切换的奇怪效果即可消 ...
- H5项目开发分享——用Canvas合成文字
以前曾用Canvas合成.裁剪.图片等<用H5中的Canvas等技术制作海报>.这次用Canvas来画文字. 下图中"老王考到驾照后"这几个字是画在Canvas上的,与 ...
- HTML5轻松实现搜索框提示文字点击消失---及placeholder颜色的设置
在做搜索框的时候无意间发现html5的input里有个placeholder属性能轻松实现提示文字点击消失功能,之前还傻傻的在用js来实现类似功能... 示例 <form action=&quo ...
- EasyPR--开发详解(8)文字定位
今天我们来介绍车牌定位中的一种新方法--文字定位方法(MSER),包括其主要设计思想与实现.接着我们会介绍一下EasyPR v1.5-beta版本中带来的几项改动. 一. 文字定位法 在EasyPR前 ...
- CSharpGL(26)在opengl中实现控件布局/渲染文字
CSharpGL(26)在opengl中实现控件布局/渲染文字 效果图 如图所示,可以将文字.坐标轴固定在窗口的一角. 下载 CSharpGL已在GitHub开源,欢迎对OpenGL有兴趣的同学加入( ...
- CSharpGL(15)用GLSL渲染2种类型的文字
CSharpGL(15)用GLSL渲染2种类型的文字 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码中包含10多个独立的Demo,更适合 ...
- 自定义ActionBar标题与菜单中的文字样式
自定义标题文字样式 标题样式是ActionBar样式的一部分,所以要先定义ActionBar的样式 <style name="AppTheme" parent="A ...
- css实现div,文字水平居中的方案。
本文的目的为记录个人开发中常用的几种居中方案,以供大家参考. //basic css html, body { height: 100%; width: 100%; margin: 0; paddin ...
- 【CSS3动画】transform对文字及图片的旋转、缩放、倾斜和移动
前言:之前我有写过CSS3的transform这一这特性,对于它的用法,还不是很透彻,今天补充补充,呵呵 你懂的,小司机准备开车了. a)再提一提transform的四个属性 ①旋转--->ro ...
随机推荐
- 精彩回顾|【ACDU 中国行·成都站】数据库主题交流活动成功举办!
2023年10月14日下午,[ACDU 中国行·成都站]在成都市武侯区星宸假日酒店圆满落下帷幕.本次活动由中国数据库联盟(ACDU)联合墨天轮社区主办,围绕「数据库技术及应用」这一主题,六位数据库资深 ...
- 墨天轮最受DBA欢迎的数据库技术文档-故障处理案例篇
在之前发布的<墨天轮最受欢迎的技术文档-容灾备份篇>中,大家说想看故障处理案例篇的内容,这不!编辑部快马加鞭给大家整理来了,希望能够帮助到大家. 数据库故障可能出现在内存.网络.CPU.硬 ...
- 墨天轮高分技术文档分享——Oracle升级迁移篇(共96个)
朋友们好久不见,在上期<墨天轮最受欢迎的技术文档-SQL优化篇>的留言中,有许多朋友表示想看数据库升级迁移相关的内容,经过搜集整理,这就为大家呈上!原文送墨值中,欢迎大家参与~ 数据库升级 ...
- 什么是 js 事件循环 event loop
知识储备 : js 的执行 机制 js 的底层执行机制 : 对于 js 代码 分为了同步 和 异步 代码 ,异步代码 较少比如:setInterval setTimeout 等(不会超过10 个) 其 ...
- day09-类型转换
类型转换 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换 低-----------------------------------------------------高 byte ...
- KubeSphere 部署向量数据库 Milvus 实战指南
作者:运维有术星主 Milvus 是一个为通用人工智能(GenAI)应用而构建的开源向量数据库.它以卓越的性能和灵活性,提供了一个强大的平台,用于存储.搜索和管理大规模的向量数据.Milvus 能够执 ...
- redis的CPA三进二原则
CAP C:consistency,数据在多个副本中能保持一致的状态. A:Availability,整个系统在任何时刻都能提供可用的服务,通常达到99.99%四个九可以称为高可用 P:Partiti ...
- 基于surging 的木舟平台如何通过HTTP网络组件接入设备
一.概述 上篇文章介绍了木舟如何上传模块热部署,那么此篇文章将介绍如何利用HTTP网络组件接入设备,那么有些人会问木舟又是什么,是什么架构为基础,能做什么呢? 木舟 (Kayak) 是什么? 木舟(K ...
- 基于.NET开源、功能强大且灵活的工作流引擎框架
前言 工作流引擎框架在需要自动化处理复杂业务流程.提高工作效率和确保流程顺畅执行的场景中得到了广泛应用.今天大姚给大家推荐一款基于.NET开源.功能强大且灵活的工作流引擎框架:elsa-core. 框 ...
- 在使用openbms的时候发现的Thinkphp action 大小写问题
下载了 https://gitee.com/openbms/openbms 看了看源代码,调试了一下普通用户的demo 用户 发现无法上传图片,admin不会,查看了源代码 发现是这样的 admin用 ...