当前位置: 首页 > 知识库问答 >
问题:

Xamarin-有可能在我的应用程序中使用默认/系统字体吗?

张卓
2023-03-14

我浏览了我的3个Android设备(SGS6、SGS20、H10)上的“/system/fonts”文件夹,从那里下载了所有文件到我的PC上,分析了它,发现一些字体名称对所有3个设备都是通用的--AndroidClock、Carrois Gothic SC、Coming Soon、Cutive Mono、Dancing Script、Droid Sans Mono、Noto Naskh、Noto Sans、Noto Serif、Roboto、Roboto Black、Roboto Condensed、Roboto Light、Roboto Medium和Roboto Thin。

问题是-有没有可能在我的Xamarin应用程序中使用这些,而不明确地将它们绑定?如果我只指定MyLabel.fontFamily=“Coming Soon”(即将到来)就好了,这样就行了...但实际上这根本行不通。:-(所以,我有点疑惑--为什么?如果可能的话,让它以某种方式工作?...

我尝试在Xamarin应用程序中显示10个标签,它们都有不同的字体名称:AndroidClock、Carrois Gothic SC、Coming Soon、Cutive Mono、Dancing Script、Droid Sans、Droid Serif、Droid Sans Mono--但所有标签都显示相同的字体(我甚至不确定默认字体的名称是什么)。

我需要它的工作只为Android。对iOS完全不感兴趣。有没有办法告诉Xamarin只使用设备上可用的系统字体?

共有1个答案

单于楚
2023-03-14

如果我只指定MyLabel.fontFamily=“Coming Soon”(即将到来)就好了,这样就行了...但实际上这根本行不通。:-(所以,我有点疑惑--为什么?如果可能的话,让它以某种方式工作?...

如果解析fonts.xml文件,可以找到哪个字体族使用哪个字体(请参阅此处):

╔════╦════════════════════════════╦═════════════════════════════╗
║    ║ FONT FAMILY                ║ TTF FILE                    ║
╠════╬════════════════════════════╬═════════════════════════════╣
║  1 ║ casual                     ║ ComingSoon.ttf              ║
║  2 ║ cursive                    ║ DancingScript-Regular.ttf   ║
║  3 ║ monospace                  ║ DroidSansMono.ttf           ║
║  4 ║ sans-serif                 ║ Roboto-Regular.ttf          ║
║  5 ║ sans-serif-black           ║ Roboto-Black.ttf            ║
║  6 ║ sans-serif-condensed       ║ RobotoCondensed-Regular.ttf ║
║  7 ║ sans-serif-condensed-light ║ RobotoCondensed-Light.ttf   ║
║  8 ║ sans-serif-light           ║ Roboto-Light.ttf            ║
║  9 ║ sans-serif-medium          ║ Roboto-Medium.ttf           ║
║ 10 ║ sans-serif-smallcaps       ║ CarroisGothicSC-Regular.ttf ║
║ 11 ║ sans-serif-thin            ║ Roboto-Thin.ttf             ║
║ 12 ║ serif                      ║ NotoSerif-Regular.ttf       ║
║ 13 ║ serif-monospace            ║ CutiveMono.ttf              ║
╚════╩════════════════════════════╩═════════════════════════════╝

因此,comingsoon.ttf在FontFamily中称为casial

<Label Text="Hello monospace!"
        FontFamily="monospace"
        HorizontalOptions="CenterAndExpand" />
<Label Text="ComingSoon"
        HorizontalOptions="CenterAndExpand"
        FontFamily="casual"/>
<Label Text="Roboto Black"
        HorizontalOptions="CenterAndExpand"
        FontFamily="sans-serif-black"/>
<Label Text="Default Font"
        HorizontalOptions="CenterAndExpand" />

以下是相关的论述。

 类似资料:
  • shell模块提供与 桌面集成 相关的功能,如点击url时调用默认浏览器 进程: 主进程, 渲染进程​ 使用默认浏览器打开链接: 1 const {shell} = require('electron') 2 shell.openExternal('https://github.com') Copied! 方法 shell.showItemInFolder(fullPath) 用途:判断是否在文件

  • 昨天我启动了一个Android Things项目,我正在使用Android Studio测试该应用程序。以便使用

  • 我在Windows上使用系统字体作为。不支持CJK字符,但不是默认为这些字符(例如

  • 随着我深入研究下一个响应式网站,我正在探索手机版本使用系统字体的选项。我想知道一些事情。 第一个问题是,如果我们指定设备上的字体(例如系统字体),但我们也需要Open SAN(我们的默认正文字体),那么设备还会下载Open SAN字体文件吗?在字体系列声明中,打开的SAN将列在系统字体之后。 或者作为@font-face调用。 如果这种类型的设置确实消除了下载字体,从而减少了查看网页的数据使用,我

  • 我正在应用程序中使用Roboto light字体。要设置字体,我必须向每个视图添加。有什么方法可以将Roboto字体声明为整个应用程序的默认字体家族吗?我试过这样,但似乎不起作用。

  • 在我们的应用程序中,我们希望集成android默认GPS对话框。当GPS关闭,我们在谷歌地图应用程序中按下我的位置按钮时,会出现相同的对话框。还附上了我想要集成的对话框的图像。 单击“否”选项将关闭对话框。 单击是选项将直接激活设备的GPS。 我们现有的实现是当GPS关闭时,我们将应用程序重定向到设备的默认位置设置屏幕,从那里他/她可以打开位置。 期待答案。提前感谢。