Skip to content

UI 与视图设置

本文介绍福昕 PDF SDK iOS 版中与 UI 和视图相关的常用设置,包括页面布局模式、夜间模式、裁切模式、页面绑定方向和本地化等。

页面布局模式

通过 FSPDFViewCtrlsetPageLayoutMode: 方法设置页面布局模式:

常量说明
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 参考

FSPDFViewCtrlFSLocalization 的完整接口说明请参阅 API 手册