import 'dart:ui' as ui;
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
void main() {
WidgetsFlutterBinding.ensureInitialized();
runApp(
MaterialApp(
home: Container(
color: Colors.blue,
child: CustomPaint(
painter: MyPaint(),
),
),
),
);
}
class MyPaint extends CustomPainter {
@override
void paint(ui.Canvas canvas, ui.Size size) {
ui.Paint paint = Paint();
paint.color = Colors.red;
paint.imageFilter = ui.ImageFilter.matrix(Float64List.fromList([
1, 0, 0, 0, //
0, 1, 0, 0, //
0, 0, 1, 0, //
100, 100, 0, 1, //
]));
Rect rect = Rect.fromLTWH(0, 0, 100, 100);
canvas.drawRect(rect, paint);
}
@override
bool shouldRepaint(covariant CustomPainter oldDelegate) {
return true;
}
}
code
expected results
actual results