Qml FontLoader 未加载自定义字体

     2023-02-16     35

关键词:

【中文标题】Qml FontLoader 未加载自定义字体【英文标题】:Qml FontLoader not loading the custom font 【发布时间】:2021-06-16 10:12:43 【问题描述】:

我正在尝试使用 Google 字体 Inter Regular TTF(我也测试了其他一些字体文件)但 FontLoader 没有加载字体,下面是我的代码。

我已将字体文件.ttf 复制到.qrc 资源“字体”文件夹中。 我已经定义了一个通用样式文件并加载了在整个应用程序中使用的字体。

// ------- Style.qml --------
pragma Singleton
import QtQuick 2.12

QtObject 

    property var myFontInterRegular: FontLoader 
        source: "qrc:/fonts/Inter-Regular.ttf"
        onStatusChanged: 
            console.log("onStatusChanged status:"+status); // Not getting called
        
    


信号onStatusChanged 没有被调用,所以我认为我的字体没有加载。 我使用的字体如下:

// ------- TestPage.qml --------
import QtQuick 2.12
import "."

Rectangle 
    id: parentRect
    width: parent.width
    height: parent.height

    Text 
        id: myTxt
        text: "Hello In Inter-Regular"
        font.family: Style.myFontInterRegular.name // Getting error "name" not defined
    


当我运行代码时出现错误:TypeError: Cannot read property 'name' of undefined for the line Style.myFontInterRegular.name

【问题讨论】:

当我尝试它时它工作。作为健全性检查,请尝试进行清洁然后重建。当我第一次将字体添加到资源文件时,出于某种原因,我不得不这样做。 【参考方案1】:

我使用过的和工作过的:

// ------assets/Style.qml---------
pragma Singleton

Item 
    property alias fontAwesome: fontAwesomeLoader.name
    FontLoader 
        id: fontAwesomeLoader
        source: "qrc:/fonts/fontawesome.ttf"
    

// ------- TestPage.qml --------
import QtQuick 2.12
import assets 1.0 // This works using qmldir and assets.qrc

Rectangle 
    id: parentRect
    width: parent.width
    height: parent.height

    Text 
        id: myTxt
        text: "Hello In Inter-Regular"
        font.family: Style.fontAwesome
    

// ---assets.qrc----
<RCC>
    <qresource prefix="/assets">
         <file alias="qmldir">assets/qmldir</file>
         <file alias="Style.qml">assets/Style.qml</file>
    </qresource>
</RCC>
// ---assets/qmldir----
module assets
singleton Style 1.0 Style.qml

【讨论】:

谢谢,我错过了qmldir 文件。根据文档,我们需要将此文件添加到项目的根目录中。

在qml中加载不同字体(代码片段)

...不起作用,后面翻阅文档,发现有专门对应Qml字体的组件FontLoader,FontLoader的说明FontLoader可以通过名字、本地路径、网络url 查看详情

加载资源失败:404(未找到)- Rails 自定义字体

】加载资源失败:404(未找到)-Rails自定义字体【英文标题】:Failedtoloadresource:404(NotFound)-Railscustomfonts【发布时间】:2014-09-1610:00:51【问题描述】:我正在尝试通过CSS@font-face加载一些自定义字体。我正在使用railsfonts_path方法。... 查看详情

自定义字体未加载到对话框的 listView 中

】自定义字体未加载到对话框的listView中【英文标题】:customfontarenotloadedindialog\'slistView【发布时间】:2019-06-0506:37:01【问题描述】:我已经在drawable文件夹下定义了字体文件夹和xml文件。我正在使用对话并定义了List_view.xml和List_... 查看详情

QML“自定义菜单”选项向上移动

...自定义数据对于我的应用程序的要求,我需要显示它动态加载QML文件(Qt.createComponent)。我需要的是在底部显示一些固定选项,当单击顶部时,另一个选项会出现在该顶部选项下方,该选项保持在顶部 查看详情

如何从 QML 组件调用自定义信号?

...发布时间】:2018-09-0813:10:55【问题描述】:有没有办法从加载到其他地方的组件中的mouseArea调用信号?当我点击矩形时,没有输入下例中的onClicked。结构需要保持定义不变。为了能够定义一个对任何源应用阴影的qml组件代码如下... 查看详情

未使用 tcpdf 自定义字体

】未使用tcpdf自定义字体【英文标题】:tcpdfcustomfontisnotbeingused【发布时间】:2013-07-2706:12:04【问题描述】:我正在使用TCPDF库通过PHP生成PDF文件。我想使用自定义字体,所以我使用addTTFfontmethod添加我的自定义TrueType字体文件。我... 查看详情

