Skip to content

[Impeller] Text glyphs get transformed incorrectly when drawing with some font weights #119489

@briankariuki

Description

@briankariuki

Steps to Reproduce

  1. Create a flutter project. Enable impeller
  2. Add Bebas Neue font files to your app. Reference the imports into pubspec.yaml file.
  3. Create a tab bar with the code sample provided below

Expected results:
The text weights and sizes should be uniform

Actual results:
IMG_0790_1

Code sample
TabBar(
    unselectedLabelColor: Palette.gray3,
    labelColor: Colors.white,
    indicatorWeight: 1.0,
    indicatorColor: Palette.primary,
    tabs: [
      Tab(
        icon: Text(
          "Posts",
          style: TextStyle(
            fontSize: 20,
            fontFamily: 'Bebas Neue',
            fontWeight: FontWeight.w500,
            height: 1.0,
          ),
        ),
      ),
      Tab(
        icon: Text(
          "Replies",
          style: TextStyle(
            fontSize: 20,
            fontFamily: 'Bebas Neue',
            fontWeight: FontWeight.w500,
            height: 1.0,
          ),
        ),
      ),
    ],
  ),

pubspec.yaml fonts reference

fonts:
    - family: Inter
      fonts:
        - asset: assets/fonts/Inter-Light.ttf
          weight: 300
        - asset: assets/fonts/Inter-Regular.ttf
          weight: 400
        - asset: assets/fonts/Inter-Medium.ttf
          weight: 500
        - asset: assets/fonts/Inter-SemiBold.ttf
          weight: 600
        - asset: assets/fonts/Inter-Bold.ttf
          weight: 700
        - asset: assets/fonts/Inter-ExtraBold.ttf
          weight: 800
        - asset: assets/fonts/Inter-Black.ttf
          weight: 900
    - family: Bebas Neue
      fonts:
        - asset: assets/fonts/BebasNeue-Regular.ttf
          weight: 400
Flutter doctor output
[✓] Flutter (Channel stable, 3.7.0, on macOS 13.0.1 22A400 darwin-x64, locale en-KE)
    • Flutter version 3.7.0 on channel stable at /Users/brian/Documents/Dev/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision b06b8b2710 (6 days ago), 2023-01-23 16:55:55 -0800
    • Engine revision b24591ed32
    • Dart version 2.19.0
    • DevTools version 2.20.1

[✓] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
    • Android SDK at /Users/brian/Library/Android/sdk
    • Platform android-33, build-tools 32.1.0-rc1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)

[✓] VS Code (version 1.74.3)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.58.0

[✓] Connected device (4 available)
    • iPhone (mobile)        • 00008020-001144861108002E            • ios            • iOS 16.2 20C65
    • iPhone 14 Pro (mobile) • C0BC6585-0FC9-472A-B059-9F08B98BB902 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-2 (simulator)
    • macOS (desktop)        • macos                                • darwin-x64     • macOS 13.0.1 22A400 darwin-x64
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 108.0.5359.124

[✓] HTTP Host Availability
    • All required HTTP hosts are available

Metadata

Metadata

Assignees

Labels

P0Critical issues such as a build break or regressione: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.r: fixedIssue is closed as already fixed in a newer version

Type

No type

Projects

Relationships

None yet

Development

No branches or pull requests

Issue actions