flutter Linux桌面字体渲染与Chromium不同,

isr3a4wc  于 4个月前  发布在  Flutter
关注(0)|答案(4)|浏览(55)

重现步骤

你好,我是一名开发LG电视应用的开发者。
在将一个网页应用迁移到Flutter时,我注意到Flutter(Chromium)渲染我们的字体与网页有所不同。
LG_Smart_UI_JP font sample.zip
数字“6”与其他数字的渲染大小不同(6的顶部高于其他数字),尤其是在fontSize(20、21、22)的情况下。

预期结果

"数字的高度应该是相同的。"

实际结果

"数字6比其他数字高。"

代码示例

代码示例
Use this font file for sample code_LG_Smart_UI_JP font sample.zip

import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});
  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: Text(widget.title),
      ),
      body: Container(
        color: Colors.black,
        child: const Center(
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.start,
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Text(
                'Flutter font test',
                style: TextStyle(
                  color: Colors.white,
                  fontSize: 24,
                ),
              ),
              Text(
                'font size 12 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 12,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 14 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 14,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 16 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 16,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 18 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 18,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 20 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 20,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 21 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 21,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 22 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 22,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 23 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 23,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 24 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 24,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 36 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 36,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 48 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 48,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 52 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 52,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
              Text(
                'font size 64 : 0123456789',
                style: TextStyle(
                    color: Colors.white,
                    fontSize: 64,
                    fontFamily: 'LG_Smart_UI_JP'),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

截图或视频

截图/视频演示

网页应用截图

Flutter应用截图

日志

Flutter Doctor输出

医生输出

qltillow

qltillow1#

感谢报告。保持此问题为团队跟踪开放。

slhcrj9b

slhcrj9b2#

你正在使用哪种网络后端?

cgyqldqp

cgyqldqp3#

我们正在运行基于Linux环境(Ubuntu 20.04.6 LTS)的应用程序。因此,Web后端没有被使用。

rqqzpn5f

rqqzpn5f4#

哦,我误解了,以为这是一个网络构建问题。

相关问题