精华内容
下载资源
问答
  • 本文主要介绍了Android 自定义TextView实现文本内容自动调整字体大小以适应TextView的大小的方法。具有很好的参考价值。下面跟着小编一起来看下吧
  • Win8如何自定义界面文本大小.docx
  • javascript 自定义文本比较,

    千次阅读 2018-05-16 18:21:08
    自定义文本比较工具方向: 1.比较两段文本的长度,不相同肯定不相等 2.如果长度不同,就以短的文本的长度为限制值,比较从0到限制值中的,那一段不相等 3.比较出那一段不相等,在把这一段逐个字符进行比较,找出从哪个...

    自定义文本比较工具

    方向: 1.比较两段文本的长度,不相同肯定不相等

            2.如果长度不同,就以短的文本的长度为限制值,比较从0到限制值中的,那一段不相等

            3.比较出那一段不相等,在把这一段逐个字符进行比较,找出从哪个字符不相同,返回索引

    页面实现:

    1.定义textarea 用来输入文本

    2.比较如果有不同,则将textarea 隐藏,用相同的长宽的div 展示,并对不同的地方进行标红处理,并对过长的字符进行换行处理,并对div 添加滚动条

    2.如果不同则无需处理,

    3.提供清空按钮,将div 隐藏,显示textarea ,并清除输入数据

    javascript 实现

    /**
     * compare demo
     * 返回指定索引
     * @author zcm
    var t1 = "sagjiojiogrewa";
    var t2 = "jiojigoji";
    console.log(testCompare(t1,t2));
    */
    
    function testCompare(t1,t2){
        var text1 = t1;
        var text2 = t2;
    
        /**if(text1.length != text2.length){
            return text1.length > text2.length ? text2.length : text1.length;//text1 长度不同
        }*/
        
        var tarr = text1.split(" ");
        var tarr2 = text2.split(" ");   
        var length = tarr.length > tarr2.length ? tarr2.length:tarr.length;
        var arrSize = 0;
        for(var i = 0;i < length ;i++){ //根据长度短的来比较
            /** if(tarr[i].length != tarr2[i].length) return tarr[i].length; */
            if(tarr[i] != tarr2[i]){
                return arrSize + testCompare2(tarr[i],tarr2[i]);//在小数组中的位置
            }
            arrSize += tarr[i].length;
        }
    }
    
    function testCompare2(t1,t2){
        var tarr = t1.split("");
        var tarr2 = t2.split("");
        var length = tarr.length > tarr2.length ? tarr2.length:tarr.length;
        /**if(t1.length != t2.length){
            return length;//text1 长度不同
        }*/
        for(var i = 0;i < length ;i++){ //根据长度短的来比较
            if(tarr[i] != tarr2[i]){
                return i;
            }
        }
    }
    页面显示html代码就不展示了,处理的比较丑
    展开全文
  • Windows8中如何自定义界面文本大小.docx
  • 解决了百度富文本编辑器Ueditor上传视频不能自定义封面的问题
  • Android_自定义控件之设置文本大小

    千次阅读 2013-08-11 22:44:02
    一般我们要在我们自己的控件中放置文本的时候,都会通过Paint来实现: Paint paint = new Paint(); paint.setAntiAlias(true); paint.setTextSize(16); 但是,如果你在其他分辨率的手机上,查看文本的效果...

    一般我们要在我们自己的控件中放置文本的时候,都会通过Paint来实现:

    Paint paint = new Paint();  
     
    paint.setAntiAlias(true);  
     
    paint.setTextSize(16); 

    但是,如果你在其他分辨率的手机上,查看文本的效果的时候,就会有问题,如果是在低分辨率的机器调试的话,放到高分辨率的机器上,就会感觉字体太小了;反之,太大。所以设置文本字体的时候不能采用以上的方式来设置,而应该采用与TextView类似的方法,如:

    public void setTextSize(int textSize){  
     
    Context c = getContext();  
     
    Resources r;  
     
    if (c == null)  
     
    r = Resources.getSystem();  
     
    else 
    r = c.getResources();  
     
    int size = (int)TypedValue.applyDimension(  
     
    TypedValue.COMPLEX_UNIT_SP, textSize, r.getDisplayMetrics());  
     
    mTextPaint.setTextSize( size);  
     
    } 

    这也鼓励我们在设定TextView字体大小的时候,采用sp作为度量的单位,而不是px。

    展开全文
  • Windows 7系统自定义界面文本字体大小.docx
  • EditText中的文字在设定大小后, Hint文本由于太长导致在EditText中无法完整的显示, 所以问有没有单独设置Hint文本大小的选项. 在网上看了一下都没有这方面的介绍. 于是我看了下TextView的源码(EditText继承自...

    EditText中的文字在设定大小后, Hint文本由于太长导致在EditText中无法完整的显示, 所以问有没有单独设置Hint文本大小的选项. 在网上看了一下都没有这方面的介绍. 于是我看了下TextView的源码(EditText继承自TextView), 发现了一些端倪,如下:

    public final void setHint(CharSequence hint) {
        mHint = TextUtils.stringOrSpannedString(hint);
        if (mLayout != null) {
            checkForRelayout();
        }
        if (mText.length() == 0) {
            invalidate();
        }
        // Invalidate display list if hint is currently used
        if (mEditor != null && mText.length() == 0 && mHint != null) {
            mEditor.invalidateTextDisplayList();
        }
    }

    在方法的一开始就是对hint文本的转换.由于hint是CharSequence类型的, 说明有希望可以增加一些自定义属性, 我们再看TextUtils.stringOrSpannedString这个方法:

    public static CharSequence stringOrSpannedString(CharSequence source) {
        if (source == null)
            return null;
        if (source instanceof SpannedString)
            return source;
        if (source instanceof Spanned)
            return new SpannedString(source);
        return source.toString();
    }

    那么问题来了,我们只要传入的hint是SpannedString或者Spanned类型,就可以保持文本的自定义属性了吗? 答案是肯定的! 直接上

    EditText editText = (EditText) rootView.findViewById(R.id.et);
        // 新建一个可以添加属性的文本对象
        SpannableString ss = new SpannableString("喝酒就要喝一斤!");
        // 新建一个属性对象,设置文字的大小
        AbsoluteSizeSpan ass = new AbsoluteSizeSpan(8,true);
        // 附加属性到文本
        ss.setSpan(ass, 0, ss.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        // 设置hint
        editText.setHint(new SpannedString(ss)); // 一定要进行转换,否则属性会消失
    展开全文
  • 自定义TextView通过宽度调整了文本大小。 截屏 问题/与我联系/雇用我 请随时通过 ping我。 执照 版权2018 Rhino Luo 根据Apache许可证2.0版(“许可证”)获得许可; 除非遵守许可,否则您不得使用此文件。 您可以...
  • 自定义Label,可以设置label每行的高度,设置字体大小,可以获取label的size和行数,可以设置label的每行字下面加一条横线(实现类似日记的效果),简单封装,满足自用。
  • 问题:由于设置行高没有类似设置字体或字体大小那样,比如设置字体样式 document.execCommand('styleWithCSS', false, true) document.execCommand('fontname', false, '微软雅黑') 这就需要我们自己去实现行高的...

    问题:由于设置行高没有类似设置字体或字体大小那样,比如设置字体样式

    document.execCommand('styleWithCSS', false, true)
    document.execCommand('fontname', false, '微软雅黑')

    这就需要我们自己去实现行高的效果:

    // 设置行距
    export const lineHeight = (value) => {
      // 获取当前的选区
      let selection = window.getSelection()
      if (selection.rangeCount === 0) {
        return
      }
      let range = selection.getRangeAt(0)
      // 选中区域的html
      let outSpan = document.createElement('span')
      outSpan.style.cssText = 'line-height: ' + value + ';display: inline-block;'
      outSpan.appendChild(range.cloneContents())
      let content = setLineHeight(outSpan.innerHTML, value)
      // 选取中的纯文本
      let txt = range.extractContents().textContent
      let length = txt.length
      if (length === 0) {
        return
      }
      // 删除被选择的内容
      range.deleteContents()
      // 创建新的元素
      let span = document.createElement('span')
      span.style.cssText = 'line-height: ' + value + ';display: inline-block;'
      // 设置 span 内容
      span.innerHTML = content
      // 在被选择的位置设置行距的元素
      range.insertNode(span)
    }
    
    // 设置指定行距
    function setLineHeight (content, value) {
      let reg = /line-height\s*:\s*(\d+(\.*\d+)?)/ig
      let c = content.replace(reg, 'line-height: ' + value)
      return c
    }

    设置行距中遇到的问题:

    问题一:设置完行距后,之前设置的样式消失;

    // 行距
    export const lineHeight = (value) => {
      // 选择范围
      let range = getRange()
      let txt = range.extractContents().textContent
      let length = txt.length
      if (length === 0) {
        return
      }
      // 删除被选择的内容
      range.deleteContents()
      // 创建新的元素
      let span = document.createElement('span')
      span.style.cssText = 'line-height: ' + value + ';display: inline-block;'
      // 设置 span 内容
      span.innerHTML = txt
      // 在被选择的位置设置行距的元素
      range.insertNode(span)
    }

    range.extractContents().textContent获取的是选区中纯文本内容,range.deleteContents()删除选取内容,

    range.insertNode(span)插入加有行距的内容,致使会在设置行距之前的样式清除掉,这当然不符合我们的要求;

    所以,需要获取带有样式的内容range.cloneContents(),然后再插入到选区中。

    问题二:行距只能在当前行距的基础上设置大的行距,比如当前选区1.5倍行距只能设置2倍或更高,而不能设置1.5倍或更小行距;

    span.style.cssText = 'line-height: ' + value + ';' 只设置行距时,会出现这种问题,加上display: inline-block;时,行距可自由设置;

    span.style.cssText = 'line-height: ' + value + ';display: inline-block;'

    因为span为行内元素,需要设置成block或 inline-block。

    展开全文
  • 在用户设置的显示为中等的情况下,125%,会导致界面的显示的位置不同,并且会导致滚动无法滚动到指定的位置 我们可以通过该代码获取原始的比例进行适当调整 int nData1 = GetDeviceCaps(::GetDC(this->GetSafeHwnd()...
  • //自定义字体大小 var sizes = [ false , '16px' , '18px' , '20px' , '22px' ] var Size = Quill.import( 'formats/size' ); Size.whitelist = sizes; Quill.register(Size, true ); export ...
  • (原创)代码动态改变某些textview文本颜色及其大小的方式
  • 前段时间开发了一个新的需求,其中一个列表下有几个文本,根据UI的设计设置文本大小,开发完成后,在测试中文本显示也没发现异常,后来随着业务的增加,发现部分文本的内容很长,在低分辨率的手机上没法完全显示,...
  • * 自定义TextView,文本内容自动调整字体大小以适应TextView的大小 * @author yzp */ public class AutoFitTextView extends TextView { private Paint mTextPaint; private float mTextSize; public ...
  • 微信小程序富文本解析之图片宽高设置优化,本优化中,插件可以依据富文本中给图片设置的%或px宽高进行小程序image标签的宽高显示设置。本人充分尊重原著作者的程序编码,如对原著版权造成不良影响,请联系本人删除...
  • layui框架中富文本图片上传大小设置

    千次阅读 2019-05-23 09:48:50
    使用layui的富文本编辑器时,上传图片页面只能原样显示,所以对框架文件进行了修改: 文件位置:layui/lay/modules/layedit.js 可以搜索’src’,大致位置如上图所示,style为本人所添加的样式。 ...
  • 从后台查出来的富文本数据,使用rich-text进行展示时,其中的图片过大,超出屏幕。 下面是字符串拼接的代码 const replaceDetail = function(details){ var texts='';//待拼接的内容 while(details.indexOf('&...
  • 自定义QLabel控件,自动判断文本长度与显示框长度的大小,显示框太短,则自动滚动显示,否则正常显示,类似于广告屏的滚动播放效果,qt 5源码,编译测试通过。
  • 高德地图自定义信息窗体样式
  • 通过自定义style,从主题中动态设置app全局字体的Demo。
  • 主要为大家详细介绍了Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 最近项目需求需要在后台系统添加一个富文本框的功能,富文本框的功能挺好实现,但是主要是需要实现图片自定义大小上传的功能,网上查阅了许久,众说纷纭,最后还是照着官方的功能说明才解决了这个问题; 如果实在有...
  • 由于经常用到,每次都自己来做比较麻烦,所以自定义了一个控件叫做CircleTextBlock,该控件继承自UserControl,对外暴露了Size、Text、Fill三个关键的依赖项属性,它们的数据类型分别为double,string,...
  • 系统默认的tabbar感觉好小,很丑,于是得自己来设置它的大小 我们需要在 +(void)load 或者在 +(void)initialize 里设置 那这两个方法有什么区别呢 可以看这里 :(转载)...
  • QT 自定义UI控件自适应窗口大小

    千次阅读 2019-04-08 16:33:48
    先上代码 cbmtool = new CBMTool(this);//this不可省略 ui->gridLayout_3->addWidget(cbmtool); //cbmtool->setGeometry(200,50,704,600);...如果想固定控件的位置和大小可以使用 cbmto...
  • TextViewAutoHeight-Swift 自定义 UITextView swift 用于根据文本内容大小调整高度。 基于项目只是 swift 版本:D
  • 目前支持的样式: 加粗 斜体 下划线 删除线 有序列表 无序列表 左对齐 居中对齐 ...字体大小 插入视频 插入网络图片 插入分割线 所有样式均支持导出HTML文件 加载HTML内容并继续编辑或显示

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 196,568
精华内容 78,627
关键字:

如何设置自定义文本大小