import 'package:flutter/widgets.dart'; class LinearGradientText extends StatelessWidget { final AlignmentGeometry begin; final AlignmentGeometry end; final List 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, ); } }