跳到内容
  • 福昕首页
  • 开发中心
  • SDK文档资料
  • 插件商店
  • 福昕首页
  • 开发中心
  • SDK文档资料
  • 插件商店
申请试用
  • 企业自动化
    • Compressor
  • 福昕CloudAPI
  • 福昕PDF SDK 软件开发工具包
    • 福昕PDF SDK(ActiveX)
    • 福昕PDF SDK(桌面/服务器)
    • 福昕PDF SDK(Plug-in)
    • 福昕 PDF SDK(安卓)
    • 福昕PDF SDK(iOS)
    • 福昕PDF SDK(Web)
  • 福昕管理控制台
    • 公有云
    • 私有云
    • 通用情况
  • 福昕阅读器
    • RMS插件
  • 福昕高级编辑器
    • AI助手
    • Mac版本
      • 常规问题
    • Windows版本
      • 表单
      • ECM集成
      • 互联PDF
      • 企业管理指南
      • 保护
      • 内容编辑
      • 创建PDF
      • 压缩
      • 图章
      • 安装与卸载
      • 常见问题
      • 打印
      • 注释/评论
      • 福昕插件
      • 翻译助手
      • 翻译助手教程
      • 试用与激活
      • 转换
      • 页面管理
    • 教育用户
      • 论文查重
      • 论文畅
      • 操作指南
    • 网页版
      • Foxit eSign
      • 电子签章
    • 订阅
    • 资源
  • 福昕高级编辑器Linux版本
  • 福船图纸管理系统
  • 福昕PDF SDK 软件开发工具包 > 福昕PDF SDK(iOS)
  • 标签:
  • iOS开发,PDF截图,区域剪裁,坐标转换,指定区域截图,渲染,高亮提取

福昕PDF SDK 移动版: 如何对 PDF 指定区域进行精准截图?

  • 福昕知识库
  • 2026-05-12

本文基于 Foxit PDF 移动版 (iOS),以截取高亮注释(Highlight Annotation)为例,完整讲解从 PDF 坐标到屏幕显示坐标的转换流程,并提供可直接使用的截图代码。

适用版本:Foxit PDF 移动版 (iOS) 所有主流版本

核心步骤

1. 坐标转换:PDF 坐标系与屏幕坐标系不同,需通过 SDK 接口转换。示例代码如下:

    FSAnnot* annot = [page getAnnot:0];
FSRectF *rectF = [annot getRect];

// PDF坐标 → 页面视图坐标 → 屏幕显示坐标
CGRect rect1 = [self.pdfViewCtrl convertPdfRectToPageViewRect:rectF 
                                                     pageIndex:[[annot getPage] getIndex]];
CGRect rect2 = [self.pdfViewCtrl convertPageViewRectToDisplayViewRect:rect1 
                                                            pageIndex:[[annot getPage] getIndex]];

2. 区域截图:基于转换后的屏幕坐标,对 PDF 渲染视图进行指定区域裁剪:

UIView *displayView = [self.pdfViewCtrl getDisplayView]; 
UIImage *img = [self captureView:displayView inRect:rect2];

- (UIImage *)captureView:(UIView *)targetView inRect:(CGRect)rect {
    CGFloat scale = [UIScreen mainScreen].scale;
    UIGraphicsBeginImageContextWithOptions(rect.size, NO, scale);
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextTranslateCTM(context, -rect.origin.x, -rect.origin.y);
    [targetView.layer renderInContext:context];
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return image;
}

适用场景:

  • 截取 PDF 高亮、下划线、批注等注释区域
  • 截取表单填写区域
  • 截取PDF中任意指定位置

常见问题

问题解决方法
截图位置偏移确保完成两步坐标转换
截图模糊使用 UIGraphicsBeginImageContextWithOptions 并传入屏幕 scale
截图黑屏/空白先调用 goToRect 滚动到目标区域

输出结果

成功返回 UIImage 对象,可保存、分享或二次编辑。

免费获取SDK试用

相关内容

如何将dwg格式转换成3D PDF

如何在合并文件同时添加水印

如何在合并文件同时调整页面大小

如何在福昕高级PDF编辑器上另存文档到SharePoint 文档库

如何在福昕高级PDF编辑器上集成SharePoint

如何在福昕高级PDF编辑器查看SharePoint 上的文档

如何将偏好设置命令放到功能区主页菜单下

如何更改福昕高级PDF编辑器的界面皮肤

福昕高级PDF编辑器如何开启批注模式

福昕高级PDF编辑器如何对图层进行排序

推荐内容

如何将dwg格式转换成3D PDF

如何在合并文件同时添加水印

如何在合并文件同时调整页面大小

如何在福昕高级PDF编辑器上另存文档到SharePoint 文档库

如何在福昕高级PDF编辑器上集成SharePoint

如何在福昕高级PDF编辑器查看SharePoint 上的文档

如何将偏好设置命令放到功能区主页菜单下

如何更改福昕高级PDF编辑器的界面皮肤

福昕高级PDF编辑器如何开启批注模式

福昕高级PDF编辑器如何对图层进行排序

产品
  • 应用行业
  • 白皮书
开发支持
  • 开发中心
  • SDK文档资料

销售咨询:010-50951668

客服电话:0591-38509808

销售咨询
微信公众号

©2026 福建福昕软件开发股份有限公司 版权所有

隐私策略