46 lines
1.2 KiB
Objective-C
46 lines
1.2 KiB
Objective-C
//
|
||
// KBFont.h
|
||
// 全局字体工具(主 App 与键盘扩展共用)
|
||
//
|
||
// 说明:
|
||
// - 不做系统 Dynamic Type 适配,字号只按设计稿 + 屏幕宽度等比缩放
|
||
// - 统一从这里取字体,避免在各处到处写死数字和 weight
|
||
//
|
||
|
||
#ifndef KBFont_h
|
||
#define KBFont_h
|
||
|
||
#if __OBJC__
|
||
|
||
#import <UIKit/UIKit.h>
|
||
#import "KBConfig.h"
|
||
|
||
NS_ASSUME_NONNULL_BEGIN
|
||
|
||
@interface KBFont : NSObject
|
||
|
||
/// 按设计稿字号 + 屏幕宽度缩放,返回系统字体
|
||
/// 使用示例:label.font = [KBFont fontOfSize:14 weight:UIFontWeightRegular];
|
||
+ (UIFont *)fontOfSize:(CGFloat)designSize weight:(UIFontWeight)weight;
|
||
|
||
/// 常用 weight 封装(设计稿字号)
|
||
+ (UIFont *)regular:(CGFloat)designSize;
|
||
+ (UIFont *)medium:(CGFloat)designSize;
|
||
+ (UIFont *)semibold:(CGFloat)designSize;
|
||
+ (UIFont *)bold:(CGFloat)designSize;
|
||
|
||
/// 根据当前项目大致预设的几个常用语义字号
|
||
/// 可以按设计调整里面的数值,不影响调用方
|
||
+ (UIFont *)titleFont; // 标题,例如 18pt 半粗
|
||
+ (UIFont *)bodyFont; // 正文,例如 14pt 常规
|
||
+ (UIFont *)captionFont; // 辅助/备注,例如 12pt 常规
|
||
|
||
@end
|
||
|
||
NS_ASSUME_NONNULL_END
|
||
|
||
#endif /* __OBJC__ */
|
||
|
||
#endif /* KBFont_h */
|
||
|