本页内容
字体管理
ComPDFKit PDF SDK 支持读取您设备中已有的字族及其样式,并将其设置为注释、表单、水印、页眉页脚、贝茨码等多个功能的字体。这将帮助您设计出美观的 PDF 文件,或使用符合某些规范要求的字体调整和完善您的 PDF 文件。
在使用字体管理设置字体时,您需要:
- 取得系统中所有字族名称。
- 选择您需要的字体,取得字族的样式名称。
- 选择样式名称后,根据字族名称与样式名称取得字体的
CPDFFont
对象。 CPDFFont
对象即可用作设置字体。- 通过
CPDFFont
对象设置应用端字体 UIFont。
以下是代码示例:
swift
// 取得系统中所有字族名称
let fonts: [String] = CPDFFont.familyNames
// 取得字族名对应的字体样式列表,选择字体样式
let fontStyles = CPDFFont.fontNames(forFamilyName: "familyName")
// 根据字族和字体样式,取得 `CPDFFont` 对象
let font = CPDFFont(familyName: "familyName", fontStyle: "fontStyle")
// 将 `CPDFFont` 对象 名称应用到需要设置字体的功能中,具体设置属性方式见对应功能的文档
let anotation = CPDFLineAnnotation(document: document)
anotation.cFont = font
// 通过`CPDFFont` 对象设置应用端字体 UIFont
let appleFont = UIFont.init(name: CPDFFont.convertAppleFont(cFont ?? CPDFFont(familyName: "Helvetica", fontStyle: "")) ?? "Helvetica"
objective-c
// 取得系统中所有字族名称
NSArray *fonts = [CPDFFont familyNames];
// 取得字族名对应的字体样式列表,选择字体样式
NSArray *fontStyles = [CPDFFont fontNamesForFamilyName:@"familyName"];
// 根据字族和字体样式,取得 `CPDFFont` 对象
CPDFFont *font = [[CPDFFont alloc] initWithFamilyName:@"familyName" fontStyle:@"fontStyle"];
// 将 `CPDFFont` 对象 名称应用到需要设置字体的功能中,具体设置属性方式见对应功能的文档
CPDFLineAnnotation *anotation = [[CPDFLineAnnotation alloc] initWithDocument:document];
[anotation setCFont:font];
// 通过`CPDFFont` 对象设置应用端字体 UIFont
NSString *fontName = [CPDFFont convertAppleFont:cFont];
UIFont *appleFont = [UIFont fontWithName:fontName size:18];
关于字族,样式名称
Font Family(字族):
Font Family 指的是字体的族群或系列名称,通常代表了一组字体,这些字体在设计上有相同的设计风格。
例如,Helvetica字体族拥有多种不同样式的字体,如Helvetica Regular、Helvetica Bold、Helvetica Italic等,它们都属于Helvetica字族。
Font Style(样式):
Font Style 指的是字体的具体样式或变体名称。它通常用于区分同一字族中不同的字体样式,例如粗体、斜体、正常体等。
以 Helvetica 字体族为例,Regular、Bold、Italic 等都是不同样式的名称。