自定义字体未显示在字体系列列表中

】自定义字体未显示在字体系列列表中【英文标题】:CustomFontsnotshowingonfontfamilylist【发布时间】:2020-06-1014:16:10【问题描述】:我在macOSCatalina上使用Swift5和Xcode11.4.1。直到今天,我在应用自定义字体时都没有遇到任何问题。我... 查看详情

Vue Cli 3本地字体未加载

】VueCli3本地字体未加载【英文标题】:VueCli3Localfontsnotloading【发布时间】:2019-08-2016:22:38【问题描述】:尝试在VueCLI3中加载自定义本地字体时,字体仍然不会出现。我没有收到任何错误消息。检查器显示正在加载的正确规则,... 查看详情

Silverlight 中未显示某些自定义字体

】Silverlight中未显示某些自定义字体【英文标题】:SomecustomfontsarenotshowinginSilverlight【发布时间】:2014-12-0806:04:30【问题描述】:我正在使用VisualStudio2010。我想构建一个应用程序来显示一些带有自定义字体的文本。所有字体都是T... 查看详情

从应用程序特定文件夹加载自定义字体文件

】从应用程序特定文件夹加载自定义字体文件【英文标题】:Loadcustomfontfilefromapplicationspecificfolder【发布时间】:2013-12-1313:51:18【问题描述】:我的Win32应用程序必须从ProgramFiles文件夹加载自定义字体文件。是否可以从自定义位... 查看详情

自定义 UITableViewCell 未正确加载

】自定义UITableViewCell未正确加载【英文标题】:CustomUITableViewCellnotloadingproperly【发布时间】:2016-07-2313:02:59【问题描述】:我有一个自定义UITableViewCell,它有两个子视图,一个标签和一个UIView。UIView旨在成为将在运行时加载的自... 查看详情

故事书自定义字体未显示

】故事书自定义字体未显示【英文标题】:Storybookcustomfontsnotshowing【发布时间】:2020-02-0215:06:02【问题描述】:我有一个像这样的MaterialUI主题:importcreateMuiThemefrom\'@material-ui/core/styles\'constprimaryColor=\'#009baa\'consttheme=createMuiTheme(typ... 查看详情

如何先显示页面然后加载自定义字体?

】如何先显示页面然后加载自定义字体?【英文标题】:Howtodisplaypagefirstthenloadcustomfonts?【发布时间】:2013-08-2710:33:24【问题描述】:我有一个时间敏感的网页,我希望它先显示该页面,然后再加载任何自定义字体。换句话说,... 查看详情

未安装自定义字体 - Xcode 11 beta

】未安装自定义字体-Xcode11beta【英文标题】:Customfontnoneinstalled-Xcode11beta【发布时间】:2019-06-1010:13:49【问题描述】:安装新的betaxCode后。现有项目中设置的自定义字体不起作用。打开情节提要文件时,如下图所示计时成功后,... 查看详情

浏览器未请求自定义字体

】浏览器未请求自定义字体【英文标题】:Customfontfacenotrequestedbybrowsers【发布时间】:2022-01-2314:21:43【问题描述】:我知道标题相似的问题已经存在,但是读完之后我还是卡住了。我正在使用Django开发一个网站,并使用%static%标... 查看详情

导入语句未列出我的自定义 C++ 公开类

】导入语句未列出我的自定义C++公开类【英文标题】:ImportstatementdoesnotlistmycustomC++exposedclass【发布时间】:2015-07-2512:41:48【问题描述】:我正在为我的客户使用Qt开发一些演示项目,该项目使用mysql数据库和QML。现在,我已经使... 查看详情

使用自定义字体与expo反应原生,每次加载字体

】使用自定义字体与expo反应原生,每次加载字体【英文标题】:UsingcustomFontinreactnativewithexpo,loadingfonteverytime【发布时间】:2017-11-0218:05:18【问题描述】:我正在使用Expo和create-react-native应用程序。我喜欢手机上的实时/热加载功... 查看详情

自定义标签未加载到模板中

】自定义标签未加载到模板中【英文标题】:Customtagnotloadedintemplate【发布时间】:2016-05-0509:36:21【问题描述】:我创建了一个我想使用的自定义标签,但Django似乎找不到它。我的templatetags目录是这样设置的:pygmentize.pyfrompygmentsi... 查看详情