精华内容
下载资源
问答
  • 安卓手机系统设置字体大小后与APP以及web端字体大小问题最近在做一些有关html和App的一些混合式开发,在测试过程中发现,android手机系统设置了字体大小,app应用中和web服务端的页面(也就是html界面)字体都会有...

    安卓手机系统设置字体大小后与APP以及web端字体大小问题

    最近在做一些有关html和App的一些混合式开发,在测试过程中发现,android手机系统设置了字体大小,app应用中和web服务端的页面(也就是html界面)字体都会有变化。下面我就在这次开发者中遇到的相关问题进行一个小小的总结。

    1.情况发生,设置系统字体之后的前后对比
    这里写图片描述
    这里写图片描述
    是不是发现字体变化还是很大的呢!

    web端html和入app中,有些会出现兼容问题,有些机子并不会出现兼容问题。实际开发中,对于android的同学来说,只要有超过三种有这种问题就需要进行解决这个问题。小编在网络上找了很多的资料,发现,网络就是一个大杂烩,什么都有,但是有用的却很少,如何解决这个问题呢?其实并没有那么麻烦。

    2.问题研究
    1)app中字体大小不随着系统设置字体大小而改变是很容易的,但是需要确定您之前已经做过兼容测试,您的布局不会有兼容问题,也就是默认的系统设置的时候,也就是字体放大倍数为1.0的时候,不会有布局问题
    这个时候只需要加入两行代码就能够轻松的解决这个问题,这个也是百度中就可以找到的。这里小编也只是做了一个代码的搬运工

            //防止字体被从新设置
            DisplayMetrics displayMetrics = getResources().getDisplayMetrics();
            displayMetrics.scaledDensity = displayMetrics.density;

    小编并不喜欢重复操作,所以我直接在环境类中加入了代码,代码如下

    public class MyApplication extends YTBaseApplication {
    
        @Override
        public void onCreate() {
            super.onCreate();
            //防止字体被从新设置
            DisplayMetrics displayMetrics = getResources().getDisplayMetrics();
            displayMetrics.scaledDensity = displayMetrics.density;
            CrashHandler.getInstance().init(this);
            init();
        }

    是不是恨简单呢!

    2)web端界面放入APP兼容问题
    查了一些相关资料,发现都写的比较麻烦,并且不能够解决相关的问题,还好小编之前有做过web端html界面App兼容,顾发现,并没有百度回答的那么麻烦

    从理论角度想就是你设置字体大小就是把当前的html界面字体的放大缩小倍数,顾我们只需要让我们的webview这个view’控制html的放大倍数为1.0,很多人知道也就是默认的大小就行,具体代码如何写呢!

            WebSettings webSettings = webView.getSettings();
            webSettings.setTextZoom(100);

    是不是发现其实超级简单呢!

    希望本人的这篇文章对大家有用。未来的日子一起努力。

    展开全文
  • 关于移动端页面在手机调整字体大小后内容适配的问题,作为新手我也...这种问题应该可以忽略,毕竟字体调后,又可以调回原来的啊,而且部分手机都是默认 显示标准字体吧。而且我在移动端的meta标签里已经给vi...

    关于移动端页面在手机调整字体大小后内容适配的问题,作为新手我也刚好是第一次遇到,

    已经完成的移动端页面,正常情况下在手机上的浏览器端和App端都可以正常显示,可当测

    试把手机字体调大后,布局就忽然变乱了....盒子里面的内容向内挤了。说实话,刚开始感觉

    这种问题应该可以忽略,毕竟字体调大后,又可以调回原来的啊,而且大部分手机都是默认

    显示标准字体吧。而且我在移动端的meta标签里已经给viewport容器添加了相应属性值,

    也是用rem布局的,还会出现这种错乱的情况,我能怎么办....不过后来想了想,既然你是前

    端工程师,搞技术的,就应该要学会解决技术问题啊,所以我还是打开了浏览器,开始动手

    我最熟悉的骚操作Ctrl+C、Ctrl+V...

    刚开始我在找是不是viewport容器里还有些属性值少添加了。

    我自己原来的值是这样的:<meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=0">

    感觉是正常的,因为已经调整好了设备宽度、默认缩放比、还有禁止用户手动缩放,所以应该没问题,不过我之后

    还是多添加了两个属性值:

    <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=0,minimum-scale=1.0,maximum-scale=1.0">

    添加的属性值是最小和最大缩放比,其实感觉没必要了,因为已经设置了初始化缩放比,不过还是提交测试了,

    意料之中,还是没用....

    之后上网终于找了一篇大佬文章,关于如何处理移动端调整字体大小问题的解决方案

    文章链接:https://www.cnblogs.com/axl234/p/7753187.html

    我下面的代码也是参考他的,不过自己有一些小改动,反正我的移动端页面已经适应了。[耶][耶][耶]

    (注:需要注意的是每次调整手机字体大小后,需要重新刷新下页面才有效)

    
    fontAdapt();
    
    function fontAdapt(){
        /*适应移动端APP调整字体大小*/
        (function() {
            //新创建一个div元素,并设置该元素的字体大小
            var $dom = document.createElement('div');
            //移动端采用rem布局,所以设置新创建的元素字体单位为rem
            //这里设置字体大小为10,方便后面计算
            $dom.style = 'font-size:10rem;';
            document.body.appendChild($dom);
            //计算出新创建元素调整后的字体大小
            var scaledFontSize = parseInt(window.getComputedStyle($dom, null).getPropertyValue('font-size'));
            //移除新创建元素,以免影响页面布局
            document.body.removeChild($dom);
            //计算原字体和调整后字体的比例,原字体为10rem,取数字10,
            var scaleFactor = 10 / scaledFontSize;
            
            //取出html元素字体的大小
            //注意,这个大小也经过缩放了
            var originRootFontSize = parseInt(window.getComputedStyle(document.documentElement, null).getPropertyValue('font-size'));
            //通过上面的比例调整页面当前的字体大小,以适应移动端,单位为rem
            document.documentElement.style.fontSize = originRootFontSize * scaleFactor + 'rem';
        })();
    
        /*适应手机端浏览器调整字体大小*/
        (function(doc, win) {
            //用原生方法获取用户设置的浏览器的字体大小(兼容ie)
            if(doc.documentElement.currentStyle) {
                 var user_webset_font=doc.documentElement.currentStyle['fontSize'];
            }
            else {
                 var user_webset_font=getComputedStyle(doc.documentElement,false)['fontSize'];
            }
            //取整后与默认16px的比例系数
            var xs=parseFloat(user_webset_font)/16;
            //设置rem的js设置的字体大小
            var view_jsset_font,result_font;
            var docEl = doc.documentElement,
            resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
            clientWidth,
            recalc = function() {
                clientWidth = docEl.clientWidth;
                if(!clientWidth) return;
                if(!doc.addEventListener) return;
                if(clientWidth<750){
                    //设置rem的js设置的字体大小
                    view_jsset_font=100 * (clientWidth / 750);
                    //最终的字体大小为rem字体/系数
                    result_font=view_jsset_font/xs;
                    //设置根字体大小
                    docEl.style.fontSize = result_font + 'px';
                }
                else{
                    docEl.style.fontSize = 100 + 'px';
                }
           };
           win.addEventListener(resizeEvt, recalc, false);
           doc.addEventListener('DOMContentLoaded', recalc, false);
        })(document, window);
    }

    有哪里不懂或有更好建议的欢迎留言~~

    展开全文
  • 最近在做一个手机端页面时,遇到了一个奇怪的问题:字体的显示大小,与在CSS中指定的大小不一致。大家可以查看这个Demo(记得打开Chrome DevTools)。 就如上图所示,你可以发现,原本指定的字体大小是24px,...
    最近在做一个手机端页面时,遇到了一个奇怪的问题:字体的显示大小,与在CSS中指定的大小不一致。大家可以查看这个Demo(记得打开Chrome DevTools)。


    就如上图所示,你可以发现,原本指定的字体大小是24px,但是最终计算出来的却是53px,看到这诡异的结果,我心中暗骂一句:这什么鬼!


    随后开始对问题各种排查:某个标签引起的?某个CSS引起的?又或者是某句JS代码引起的。通过一坨坨的删代码,发现貌似都不是。我不禁又骂,到底什么鬼!不过中间还是发现了一些端倪:当页面中的标签数量或者文本数量大于某一个值,或者当CSS定义的字体大小落在某个区间时,这个问题才会被触发。而且字体变大后的值也随着原始定义的字体大小而改变。


    然后自然就是各种搜索,终于有了新的发现。原来这个特性被称做「Text Autosizer」,又称「Font Boosting」、「Font Inflation」,是 Webkit 给移动端浏览器提供的一个特性:当我们在手机上浏览网页时,很可能因为原始页面宽度较大,在手机屏幕上缩小后就看不清其中的文字了。而 Font Boosting 特性在这时会自动将其中的文字字体变大,保证在即不需要左右滑动屏幕,也不需要双击放大屏幕内容的前提下,也可以让人们方便的阅读页面中的文本。


    不过这个特性并不总是有必要的,还好在查到问题原因的同时,大家也讨论了对这个问题的一些处理方案:


    手动指定 viewport width=320,这时 Font Boosting 不会被触发。(后边可以知道,这个说法不严谨,在其他设置均为默认值时,这一条才有效)
    Font Boosting 仅在未限定尺寸的文本流中有效,给元素指定宽高,就可以避免 Font Boosting 被触发。
    显然第 2 条方案是有缺陷的,文本内容不可能都指定宽高。不过还好,我们通过指定 max-height ,min-height, min-width, max-width(经 @Ovaldi 指正,只有 max-height 有效) 也是可以的。比如body * { max-height: 999999px; } 就可以无副作用的禁掉 Font Boosting 特性。当然,我觉得没必要使用通用选择器,用类似 p { max-height: 999999px; } 可能更好一些。
    到这里,我们已经明白问题所在,并且也有解决方案了。但是有一个问题仍然困扰着我:当字体大于某一个值时(比如当不指定viewport width,手机屏幕width=320,字体大于等于82px时),这个 Font Boosting 就始终不会被触发。Chrome 是如何计算的,这其中的逻辑又是什么?



    转载自:http://www.cnblogs.com/javaScriptYang/p/5667547.html
    展开全文
  • 针对该问题,大概有两种解决思路:1、不用sp作为系统字体的单位,改用dp,这在一些应用中也是很常见的(反编译QQ,貌似就是这样做的);2、重写getResource()方法,可以在activity基类(app中所有的activity都应该有...

        在android开发中针对字体大小的设置,虽然google推荐使用sp作为字体的单位,但是如果用户在系统设置的”显示“中修改了系统默认的字体大小。就会直接影响到所有sp为单位的字体适配,所以很多app在设置了系统字体后瞬间变得面目全非。针对该问题,大概有两种解决思路:1、不用sp作为系统字体的单位,改用dp,这在一些应用中也是很常见的(反编译QQ,貌似就是这样做的);2、重写getResource()方法,可以在activity基类(app中所有的activity都应该有继承于我们自己定义的一个activity类)中加上以下代码:

            @Override
    	public Resources getResources() {
    		Resources res = super.getResources();
    		Configuration config = new Configuration();
    		config.setToDefaults();
    		res.updateConfiguration(config, res.getDisplayMetrics());
    		return res;
    	}

    在这段代码中new出来了一个Configuration对象,并通过 setToDefaults() 方法将其设为了系统默认的配置,此方法要想生效需调用Resources的updateConfiguration (Configuration config, DisplayMetrics metrics)方法。

    展开全文
  • 工作中很多时候都要用到手机录音,比如电话录音、采访录音、培训课程录音、会议录音等等,录完了之后,还要对它们进行整理,尤其是将录音转换成文字,人非常头疼。 几天朋友介绍了一个录音转文字助手APP,很好的...
  • 我们在开发中,显示信息详情时,一般后台会给出html文本,在android端一般采用webview控件来展示,但是后台给出的html文本一般是给电脑端用的,没有自适配手机,导致手机端图片显示过,需要左右移动来查看全图。...
  • 在APP中,字体的大小单位一般会用sp,然而在改变系统字体大小时,App...除非一些特殊的情况,不想跟随系统字体变化的,可以使用dp”。按照这么说,布局宽高固定写死的地方应该统一用dp显示字体,因为一旦用户在设置...
  • 关于手机输入法的一些点子

    千次阅读 2012-03-14 15:05:13
    手机是android系统的索爱mt15i,试用了搜狗、qq、百度这些输入法后,最终选择了触宝输入法,最主要是因为它有滑行输入法,写起英文单词很爽,哪怕你中间有几个... 触宝还有一些不错的创新,比如手写候选过滤,T+键
  • 今天有人问我,android系统不同分辨率,不同大小的手机,字体大小怎么去适应呢?其实字体的适应和图片的适应是一个道理的。 一、 原理如下: 假设需要适应320x240,480x320分辨率。在res目录下新建文件夹values-320...
  • 手机ROOT之后更改字体文件导致无法启动的问题
  • html5纯css字体大小自适应设置

    万次阅读 2017-12-15 15:22:57
    css 字体大小自适应样式设置篇 字体可以设置大小使用css font-size...现在字体大小自适应样式常常使用在IE10、谷歌浏览器、较新手机、平板平台上(安卓、ios),可以使用CSS3.0来实现。但是依然是使用font-size字体
  • 手机卡背面数字的含义

    万次阅读 2012-08-07 14:29:50
    1、USIM:联通3G的卡;UIM:电信天翼的3G卡;SIM:移动联通2G网络制式的卡;...ICCID:Integrated circuit card identity 集成电路卡识别码(固化在手机SIM卡中); IMSI:International mobile subscriber ide
  • 遇到一个需求,要用手机扫描纸质面单,获取面单上的手机号,最后决定用tesseract这个开源OCR库,移植到Android平台是tess-two Android平台tess-two地址:https://github.com/tesseract-ocr 我把手机号扫描的算法...
  • [笔记]手机一些硬件知识

    万次阅读 2011-12-27 10:13:00
    在VisionMobile:移动平台生态系统冲突报告(十一)Chapter C:BREW MP 中提及Qualcomm的芯片,有必要对手机的硬件知识做一些了解,所以到网上去查了一下,做个笔记。 功能手机和智能手机 功能手机一般只含有...
  • 设计稿中,有用到手机未内置的第三方字体。如何在微信小程序中使用呢? 开始 触类旁通,小程序的wxss语法与css是一致的。我们首先想到的是@font-face{}。没错,它就是今天的主角~ 在正式开始之前,我们先来看看两...
  • HTML5做手机站需要加上一部分代码,不然字体会显示很小的,经历了很久的不解才发现的,希望给大家一些帮助 这样,在手机上显示的字体大小才正常
  • 【css】移动端自适应布局与字体大小自适应

    万次阅读 多人点赞 2018-06-04 10:43:30
    (这里在布局的时候最好把模拟手机设置的插件的宽度调到跟效果图一样,像上面的布局,效果图是640px,布局的时候就把模拟手机设备的宽度调到了640px)。 该怎么去设置高度、宽度、字体呢? 宽度的话直接用百分比...
  • 【逐浪字库(在线做)-字体大师】是个帮你设计个人字体的应用。 【PC端】: 功能很强大,只要你在电脑上打开网址:https://v.ziti163.com/ 就可以进入操作状态,有什么不明白的地方还可以点击右边的客服...
  • 就比如我们有时候会需要提取纸张上或者图片上的一些不能复制的文字的时候,就会用到它。 今天小编就给大家介绍一款可以拍照识别并能翻译文字的软件-迅捷文字识别。 这款软件还是比较实用的,可以识别相册里的图片,...
  • 开发的第一个手机web应用的一些经验
  • 现在不少人会直接在手机上办公,在手机上办公,想要高效工作,就需要一些强大的办公APP来帮忙了。今天小编也给大家带来了5款非常好用的办公APP,它们个个都很强大,相信有了它们,能你的效率飞起来,下面就一起来...
  • 最近做的一个APP,昨天测试的时候,发现在大多数手机上页面用rem布局,都是可以适配的,但是在一些手机上(比如三星A8000,默认字体大小比较)出现了混乱,看上去像是宽度不够,有些元素被挤下来,整个页面被拉伸了...
  • 但限于人力有限,无法全部一一录入,甚至也不太可能全部人工来录入,不然工作量很,而且录入也很枯燥,还容易出错,那么,如何把手头上的传统纸质资料快速地变成电子版?这就成了一个很现实的问题了。  其实...
  • 手机可以调整字体大小的地方: 1、手机QQ、微信、部分Android内置浏览器等非自己开发的App都支持字体大小的调整(我只介绍微信); 2、iOS、Android系统本身也可以调整字体大小,导致自己开发的App的WebView的页面...
  • android手机分区详解

    万次阅读 2016-11-29 20:42:33
     当我们拿到一款手机,第一件事应该就是按下电源键开机,那么从开机到进入到桌面程序这中间发生了些什么呢,我们从下面这张简化了的手机结构图开始:    注意:该结构图并不反映手机的实际分区顺序和位置,...
  • 今天学习一下使用Displaymetrics类获取一下手机屏幕中的一些信息  首先看下文档中的讲解    这个类中包含 描述大小,宽度,字体缩放和其一些其他信息,我们要访问的DisplayMetrics成员,初始化一个这样的对象...
  • Android适配:字体的大小适配

    千次阅读 2017-02-22 15:22:32
    Android最大家头疼的莫过于适配了,由于机型,屏幕等各种原因,适配是真心费劲,在这儿我简单的讲一下个人在项目中字体的一些简单适配方法: 假设需要适应320x240,480x320分辨率。在res目录下新建文件夹...
  • 在Android SDK中使用Typeface类...实际发现,最后绘制的效果与手机硬件也有些关系,比如前面的绘图测试程序. 来自: http://happyin1111.blog.163.com/blog/static/164184801201171911364435/
  • 手机CPU各厂商引用链接1 德州仪器 这个品牌想必大家都不陌生,一些高端机型上都会配有这家厂商的CPU,高性能且耗能少是它主要的特点,但因为造价昂贵,多应用在高端旗舰产品上,而且德州仪器的CPU与GPU也无法达成...
  • 利用Android的Configuration类中的fontScale属性,其默认值为1,会随系统调节字体大小而发生变化,如果我们强制其等于默认值,就可以实现字体不随调节改变,在工程的Application或BaseActivity中添加下面的代码: ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 280,415
精华内容 112,166
关键字:

如何让手机字大一些