12345678910111213141516171819202122232425262728293031 |
-
- import 'package:flutter/widgets.dart';
-
- class LinearGradientText extends StatelessWidget {
- final AlignmentGeometry begin;
- final AlignmentGeometry end;
- final List<Color> colors;
- Widget child;
-
- LinearGradientText({
- Key? key,
- required this.colors,
- required this.child,
- this.begin = Alignment.topCenter,
- this.end = Alignment.bottomCenter,
- }) : super(key: key);
-
- Shader _linearGradient(Rect bounds) {
- Gradient gradient = LinearGradient(colors: colors, begin: begin, end: end);
- return gradient.createShader(bounds);
- }
-
- @override
- Widget build(BuildContext context) {
- return ShaderMask(
- blendMode: BlendMode.srcIn,
- shaderCallback: (bounds) => _linearGradient(bounds),
- child: child,
- );
- }
- }
|