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

React Native-字体缩放后如何检测字体大小?

钱澄邈
2023-03-14

我需要检测字体缩放后文本组件的字体大小。假设我有一个字体大小为18px的文本组件

<Text style={{fontSize: 18}}>My Text</Text>

用户通过操作系统辅助功能设置设置了大字体。现在我的文本已经用更大的字体显示了(超过18px)。我知道我可以使用< code > allowFontScaling = { false } ,但我不想失去文本的可访问性。我看到React native有一个API来获取字体比例< code > pixel ratio . getfont scale(),但它不适用于iOS

返回字体大小的比例因子。这是用于计算绝对字体大小的比率,因此任何严重依赖于它的元素都应该使用它来进行计算。

如果未设置字体比例,则返回设备像素比。

目前,这仅在Android上实现,并反映了在设置中设置的用户首选项

有什么想法吗?

共有2个答案

穆宏胜
2023-03-14

你可以使用Window维度

import { useWindowDimensions } from 'react-native';

const MyScreen = ({ navigation }) => {
   useWindowDimensions().fontScale // you will get current scale
}
上官季
2023-03-14

反应原生设备信息提供了一个功能,getFontScale(),它似乎在Android和iOS中都有效。

 类似资料:
  • E/flutter(11441):#2_QuranShowState._ShowTaFseer..(封装:Alqranalkareem/Module/Quran/Show.Dart:881:32) E/Flutter(11441):#3_SliderState._HandleChanged(包:Flutter/SRC/Material/Slider.Dart:453:14) E/flutter(1

  • 所以我开始了一个个人简历网站,我偶然发现了一个非常酷的东西:font awesome,它以文本的形式提供图形,允许你通过CSS添加字体效果。我的问题是一切都很好,直到我试图改变字体大小,无论什么原因,它就是不会改变。你有什么想法吗?我也是新的这里,我已经阅读通过如何使帖子,但如果我做错了,请让我知道。

  • 本文向大家介绍你是如何压缩字体的?相关面试题,主要包含被问及你是如何压缩字体的?时的应答技巧和注意事项,需要的朋友参考一下 压缩字体文件么,有研究过,平时用 font-spider。 webpack 集成没怎么实践过,还只知道 url-loader。 有三种不同的压缩处理策略的, 自己决定压缩打包哪些文字,如 FontZip,iconFont 自动检测要压缩打包哪些文字,如 font-spider

  • 本文向大家介绍C#实现缩放字体的方法,包括了C#实现缩放字体的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现缩放字体的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的C#程序设计有所帮助。

  • 背景: 最近在做前端页面的时候 发现和设计图写出来的样子不一样,后来发现是字体不一样。 我这边样式font-family 直接没写用的是默认的。两边字体不一样 直接写出来的样式也不一样 请问有没有什么办法可以直接把字体文件进行压缩,或者有没有什么办法可以把字体引用进来?