UI 与视图设置
本文介绍福昕 PDF SDK iOS 版中与 UI 和视图相关的常用设置,包括页面布局模式、夜间模式、裁切模式、页面绑定方向和本地化等。
页面布局模式
通过 FSPDFViewCtrl 的 setPageLayoutMode: 方法设置页面布局模式:
| 常量 | 说明 |
|---|---|
PDF_LAYOUT_MODE_SINGLE | 单页模式 |
PDF_LAYOUT_MODE_TWO | 双页模式 |
PDF_LAYOUT_MODE_REFLOW | 重排模式 |
PDF_LAYOUT_MODE_TWO_LEFT | 双页模式(封面在左) |
PDF_LAYOUT_MODE_TWO_RIGHT | 双页模式(封面在右) |
PDF_LAYOUT_MODE_TWO_MIDDLE | 双页模式(封面居中) |
objc
[pdfViewCtrl setPageLayoutMode:PDF_LAYOUT_MODE_SINGLE];
// 设置/获取连续滚动
[pdfViewCtrl setContinuous:YES];
BOOL isContinuous = [pdfViewCtrl isContinuous];
夜间模式
objc
// 启用夜间模式
pdfViewCtrl.isNightMode = YES;
// 或使用颜色映射模式自定义前景/背景色
pdfViewCtrl.colorMode = FSRendererColorModeMapping;
pdfViewCtrl.mappingModeBackgroundColor = [UIColor blackColor];
pdfViewCtrl.mappingModeForegroundColor = [UIColor whiteColor];
缩放
objc
// 获取/设置缩放比例
float zoom = [pdfViewCtrl getZoom];
[pdfViewCtrl setZoom:2.0f];
// 设置缩放模式
[pdfViewCtrl setZoomMode:PDF_DISPLAY_ZOOMMODE_FITWIDTH];
裁切模式
objc
// 按内容边界裁切
[pdfViewCtrl setCropMode:PDF_CROP_MODE_CONTENTSBOX];
// 自定义裁切区域
[pdfViewCtrl setCropPageRect:0 pdfRect:customRect];
[pdfViewCtrl setCropMode:PDF_CROP_MODE_CUSTOMIZED];
// 退出裁切模式
[pdfViewCtrl setCropMode:PDF_CROP_MODE_NONE];
页面绑定方向
控制页面在双页模式下的排列方向,适用于从右到左阅读的文档:
objc
// 从右到左
pdfViewCtrl.pageBindingEdge = PDF_PAGE_BINDING_RIGHT_EDGE;
// 从左到右(默认)
pdfViewCtrl.pageBindingEdge = PDF_PAGE_BINDING_LEFT_EDGE;
本地化
SDK 通过 FSLocalization 支持界面语言切换:
objc
#import <FoxitRDK/FSLocalization.h>
// 获取当前语言
NSString *lang = [FSLocalization getCurrentLanguage];
// 设置为简体中文
[FSLocalization setCurrentLanguage:@"zh-Hans"];
页面间距
objc
// 设置双页模式下页面间距
[pdfViewCtrl setPageSpacing:5];
// 分别设置水平和垂直间距
[pdfViewCtrl setPageSpacing:2 direction:FS_PAGESPACING_HORIZONTAL];
[pdfViewCtrl setPageSpacing:4 direction:FS_PAGESPACING_VERTICAL];
API 参考
FSPDFViewCtrl、FSLocalization 的完整接口说明请参阅 API 手册。