-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Closed
flutter/engine
#53042Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work lista: typographyText rendering, possibly libtxtText rendering, possibly libtxtc: regressionIt was better in the past than it is nowIt was better in the past than it is nowe: impellerImpeller rendering backend issues and features requestsImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.found in release: 3.10Found to occur in 3.10Found to occur in 3.10found in release: 3.11Found to occur in 3.11Found to occur in 3.11has reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onplatform-iosiOS applications specificallyiOS applications specificallyr: fixedIssue is closed as already fixed in a newer versionIssue is closed as already fixed in a newer versionslimpellerEngine binary size reduction. go/slimpellerEngine binary size reduction. go/slimpellerteam-engineOwned by Engine teamOwned by Engine teamtriaged-engineTriaged by Engine teamTriaged by Engine team
Description
Starting from Flutter 3.10, Impeller is used by default on iOS. Small text seems to have broken kerning
Steps to reproduce
-
Create new app
-
Add small text (better noticeable on repeated letters)
Text('IIIIIIIII')- Run the app with Flutter 3.10.2 on iOS
Expected results
The letters should render with even visual spacing (like it was in Skia)
Actual results
The letters renders with uneven visual spacing
In real text it gives the impression of sloppy jumping letters
Details
Full code sample
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return const MaterialApp(
home: Material(
color: Colors.white,
child: Center(
child: Text(
'IIIIIIIII',
style: TextStyle(
color: Colors.black,
),
),
),
),
);
}
}To reproduce old Skia behavior on Flutter 3.10
flutter run --no-enable-impellerTo crop and scale screenshot (iPhone 14):
convert screenshot.png -gravity center -crop 120x40+0+0 -scale 800% out.pngTools versions
Flutter (Channel stable, 3.10.2, on macOS 13.3.1 22E261 darwin-arm64, locale en-RU)
Xcode - develop for iOS and macOS (Xcode 14.3)
Android Studio (version 2022.2)
Flutter 3.10.2 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 9cd3d0d9ff (6 days ago) • 2023-05-23 20:57:28 -0700
Engine • revision 90fa3ae28f
Tools • Dart 3.0.2 • DevTools 2.23.1All the same on master:
Flutter 3.11.0-14.0.pre.70 • channel master •
https://github.com/flutter/flutter.git
Framework • revision bd11ef06fd (8 hours ago) • 2023-05-29 11:50:25 -0400
Engine • revision f768be1078
Tools • Dart 3.1.0 (build 3.1.0-155.0.dev) • DevTools 2.23.1armandojimenez, raulmabe-labhouse, Kiruel, aggeloskoutanis, ricardoboss and 4 more
Metadata
Metadata
Assignees
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work lista: typographyText rendering, possibly libtxtText rendering, possibly libtxtc: regressionIt was better in the past than it is nowIt was better in the past than it is nowe: impellerImpeller rendering backend issues and features requestsImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.found in release: 3.10Found to occur in 3.10Found to occur in 3.10found in release: 3.11Found to occur in 3.11Found to occur in 3.11has reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onplatform-iosiOS applications specificallyiOS applications specificallyr: fixedIssue is closed as already fixed in a newer versionIssue is closed as already fixed in a newer versionslimpellerEngine binary size reduction. go/slimpellerEngine binary size reduction. go/slimpellerteam-engineOwned by Engine teamOwned by Engine teamtriaged-engineTriaged by Engine teamTriaged by Engine team
Type
Projects
Status
Done