Repository: flutter
Issue: [Windows Desktop]Font blending is blurry.
Labels: engine,platform-windows,a: quality,a: typography,P2,found in release: 2.10,found in release: 2.13,team-engine,triaged-engine

## Steps to Reproduce

1. When mixed display of Chinese and English fonts, the clarity of English font letters is very blurred. It can be seen that the font clarity of the native system on the left is higher than that of the flutter font on the right.
3. Check out the images below.

**Expected results:** 
**Actual results:** 
![font](https://user-images.githubusercontent.com/5343265/165270063-31945f54-fe63-420b-98dc-20d1f8c4d3cc.png)



<details>
  <summary>Logs</summary>

**side_menu.dart**
```dart
import 'package:flutter/material.dart';

class SideMenu extends StatefulWidget {
  final double? width;
  final int selectedIndex;
  final ValueChanged<int>? onSelected;
  final List<SideMenuDestination> destinations;

  const SideMenu({
    Key? key,
    this.width,
    required this.destinations,
    required this.selectedIndex,
    this.onSelected,
  })  : assert(destinations.length >= 2),
        assert(0 <= selectedIndex && selectedIndex < destinations.length),
        super(key: key);

  @override
  State<SideMenu> createState() => _SideMenuState();
}

class _SideMenuState extends State<SideMenu> {
  @override
  @override
  Widget build(BuildContext context) {
    return SizedBox(
      width: widget.width ?? kWidthSideMenu,
      child: ListView(
        shrinkWrap: true,
        controller: ScrollController(),
        physics: const ClampingScrollPhysics(),
        children: [
          ...List.generate(
            widget.destinations.length,
            (index) => _SideMenuButton(
              icon: widget.destinations[index].icon,
              title: widget.destinations[index].title,
              selected: widget.selectedIndex == index,
              onPress: () {
                widget.onSelected!(index);
              },
            ),
          ),
        ],
      ),
    );
  }
}

class _SideMenuButton extends StatelessWidget {
  final Widget? icon;
  final String title;
  final bool selected;
  final VoidCallback onPress;

  const _SideMenuButton({
    Key? key,
    required this.icon,
    required this.title,
    required this.selected,
    required this.onPress,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return ListTile(
      dense: true,
      selected: selected,
      onTap: onPress,
      textColor: Colors.black,
      selectedColor: Colors.white,
      selectedTileColor: const Color(0xFF2CA7F8),
      //shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20.0)),
      contentPadding: const EdgeInsets.all(0),
      leading: icon != null ? SizedBox(width: 24, height: 24, child: icon) : null,
      title: Text(
        title,
        textAlign: icon != null ? TextAlign.start : TextAlign.center,
        maxLines: 1,
        overflow: TextOverflow.ellipsis,
        style: const TextStyle(fontSize: 12),
      ),
    );
  }
}

class SideMenuDestination {
  final Widget? icon;
  final String title;

  SideMenuDestination({required this.title, this.icon});
}

const double kWidthSideMenu = 250;
//const double _kDefaultPadding = 16.0;
```
**main.dart**
```dart
import 'dart:ui';

import 'package:flutter/material.dart';
//import 'package:flutter_signaturetool/widgets/page1.dart';
//import 'package:flutter_signaturetool/widgets/page2.dart';
import 'package:flutter_signaturetool/home_controller.dart';
import 'package:flutter_signaturetool/widgets/side_menu.dart';
import 'package:provider/provider.dart';

//import 'package:flutter_signaturetool/config/constants.dart';

void main() {
  runApp(
    ChangeNotifierProvider(
      create: (context) => HomeController(),
      child: const MyApp(),
    ),
  );
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        fontFamily: 'Simsun',
        //scaffoldBackgroundColor: primaryColor,
        primaryColor: const Color(0xFFE4E4E4),
        elevatedButtonTheme: ElevatedButtonThemeData(
          style: ButtonStyle(backgroundColor: MaterialStateProperty.resolveWith((states) => const Color(0xFF2CA7F8))),
        ),
      ),
      debugShowCheckedModeBanner: false,
      scrollBehavior: const MaterialScrollBehavior().copyWith(scrollbars: false, dragDevices: {PointerDeviceKind.mouse}),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  final String title;

  const MyHomePage({Key? key, required this.title}) : super(key: key);

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  late int _selectedIndex;
  late PageController? _pageController;

  @override
  void initState() {
    super.initState();
    _selectedIndex = 0;
    _pageController = PageController();
  }

  @override
  void dispose() {
    _pageController?.dispose();
    super.dispose();
  }

  void _onSelected(int index) {
    setState(() {
      _selectedIndex = index;
      _pageController?.jumpToPage(index);
    });
  }

  void _onPageChanged(int index) {
    setState(() {
      _selectedIndex = index;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: LayoutBuilder(
        builder: (BuildContext context, BoxConstraints constraints) {
          return SingleChildScrollView(
            controller: ScrollController(),
            scrollDirection: Axis.horizontal,
            physics: const NeverScrollableScrollPhysics(),
            child: ConstrainedBox(
              constraints: BoxConstraints(minWidth: constraints.maxWidth),
              child: IntrinsicWidth(
                child: Row(
                  mainAxisSize: MainAxisSize.min, // child max size all the same
                  mainAxisAlignment: MainAxisAlignment.start,
                  crossAxisAlignment: CrossAxisAlignment.stretch,
                  children: [
                    /// side menu
                    SideMenu(
                      width: 110,
                      selectedIndex: _selectedIndex,
                      onSelected: _onSelected,
                      destinations: [
                        SideMenuDestination(title: 'IPA签名'),
                        SideMenuDestination(title: 'IPA安装'),
                        SideMenuDestination(title: 'plist解析'),
                        SideMenuDestination(title: 'MachO签名解析'),
                        SideMenuDestination(title: 'Mobileprovision'),
                        SideMenuDestination(title: 'AppleOCSP'),
                        SideMenuDestination(title: '关于'),
                      ],
                    ),

                    /// screen
                    Expanded(
                      child: Container(
                        //margin: const EdgeInsets.symmetric(vertical: kDefaultPadding),
                        padding: const EdgeInsets.all(16.0),
                        decoration: const BoxDecoration(
                          color: Colors.white,
                          //borderRadius: BorderRadius.circular(10),
                        ),
                        width: 400,
                        height: 400,
                        child: PageView(
                          scrollDirection: Axis.horizontal,
                          controller: _pageController,
                          onPageChanged: _onPageChanged,
                          children: <Widget>[
                            //Page1(),
                            //Page2(),
                            Container(
                              color: Colors.amber,
                            ),
                            Container(
                              color: Colors.orange,
                            ),
                            Container(
                              color: Colors.blueAccent,
                            ),
                            Container(
                              color: Colors.grey,
                            ),
                            Container(
                              color: Colors.green,
                            ),
                            Container(
                              color: Colors.cyan,
                            ),
                            Container(
                              color: Colors.deepPurple,
                            ),
                          ],
                        ),
                      ),
                    ),
                  ],
                ),
              ),
            ),
          );
        },
      ),
    );
  }
}

```

**home_controller.dart**
```dart
import 'package:flutter/cupertino.dart';

class HomeController extends ChangeNotifier {
  int selectedIndex = 0;
  void onChangeSelectedIndex(int index) {
    selectedIndex = index;
    notifyListeners();
  }
}

```


**Download the [Font](https://github.com/flutter/flutter/files/8562296/simsun.zip)**

<!--
     Run `flutter analyze` and attach any output of that command below.
     If there are any analysis errors, try resolving them before filing this issue.
-->

```sh
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
Analyzing flutter_signaturetool...                                      
No issues found! (ran in 2.5s)
```

<!-- Finally, paste the output of running `flutter doctor -v` here. -->

```sh
Flutter assets will be downloaded from https://storage.flutter-io.cn. Make sure you trust this source!
[✓] Flutter (Channel stable, 2.10.5, on Microsoft Windows [Version 10.0.22000.613], locale zh-CN)
    • Flutter version 2.10.5 at J:\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5464c5bac7 (8 days ago), 2022-04-18 09:55:37 -0700
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[✓] Visual Studio - develop for Windows (Visual Studio Enterprise 2019 16.11.13)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise
    • Visual Studio Enterprise 2019 version 16.11.32413.511
    • Windows 10 SDK version 10.0.20348.0

[✓] VS Code (version 1.66.2)
    • VS Code at C:\Users\Young\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.38.1

[!] Proxy Configuration
    • HTTP_PROXY is set
    ! NO_PROXY is not set

[✓] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22000.613]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 100.0.4896.127
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 100.0.1185.44

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.
```

</details>