• 计算字符串绘制所需宽高


    [str boundingRectWithSize: options: attributes: context:];

    可以用该方法在绘制之前计算需要多大空间。

    参数

    size

    宽高限制,用于计算文本绘制时占据的矩形块。

    options

    文本绘制时的附加选项。

    context

    context上下文。包括一些信息,例如如何调整字间距以及缩放。最终,该对象包含的信息将用于文本绘制。该参数可为 nil 。

    返回值

    一个矩形,大小等于文本绘制完将占据的宽和高。

    size 参数是一个constraint ,用于在绘制文本时作为参考。但是,如果绘制完整个文本需要更大的空间,则返回的矩形大小可能比 size 更大。一般,绘制时会采用constraint 提供的宽度,但高度则会根据需要而定。

    NSStringDrawingOptions

    文本绘制选项。

    enum {

       NSStringDrawingTruncatesLastVisibleLine= 1 << 5,

       NSStringDrawingUsesLineFragmentOrigin= 1 << 0,

       NSStringDrawingUsesFontLeading= 1 << 1,

       NSStringDrawingUsesDeviceMetrics= 1 << 3,

    };

    typedef NSInteger NSStringDrawingOptions;

    常量

    NSStringDrawingTruncatesLastVisibleLine

    如果文本内容超出指定的矩形限制,文本将被截去并在最后一个字符后加上省略号。如果指定了NSStringDrawingUsesLineFragmentOrigin选项,则该选项被忽略。(Truncate:截取、删节)

    NSStringDrawingUsesLineFragmentOrigin

    绘制文本时使用 line fragement origin 而不是 baseline origin。(整个文本将以每行组成的矩形为单位计算整个文本的尺寸。)

    (fragement:断裂、拆分、破裂;碎片,片段;)

    NSStringDrawingUsesFontLeading

    计算行高时使用行间距。(字体大小+行间距=行高)

    NSStringDrawingUsesDeviceMetrics

    计算布局时使用图元字形(而不是印刷字体)。

  • 相关阅读:
    PlantUML —— 应用于 Eclipse 的简单快速的 UML 编辑软件
    PlantUML类图
    Java 基于log4j的日志工具类
    RabbitMQ Hello world(二)
    redis lua 初体验
    mysql 批处理 innodb_flush_at_trx_commit 测试分析
    mysql 服务日志 5.7.29
    redis 浅谈事务
    redis list 基本操作
    redis hash 基本操作
  • 原文地址:https://www.cnblogs.com/fuunnyy/p/4734358.html
Copyright © 2020-2023  润新知