精华内容
下载资源
问答
  • 2017-07-18 15:54:59

    固定了字体的大小后,使得app的字体大小不随手机本身的字体大小的改变而改变,通过以下方法实现:

    哪个页面要固定就在那个页面的在onCreate() 里添加如下代码:

    Resources res = getResources();  
    Configuration config=new Configuration();  
    config.setToDefaults();  
    res.updateConfiguration(config,res.getDisplayMetrics());
    更多相关内容
  • 因用户可能在移动设备的设置中改变字体大小,从而影响我们打包后app的显示界面,因字体大小问题,页面显示不是我们想要的,对比微信、qq等软件发现,大多数都是屏蔽了设置中改变字体大小对app的影响,我将我改后的...
  • Android Html标签中支持,size,font-size,font-weight属性.如果系统中不支持的也可以在这基础上扩展.
  • css怎么控制字体大小?下面本篇文章就来给大家介绍一下在HTML页面中使用CSS控制字体大小的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。css怎么控制字体大小?在CSS中想要控制字体大小,...

    css怎么控制字体大小?下面本篇文章就来给大家介绍一下在HTML页面中使用CSS控制字体大小的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

    cd218a9f86ca60e05a7e601313218026.png

    css怎么控制字体大小?

    在CSS中想要控制字体大小,可以使用font-size属性。font-size 属性用于设置字体大小、字体的尺寸;实际上该属性设置的是字体中字符框的高度;实际的字符字形可能比这些框高或矮(通常会矮)。

    font-size属性用于设置字体大小。如果一个元素没有显式定义font-size属性,则会自动继承父元素的 font-size属性的计算结果。

    定义 font-size 时,可以使用预定义关键字、绝对尺寸、相对尺寸:

    1)预定义关键字

    预定义关键字有 xx-small、x-small、small、medium、large、x-large、xx-large,尺寸按顺序依次增大,类似于衣服的尺寸。

    使用预定义关键字有两大缺陷:一是只有 7 种选择,可选择范围太小;二是跟衣服的尺寸一样,不同厂商对每个关键字对应的字体大小的精确值可能各不不同,导致在不同浏览器下,文本的大小可能不同。因此,不推荐使用预定义关键字来定义字体的大小。

    2)绝对尺寸

    绝对尺寸有px(像素)、pt(点,1pt 相当于 1/72in)、in(英寸)、cm(厘米)、mm(毫米)等。如:px {

    font-size: 14px;

    }

    .pt {

    font-size: 10pt;

    }

    .in {

    font-size: .15in;

    }

    .cm {

    font-size: .4cm;

    }

    .mm {

    font-size: 4mm;

    }

    字体大小: 14px

    字体大小: 10pt

    字体大小: .15in

    字体大小: .4cm

    字体大小: 4mm

    上述代码定义了 5 种字体大小,都使用绝对单位。使用绝对长度单位后,在固定分辨率的显示器下,显示出来的都是固定大小。运行结果如图 3‑1 所示:

    937c07888c48ac90279778c13e6524f2.png

    如果以 px 为单位设置字体大小,使用IE浏览器的用户,就不能在浏览器上通过设置“文字大小”来对文本进行放大或缩小。如果文本太小,就会影响阅读,使用户体验大打折扣。

    3)相对尺寸

    相对尺寸有 em、%、rem,它们都是相对于某个参考基准的字体大小,来计算当前字体的大小,只是参考基准不同而已。

    em 的参考基准是父元素。那么,如何计算要指定的 em 值呢?实际上,1em 总是等于父元素 font-size属性的值,这就是 em 的工作原理。据此,可以通过以下公式来确定百分比的值:

    目标元素的字体大小 / 父元素的字体大小 = 值

    因此,在使用 em 定义字体大小时,最好在 html 或 body 元素上建立一个基准。假设在 body 中设置的基准大小为 12px:body {font-size: 12px;}

    如果希望 body 中所有段落的字体大小为 18px,根据上述公式:

    18 / 12 = 1. 5

    因此,只需将将段落的 font-size 设置为 1.5em 就可以了,这条规则就表示段落文本的字体大小为父元素文本大小的1.5 倍:body p {font-size: 1.5em;}

    % 的参考基准也是父元素,100% 也总是等于父元素 font-size属性的值,即 1em 就等于 100%。也就是说,在用 % 定义字体大小时,只需将 em 的值换算成相应的百分数即可。因此,以下两条声明会得到相同的结果(假设两个段落具有相同的父元素):p.one {

    font-size: 1.5em;

    }

    p.one {

    font-size: 150%;

    }

    需要注意的是,尽管 font-size 是可以继承的,但在使用 % 和 em 定义字体大小时,子元素继承的是计算结果的值,而不是 % 和 em 的数字。并且,% 和 em 还可以累积。考虑以下代码:p {

    font-size: 12px;

    }

    em {

    font-size: 200%;

    }

    strong {

    font-size: 200%;

    }

    12px 200% 200%

    上述代码中,p 为父元素,em 为 p 的子元素,strong 为 em 的子元素。em 元素的基准是 p 元素,而 strong 元素的基准是 em 元素。计算结果如下:em:12 × 200% = 24px

    strong:24 × 200% = 48px

    得到的运行结果如图所示:

    faa86ce184e4caa6c4a026539f484ae1.png

    在这种多层嵌套的情况下,如果某一个计算结果不是整数,浏览器可能就会取整,子元素再继承取整后的值。如果嵌套很深,下层的字体大小就越来越偏离实际计算值。并且,由于参考基准总是随着元素发生变化,嵌套越深,计算起来也就越困难。

    鉴于此,CSS3中新增的一个相对单位 rem(root em的简称),它总是以文档的根元素(即 html 元素)为参考基准,来设置其它元素的字体大小,即 1rem 相当于 html 元素 font-size属性的值。考虑以下代码:html {

    font-size: 10px;

    }

    p {

    font-size: 1.4rem;

    }

    上述声明中,p 元素的字体大小将是 html 字体大小的1.4倍,则计算得到 p 元素的字体大小就是1.4 × 10px = 14px。

    这样一来,无论嵌套多少层,参考基准始终不变,计算字体大小就变得容易多了。不过,需要注意的是,rem 是CSS3新增的一个相对单位,IE9 以下版本的老浏览器却不支持它,这也是很多编程人员尚未使用 rem 的原因。

    在定义字体大小时,笔者建议在 html 元素中定义绝大多数元素所需要的字体大小,并让所有子元素继承 html 的字体大小。如果某个子元素需要要改变字体大小,则使用相对尺寸 em 或 % 或 rem 重新定义。

    这样做的好处是,一方面,绝大多数元素都不必定义字体大小,减少不必要的定义;另一方面,如果完成所有的文字排版后,又要统一调整页面文字大小,就可以只修改 html 中的字体大小,其它所有文字的字体大小会自动变化,修改起来就很容易。

    font-size属性的属性值:值描述

    xx-small

    x-small

    small

    medium

    large

    x-large

    xx-large把字体的尺寸设置为不同的尺寸,从 xx-small 到 xx-large。

    默认值:medium。

    smaller把 font-size 设置为比父元素更小的尺寸。

    larger把 font-size 设置为比父元素更大的尺寸。

    length把 font-size 设置为一个固定的值。

    %把 font-size 设置为基于父元素的一个百分比值。

    inherit规定应该从父元素继承字体尺寸。

    更多web开发知识,请查阅 HTML中文网 !!

    展开全文
  • 修改MFC中Button控件控件字体、字体大小、背景色、背景图片,主要方法采用需要通过button类派生Mybutton类,然后重载其中DrawItem函数
  • 我将图像大小设置为标签大小。当我试图用命令label.config(image=img)放置它时,标签大小会增大。图像的大小是我设置的,所以它没有完全覆盖标签。我在用网格管理器。所有尺寸均未输入“高级”,而是由Tkinter计算。...

    我找到了这个问题的解决办法。我试图解决一个类似的问题:我想把图像贴上标签。我将图像大小设置为标签大小。当我试图用命令label.config(image=img)放置它时,标签大小会增大。图像的大小是我设置的,所以它没有完全覆盖标签。我在用网格管理器。所有尺寸均未输入“高级”,而是由Tkinter计算。我用的是grid_columnconfigure和grid_rowconfigure。我找到的解决方案是将这个带有图像的标签(或者您的例子中的按钮)设置为LabelFrame,并将grid_propagate设置为False。

    代码示例:MyWindow = tk.Tk()

    MyWindow.geometry("500x550")

    #create LabelFrame (200x200)

    label = tk.LabelFrame(MyWindow, width=200, height=200)

    #grid manager to set label localization

    labelk.grid(row=0, column=0)

    #label row and column configure: first argument is col or row id

    label.grid_rowconfigure(0, weight=1)

    label.grid_columnconfigure(0, weight=1)

    #cancel propagation

    label.grid_propagate(False)

    #Create button and set it localization. You can change it font without changing size of button, but if You set too big not whole will be visible

    button = t.Button(label, text="Hello!", font=('Helvetica', '20'))

    #Use sticky to button took up the whole label area

    button.grid(row=0, column=0, sticky='nesw')

    MyWindow.mainloop()

    字体大小40和20的结果:

    通过网格管理器创建具有动态大小的按钮的示例:MyWindow = tk.Tk()

    MyWindow.geometry("500x550")

    #Divide frame on 3x3 regions

    for col in range(3):

    MyWindow.grid_columnconfigure(col, weight=1)

    for row in range(3):

    MyWindow.grid_rowconfigure(row, weight=1)

    label = tk.LabelFrame(MyWindow)

    #Put label in the middle

    label.grid(row=1, column=1, sticky='nesw')

    label.grid_propagate(False)

    label.grid_rowconfigure(0, weight=1)

    label.grid_columnconfigure(0, weight=1)

    button = tk.Button(label, text="Hello!", font=('Helvetica', '30'))

    button.grid(row=0, column=0, sticky='nesw')

    MyWindow.mainloop()

    这是个迟交的答复,但也许能帮上忙。

    展开全文
  • 字体大小Demo

    2016-10-31 13:41:21
    字体大小Demo
  • 前言安卓4.0之后系统设置->显示里面新增了字体大小设置的选项.看下你自己的安卓机,如果你将字体大小从小号一直增大到特大号,有没有发现某些安装的app里面的字体大小也随着变化了?这样可能是便于了阅读,但是app里面...

    前言

    安卓4.0之后系统设置->显示里面新增了字体大小设置的选项.看下你自己的安卓机,如果你将字体大小从小号一直增大到特大号,有没有发现某些安装的app里面的字体大小也随着变化了?这样可能是便于了阅读,但是app里面本来能显示完全的内容可能因此就只显示了部分.实际上,我们可以看一下QQ、淘宝等大厂的应用,里面的字体大小并不会随着系统设置的大小而变化.

    初始解决方法

    网上早已给出了解决办法,在Application,也就是app定义的入口处添加以下代码:

    @Override
    public void onCreate(){
        super.onCreate();
        Resources resources = getResources();
        resources.getConfiguration().fontScale = 1.0f;
        resources.updateConfiguration(null, null);
    }

    就是说,在应用初始化的时候,通过上下文得到应用的资源,进而得到对应于当前应用资源的配置(Configuration),将配置里代表字体缩放的变量(fontScale)置为1,也就是默认值,不进行任何缩放.

    新的问题

    这时候如果先设置好系统字体的大小为超大或其它,再次进入应用,字体仍然保持之前的大小.但是!如果你没有对该页面(设定最简单的情况,是一个Activity)进行任何设置,那么切换屏幕方向,比如从竖屏到横屏,会发现字体大小又变化了,本来可以显示完全的现在换行了.日志打印获取其字体大小也可以证明确实是变化了:

    I/MainActivity_LOG: 该页面重新创建
    I/MainActivity_LOG: 字体的大小:48.0
    I/MainActivity_LOG: onStart
    I/MainActivity_LOG: onResume
    I/MainActivity_LOG: onPause
    I/MainActivity_LOG: onStop
    I/MainActivity_LOG: onDestroy
    I/MainActivity_LOG: 该页面重新创建
    I/MainActivity_LOG: 字体的大小:62.0

    意识到可能跟屏幕方向切换后,页面销毁后重新创建的过程有关.而屏幕方向是设备配置的一个属性,屏幕旋转又是影响配置变化的因素之一.所以要看一下Configuration Change.

    Configuration变化后页面的生命周期

    public class MainActivity extends AppCompatActivity {
    
        public static final String TAG = "MainActivity_LOG";
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            Log.i(TAG, "该页面重新创建");
    
            TextView textView = findViewById(R.id.textView);
            float textSize = textView.getTextSize();
            Log.i(TAG, "字体的大小:" + textSize);
    
        }
    
        @Override
        public void onConfigurationChanged(Configuration newConfig) {
            super.onConfigurationChanged(newConfig);
            Log.i(TAG, "config更新了");
        }
    
        @Override
        protected void onStart() {
            super.onStart();
            Log.i(TAG, "onStart");
        }
    
        @Override
        protected void onResume() {
            super.onResume();
            Log.i(TAG, "onResume");
        }
    
        @Override
        protected void onPause() {
            super.onPause();
            Log.i(TAG, "onPause");
        }
    
        @Override
        protected void onStop() {
            super.onStop();
            Log.i(TAG, "onStop");
        }
    
        @Override
        protected void onDestroy() {
            super.onDestroy();
            Log.i(TAG, "onDestroy");
        }
    }

    查看日志后,发现:
    1.清单文件中不声明任何属性,切屏后Activity销毁后重建,重新走了一遍生命周期,并且不会回调onConfiguration方法,切横屏和切竖屏都是.日志如下:

    I/MainActivity_LOG: onPause
    I/MainActivity_LOG: onStop
    I/MainActivity_LOG: onDestroy
    I/MainActivity_LOG: 该页面重新创建
    I/MainActivity_LOG: onStart
    I/MainActivity_LOG: onResume

    2.在清单文件中声明Activity的android:configChanges属性,如果只是单独声明orientation或者screenSize,和没有声明的情况一样.

    3,在清单文件中声明android:configChanges="orientation|screenSize",才可以成功回调onConfigurationChanged方法.并且此时不会销毁当前的Activity,也就是不会重走各个生命周期.

    原因分析

    到这大概可以清楚,虽然应用初始化的时候更新了Configure的fontScale=1,但如果出现了销毁页面重新创建的情况,之前保存的配置就会失效.其实稍微看一下源代码就明白了,调用getResources().getConfiguration()返回的是在ResourcesImpl类中初始化的时候创建的Configuration对象,调用其无参构造方法后,最终调用的是unSet方法:

    public void unset() {
        setToDefaults();
        fontScale = 0;
    }

    该方法最终将字体缩放值置为0,也就是适应系统字体的变化,就出现了前面说的问题.

    Configuration Changes引起的其它情况

    一开始,我采取的是配置清单文件中Activity的属性,比如将屏幕的方向写死android:screenOrientation="portrait",或者避免Activity销毁重建android:configChanges="orientation|screenSize",这样做的话,旋转屏幕不会造成已修改的配置失效.但是引起Configuration Changes的情况很多,不仅仅是切屏:比如修改设备的默认语言,修改系统字体大小.从打印日志可以看出这时候页面仍然进行了销毁和重建的过程,已更新的字体大小配置又失效了.

    解决方法

    现在提供了一种解决方法,虽然不太优雅.既然外部的各种操作无法全部考虑到,并且都可能会引发页面的销毁和重建,也就是说无法控制Configuration的重置,在不能修改API的情况下,能想到的就是在基类BaseActivity(或其它)初始化的时候都调用一下更新字体配置的方法.或者更好一点的方式,Application提供了一个监听方法registerActivityLifecycleCallbacks,可以全局监听应用里面所有已声明的Activity的生命周期.当监听到应用创建的时候,都更新一下.

    public class MainApplication extends Application {
    
        @Override
        public void onCreate() {
            super.onCreate();
    
            this.registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
                @Override
                public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
                    Resources resources = getResources();
                    resources.getConfiguration().fontScale = 1.0f;
                    resources.updateConfiguration(null, null);
                }
    
                @Override
                public void onActivityStarted(Activity activity) {
                }
    
                @Override
                public void onActivityResumed(Activity activity) {
                }
    
                @Override
                public void onActivityPaused(Activity activity) {
                }
    
                @Override
                public void onActivityStopped(Activity activity) {
                }
    
                @Override
                public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
                }
    
                @Override
                public void onActivityDestroyed(Activity activity) {
                }
            });
    
        }
    }

    总结

    关于字体大小还有一种解决方式,就是在布局文件中全部用px表示,因为手机的分辨率就是以px定义的,所以无论系统怎么设置字体大小,配置如何更新,显示在界面上的字体大小都是固定的.当然这也带来了适配的问题,因为谷歌官方建议用dp定义尺寸的.这涉及到了安卓的屏幕兼容性问题,可以用鸿洋的方法解决:Android屏幕适配方案.不过这种方法自己根据屏幕分辨率计算出的以160dpi为基准的px大小,没有考虑到屏幕尺寸,也是无法解决所有的问题.
    目前我测试没有发现明显的问题,当然方式有点简单粗暴.如果有更好的实现方式,也希望各位能告诉我一下,欢迎交流.

    展开全文
  • Vue指令可根据元素宽度自动调整字体大小。 它使字体大小在灵活或响应式布局上具有灵活性。 :调整浏览器视口的大小以查看实际效果 安装 通过NPM安装 $ npm install vue-resize-text --save 通过CDN安装 < ...
  • H5移动端开发之基础字体大小设置

    千次阅读 2021-03-15 10:35:44
    前段时间接触了h5移动端的开发,移动端字体大小不同于pc端一般直接用px单位,而是经常用rem作为基础单位,常规做法使用1rem=100px的换算方式,如果设计稿是375px作为整个屏幕端度的话,那么我们换算过的屏幕宽度则为...
  • Visio设置默认字体大小的方法

    万次阅读 多人点赞 2019-07-31 11:42:27
    天下苦”VISIO默认字体太小“久矣。 看了几个国外论坛并试验了下,总结了以下方法可以较为一劳永逸地解决这个问题。 首先,软件中默认是不带这个功能的,需要一系列操作去开启: 打开visio,选项->高级,开启”...
  • 字体大小使用 em,rem作为单位,然后使用 media query 来调整 html 元素的 font-size 自适应网站 html {font-size: 62.5%!important; /* 10÷16=62.5% */} @media only screen and (min-width: 481px){ html { ...
  • 当我需要使用支持动态类型的相等大小的视图放置垂直或水平堆栈时,它可以帮助我解决问题。假设您正在使用的视图应该代表一周中每一天的平均心率。我将使用带有文本组件的水平堆栈来实现该视图。 import SwiftUI ...
  • 1、将字体大小的单位设置了dp,就可以固定字体大小不随系统设定的字号变化 sp和dp很类似但唯一的区别是,Android系统允许用户自定义文字尺寸大小(小、正常、大、超大等等),当文字尺寸是“正常”时1sp=1dp=0.00625...
  • [css] 在固定宽度的div下,怎么让字体自适应大小,不超出宽度,也不要换行 .item-codes{width:800px;word-break: break-all;white-space: normal;} 个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易,...
  • 自定义textview字体大小自适应宽度,遇宽变大,遇窄变小
  • 根据给定的长度,自动调整字体大小,以适应如edit.text,label.caption等这类显示框,希望能帮助更多人.
  • -- 必须指定字体才能设置字体大小 local ttfConfig = {} --配置 ttfConfig.fontFilePath="base/res/Font/founderblack.TTF" ttfConfig.fontSize = 15 lab = cc.Label:create() lab:setTTFConfig(ttfConfig) ...
  • 类似苹果字体大小设置的一个滑块 1.固定间距 2.可以点击修改值
  • 报告中,原先设置字体为宋体,大小14px,内容溢出换行后生成报告时,发现超出内容部换行,后来将字体大小修改成默认大小,发现溢出内容可以换行,但是这并不能满足业务需求,后来查资料获知是因为PDF字体和报告字体...
  • html5纯css字体大小自适应设置

    万次阅读 2017-12-15 15:22:57
    css 字体大小自适应样式设置篇 字体可以设置大小使用css font-size来实现,有时需要对字体大小根据浏览器分辨率来判断后自适应大小。 在CSS 2.0中字体大小自适应是难实现的,一般使用JS来实现,这里就不必说...
  • HTML设表格字体大小

    千次阅读 2021-06-12 17:22:48
    好文网为大家准备了关于HTML设表格字体大小范文,好文网里面收集了五十多篇关于好HTML设表格字体大小好文,希望可以帮助大家。更多关于HTML设表格字体大小内容请关注好文网篇一:HTML中设置各种字体格式的语法1.2文字...
  • css样式中怎么设置字体大小

    万次阅读 2021-08-05 04:39:18
    在css样式中,可以利用“font-size”属性来设置字体大小,只需给文本元素设置“font-size:值;”样式即可。font-size属性用于设置字体大小,实际上设置的是字体中字符框的高度,其实际字符字形可能比框高或矮(通常会...
  • 像 text() 命令一样向图形添加文本,除了此文本随着图形缩放和缩放而增长/缩小,与在图形操作期间保持固定字体大小的普通文本不同。 请注意,它随图形高度缩放 ​​- 为了获得最佳缩放效果,请在设置文本之前使用...
  • 改变控制台字体大小

    千次阅读 2021-05-18 14:37:42
    该楼层疑似违规已被系统折叠隐藏此楼查看此楼网友说,既然能改变控制台的颜色,为什么不能改变控制台的字体大小呢?答案是肯定的。系统为我们提供了许多的API,能更改字体大小的API正隐身其中。网上没有控制台字体...
  • 经过设置后:用户在Setting-->字体设置里面设置字体大小后,字体大小将不会改变。  从android4.0起系统设置的”显示“提供设置字体大小的选项。这个设置直接会影响到所有sp为单位的字体适配,所以很多app在设置...
  • 在制作报表打印时,因为长宽大小固定,希望里面的内容显示友好。...插件下载地址:text-show插件,容器大小固定,根据文字多少来调节显示的字体大小 demo代码: <!DOCTYPE html> <htm...
  • Android中如何设置字体大小

    千次阅读 2021-05-27 04:43:01
    Android操作系统意识到了这些情况,并提供了一套显示辅助功能,使得用户可以根据自己的使用习惯随意缩放设备中文本字体大小。 要在设备上修改字体设定,首先启用“设定”应用,然后选择“显示”项下的“字体尺寸”...
  • css 中字体大小

    千次阅读 2021-08-04 05:08:02
    css属性font-size可以用来设置字体大小, 可是有时候看到大小的设置是font:bold 20px/24px Verdana, Geneva, sans-serif;这里的20px/24px是指的什么, 这个斜杠表示什么呢?解答:font有多个属性,我写的时候一般就用...
  • 一款文本格式化显示插件text-show。容器大小固定,根据文字多少来调节显示的字体大小。 资源中包含demo,简单易用。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 76,515
精华内容 30,606
关键字:

如何固定字体的大小