iOS之CATextLayer属性简介

1、CATextLayer简介

  CATextLayer快速高效简单地来渲染纯文本、NSAttributedString

/* The text layer provides simple text layout and rendering of plain
 * or attributed strings. The first line is aligned to the top of the
 * layer. */

NS_ASSUME_NONNULL_BEGIN

CA_CLASS_AVAILABLE (10.5, 2.0, 9.0, 2.0)
@interface CATextLayer : CALayer
{
@private
    struct CATextLayerPrivate *_state;
}

//渲染的字符串
@property(nullable, copy) id string;

//字体
@property(nullable) CFTypeRef font;

//字号
@property CGFloat fontSize;

//文字颜色
@property(nullable) CGColorRef foregroundColor;

//是否换行,默认NO
@property(getter=isWrapped) BOOL wrapped;

//枚举:设置截断模式
@property(copy) NSString *truncationMode;

//枚举:设置对其模式
@property(copy) NSString *alignmentMode;

//文字是否像素化,默认NO
@property BOOL allowsFontSubpixelQuantization;

@end

/* Truncation modes. */

CA_EXTERN NSString * const kCATruncationNone    //不剪裁,默认
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);
CA_EXTERN NSString * const kCATruncationStart   //剪裁开始部分
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);
CA_EXTERN NSString * const kCATruncationEnd     //剪裁结束部分
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);
CA_EXTERN NSString * const kCATruncationMiddle  //剪裁中间部分
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);

/* Alignment modes. */

CA_EXTERN NSString * const kCAAlignmentNatural  //默认
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);
CA_EXTERN NSString * const kCAAlignmentLeft     //左对齐
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);
CA_EXTERN NSString * const kCAAlignmentRight    //右对齐
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);
CA_EXTERN NSString * const kCAAlignmentCenter   //居中对齐
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);
CA_EXTERN NSString * const kCAAlignmentJustified    //两端对齐
CA_AVAILABLE_STARTING (10.5, 3.2, 9.0, 2.0);

NS_ASSUME_NONNULL_END
时间: 2024-10-24 14:41:46

iOS之CATextLayer属性简介的相关文章

IOS UITableView NSIndexPath属性讲解

IOS UITableView NSIndexPath属性讲解 查看UITableView的帮助文档我们会注意到UITableView有两个Delegate分别为:dataSource和delegate. dataSource 是UITableViewDataSource类型,主要为UITableView提 供显示用的数据(UITableViewCell),指定UITableViewCell支持的编辑操作类型(insert,delete和 reordering),并根据用户的操作进行相应的数据更

ios的@property属性和@synthesize属性(转)

当你定义了一系列的变量时,需要写很多的getter和setter方法,而且它们的形式都是差不多的,,所以Xcode提供了@property 和@synthesize属性,@property用在 .h 头文件中用作声明,@synthesize用在.m 文件中用于实现. 如下,新建一个基于"Command Line Tool"的项目,名为"property",再新建一个Student类, 传统的写法是: Student.h [cpp] view plaincopy //

HTML5 Audio and Video 的新属性简介

前言:HTML5 中 Audio and Video的使用方法比较简单,但就是比较复杂,方法属性多.如果不常用的几乎难以记住,甚至有些人难以区分不同属性和方法的作用,更别说应用了.以下对Audio and Video的使用方法做了一个简单的总结,算是一个大致轮廓.至于具体的使用方法可以再网上查到,比较多就没总结. HTML5 Audio and Video 的优势 1.作为原生的浏览器支持,无需安装任何第三方插件 2.HTML5 规范提供了一套完整的多媒体脚本化控制的API,开发人员可以轻易的使

iOS之多线程1-NSThread简介

关于多线程在iOS中的重要性,就不废话了.就一个字:重要 ! ^_^ iOS中常用的三种多线程方式:NSThread , GCD, NSOpertaion 虽然NSThrea排在第一位(几乎所有的介绍多线程的书籍都是这么排序),但用的最少,原因:没有后面的两个小弟用起来体贴. 作为多线程的大哥,NSThread几乎已经躲到幕后了. NSThread是从Mac OS 系统引入到iOS中的,在Mac OS 10.5之前,NSThread的启用方法只有一个: detachNewThreadSelect

audio和vide多媒体新属性简介

前言:HTML5 中 Audio and Video的使用方法比较简单,但就是比较复杂,方法属性多.如果不常用的几乎难以记住,甚至有些人难以区分不同属性和方法的作用,更别说应用了.以下对 Audio and Video的使用方法做了一个简单的总结,算是一个大致轮廓.至于具体的使用方法可以再网上查到,比较多就没总结. HTML5 Audio and Video 的优势 1.作为原生的浏览器支持,无需安装任何第三方插件 2.HTML5 规范提供了一套完整的多媒体脚本化控制的API,开发人员可以轻易的

【iOS】关于属性的理解与验证

iOS里面有属性,而且很常用.我们经常在.h,.m文件里写: @interface ViewController : UIViewController @property (nonatomic, strong) NSNumber *firstNumber; @property (nonatomic, strong) NSNumber *secondNumber; @property (nonatomic, strong) NSNumber *thirdNumber; @property (non

IOS中将对象属性列表归档成一个plist文件中

归档步骤: 1.将一个NSDictionary对象归档到一个plist属性列表中 <1> 首先要将数据封装成字典: NSMutableDictionary * dict = [NSMutableDctionary dictionary]; [dict setObject:@"烟灰" forKey:@"name"]; [dict setObject:@"1234567" forKey:@"phoneNumber"];

iOS之CATiledLayer的属性简介和使用

1.CATiledLayer简介 CATiledLayer用于大型图片进行分割显示,需要显示的图片才会加载,直接上代码: - (void)viewDidLoad { [super viewDidLoad]; [self cutImageAndSave]; [self addTiledLayer]; } - (void)drawLayer:(CATiledLayer *)layer inContext:(CGContextRef)ctx{ CGRect bounds = CGContextGetC

iOS之Apple Watch简介和使用

Apple Watch 初步了解 简介 项目演示 创建项目 简单的hello world 项目结构 Extension:位于用户的iPhone安装了对应的App上,包含我们需要实现的代码逻辑和其他的资源文件 watch app:目前只允许包含storyboard文件和resource文件 InterfaceController:当前界面的控制器 与UIViewController的区别是:InterfaceController最终继承的是NSObject InterfaceController不