morphing_text

Last updated:

0 purchases

morphing_text Image
morphing_text Images
Add to Cart

Description:

morphing text

Morphing Text #
It is a collection of text animations inspired by LTMorphingLabel.
Animations #
ScaleMorphingText #

ScaleMorphingText(
texts: text,
loopForever: true,
onComplete: () {},
textStyle: TextStyle(fontSize: 40.0),
),
copied to clipboard
EvaporateMorphingText #

EvaporateMorphingText(
texts: text,
loopForever: true,
onComplete: () {},
yDisplacement: 1.2, // To factor of y-displacement
textStyle: TextStyle(fontSize: 40.0),
),
copied to clipboard
All Parameters #



Type
Parameter
Description
Default




List<String>
texts
List of String which will show the text
-


TextStyle
textStyle
Styling of texts
DefaultTextStyle


Duration
speed
Define the speed of changing of each text
500 milliseconds


Duration
pause
Define the pause between each transition
1500 milliseconds


bool
loopForever
When true animations will repeat indefinitely
false


int
loopCount
Number of time animation will repeat itself
1


void
onComplete
When loopCount is completed it is called
-


Curve
fadeInCurve
Curve which controls opacity from 0 to 1
Curves.easeInExpo


Curve
fadeOutCurve
Curve which controls opacity from 1 to 0
Curves.easeOut


Curve
progressCurve
Curve which controls movement of text and scale changes
Curves.easeIn




Changing Curves is purely experimental, select proper curves as per your need or leave them at default

Making custom animations #

To make custom animations extend your class with MorphingText

class CustomFooMorphingText extends MorphingText {
...
}
copied to clipboard

Override incomingText and outgoingText methods to animate entry of next and exit of previous text respectively and pass text, textStyle and progress to super.

class CustomFooMorphingText extends MorphingText {
CustomFooMorphingText(
String text,
TextStyle textStyle,
double progress,
) : super(text, textStyle, progress);

@override
TextProperties morphingText(TextProperties textProperties) {
// Optional to change the motion of moving text
}

@override
TextProperties incomingText(TextProperties textProperties) {
// Write you logic for next text
}

@override
TextProperties outgoingText(TextProperties textProperties) {
// Write you logic for leaving text
}
}
copied to clipboard

Pass your custom animation to CustomMorphingText in build method.

CustomMorphingText(
morphingText: CustomFooMorphingText(
texts[index],
DefaultTextStyle.of(context).style.merge(widget.textStyle),
_progress.value,
),
);
copied to clipboard

For example you can see implementation of CustomScaleMorphingText on github

Want to Contribute? #
A help is always welcomed, check our CONTRIBUTING.md

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.