Foxit PDF SDK

构造函数 | 所有成员列表
FSRenderer类 参考
类 FSRenderer 继承关系图:

## 构造函数
(void) | - clearClips
| 清除通过函数 FSRenderer::setClipRect: 设置的裁剪矩形。 更多...
(void) | - enableForPrint:
| 设置标志来决定是否在打印模式下进行渲染。 更多...
(id) | - initWithBitmap:is_rgb_order:
| 带位图的构造函数。 更多...
(id) | - initWithContext:device_type:
| 构造函数，使用设备上下文。 更多...
(id) | - initWithOther:
| 带另一个渲染器对象的构造函数。 更多...
(BOOL) | - isEmpty
| 检查当前对象是否为空。 更多...
(BOOL) | - renderAnnot:matrix:
| 渲染指定的注释。 更多...
(BOOL) | - renderFormControls:matrix:
| 渲染表单控件。 更多...
(BOOL) | - renderGraphicsObject:page:matrix:
| 渲染图形对象。 更多...
(void) | - setClearType:
| 设置标志来决定是否使用ClearType类似的反锯齿来渲染文本对象。 更多...
(void) | - setClipPathFill:matrix:fill_mode:
| 使用填充区域设置裁剪路径。 更多...
(void) | - setClipPathStroke:matrix:graph_state:
| 使用描边区域设置裁剪路径。 更多...
(void) | - setClipRect:
| 设置将在后续渲染过程中使用的裁剪矩形。 更多...
(void) | - setColorMode:
| 设置颜色模式。 更多...
(void) | - setForceDownSample:
| 设置标志来决定是否对图像拉伸使用下采样。 更多...
(void) | - setForceHalftone:
| 设置标志来决定是否对图像拉伸使用半调。 更多...
(void) | - setForegroundColor:
| 当颜色模式为 FSRendererColorModeForeground 时为文本、路径或两者设置前景颜色。 更多...
(void) | - setForegroundColorMode:
| 当颜色模式为 FSRendererColorModeForeground 时设置渲染前景颜色模式。 更多...
(void) | - setJPEGDownSample:
| 设置标志来决定是否对jpeg图像使用下采样。 更多...
(void) | - setJPXDownSample:
| 设置标志来决定是否对jpx图像使用下采样。 更多...
(void) | - setLayerContext:
| 设置图层上下文到渲染上下文句柄。 更多...
(void) | - setMappingModeColors:foreground_color:
| 当颜色模式为 FSRendererColorModeMappingGray 或 FSRendererColorModeMapping 时设置背景颜色和前景颜色。 更多...
(void) | - setOverprint:
| 设置标志来决定是否启用叠印。 更多...
(void) | - setPrintTextAsGraphic:
| 设置标志来决定是否将文本打印为路径或位图。 更多...
(void) | - setPrintTextAsImage:
| 设置标志来决定是否将文本打印为图像。 更多...
(void) | - setRenderAnnotAppearanceType:
| 设置注释的外观类型用于渲染。 更多...
(void) | - setRenderAnnotsForThumbnail:
| 设置渲染标志来决定是否在缩略图模式下渲染注释。 更多...
(void) | - setRenderContentFlags:
| 设置渲染标志来决定渲染什么内容。 更多...
(void) | - setRenderEnhanceThinLines:
| 设置标志来决定是否增强细线。 更多...
(void) | - setRenderFormField:
| 设置标志来决定是否渲染表单字段（除签名字段外）。 更多...
(void) | - setRenderImageAntiAliasing:
| 设置标志来决定是否绘制图像反锯齿。 更多...
(void) | - setRenderLayer:
| 设置标志来决定是否渲染一个图层或所有可用图层。 更多...
(void) | - setRenderPathAntiAliasing:
| 设置标志来决定是否绘制路径反锯齿。 更多...
(void) | - setRenderPathFullCovered:
| 可应用于填充模式的特殊标志。 更多...
(void) | - setRenderPathThinLine:
| 设置标志来决定是否将路径绘制为细线。 更多...
(void) | - setRenderSignature:
| 设置标志来决定是否渲染签名。 更多...
(void) | - setRenderSignatureState:
| 设置标志来决定是否在签名上绘制签名状态。 更多...
(void) | - setRenderTextAntiAliasing:
| 设置标志来决定是否绘制文本反锯齿。 更多...
(void) | - setScreenDPIScale:
| 设置用于渲染的屏幕DPI缩放因子。 更多...
(FSProgressive *) | - startQuickRender:matrix:pause:
| 开始快速渲染PDF页面，主要用于缩略图。 更多...
(FSProgressive *) | - startRender:matrix:pause:
| 开始渲染PDF页面。 更多...
(FSProgressive *) | - startRenderBitmap:matrix:clip_rect:interpolation:pause:
| 开始渲染位图。 更多...
(FSProgressive *) | - startRenderBitmapWithAlpha:matrix:clip_rect:interpolation:alpha:pause:
| 开始渲染位图。 更多...
(FSProgressive *) | - startRenderReflowPage:matrix:pause:
| 开始渲染重排页面。 更多...
(FSProgressive *) | - startRenderXFAPage:matrix:is_highlight:pause:
| 开始渲染XFA页面。 更多...

## 详细描述

PDF渲染器是一个图形引擎，用于将页面渲染到位图或平台设备上下文。 此类可以用位图或设备对象构造。它提供设置渲染选项/标志和执行渲染的函数。 在此类中，有几种渲染方法：

- 要渲染页面和注释，首先使用函数 FSRenderer::setRenderContentFlags: 来 决定是否同时渲染页面和注释，然后使用函数 FSRenderer::startRender:matrix:pause: 进行渲染。 函数 FSRenderer::startQuickRender:matrix:pause: 也可用于渲染页面，但仅用于缩略图目的。
- 要渲染单个注释，使用函数 FSRenderer::renderAnnot:matrix:。
- 要渲染位图，使用函数 FSRenderer::startRenderBitmapWithAlpha:matrix:clip_rect:interpolation:alpha:pause:。
- 要渲染重排页面，使用函数 FSRenderer::startRenderReflowPage:matrix:pause:。

在Foxit PDF SDK中，窗口部件注释总是与表单字段和表单控件关联。对于如何渲染 窗口部件注释，这里是推荐的流程：

- 加载PDF页面后，首先渲染页面和此页面中的所有注释（包括窗口部件注释）。
- 然后，如果用户使用 FSFiller 对象填写表单，用户应使用函数 FSFiller::render:matrix:renderer: 渲染聚焦的表单控件，而不是使用函数 FSRenderer::renderAnnot:matrix:。

参见
  FSFiller

## 函数文档

## ◆ clearClips()

- (void) clearClips |  |  |

清除通过函数 FSRenderer::setClipRect: 设置的裁剪矩形。

返回
  无。

## ◆ enableForPrint:()

- (void) enableForPrint: |  | (BOOL) | is_render_for_print |

设置标志来决定是否在打印模式下进行渲染。

当当前渲染器用于打印时，请确保此渲染标志设置为预期值。 对于渲染注释，如果此标志设置为 YES，Foxit PDF SDK将仅渲染 具有注释标志 FSAnnotFlagPrint 的注释。
如果对当前渲染器对象尚未调用此函数，将使用默认值 NO。

参数

  [in] | is_render_for_print | YES 表示在打印模式下渲染，而 NO 表示不在打印模式下渲染。

返回
  无。

## ◆ initWithBitmap:is_rgb_order:()

- (id) initWithBitmap: |  | (FSBitmap*) | bitmap
is_rgb_order: |  | (BOOL) | is_rgb_order

带位图的构造函数。

输入位图被视为独立设备，渲染器渲染的所有内容 都将出现在位图中。

参数

  [in] | bitmap | 用于渲染的位图。用户应确保位图保持有效，直到 当前渲染器对象的生命周期结束。
  [in] | is_rgb_order | YES 表示Foxit PDF SDK在渲染时需要使用RGB字节顺序 （红色在最低位）。 NO 表示Foxit PDF SDK在渲染时需要使用BGR字节顺序 （蓝色在最低位）。

## ◆ initWithContext:device_type:()

- (id) initWithContext: |  | (CGContextRef) | context
device_type: |  | (FSRendererDeviceType) | device_type

构造函数，使用设备上下文。

渲染器渲染的所有内容都会显示在 CGContextRef 对象中。

参数

  [in] | context | 一个 CGContextRef 对象。用户应确保该设备在当前渲染器对象生命周期结束前一直有效。
  [in] | device_type | 参数 context 的设备类型。请参考 FSRendererDeviceXXX 的取值，且应为这些值之一。

## ◆ initWithOther:()

- (id) initWithOther: |  | (FSRenderer*) | other |

带另一个渲染器对象的构造函数。

参数

  [in] | other | 另一个渲染器对象。

## ◆ isEmpty()

- (BOOL) isEmpty |  |  |

检查当前对象是否为空。

当当前对象为空时，意味着当前对象无用。

返回
  YES 表示当前对象为空，而 NO 表示非空。

## ◆ renderAnnot:matrix:()

- (BOOL) renderAnnot: |  | (FSAnnot*) | annot
matrix: |  | (FSMatrix2D*) | matrix

渲染指定的注释。

当调用此函数时，渲染标志（通过函数 FSRenderer::setRenderContentFlags: 设置 或默认设置）将被忽略。

参数

  [in] | annot | 要渲染的注释对象。如果输入的注释是弹出注释，此函数将 不渲染它并返回 NO。
  [in] | matrix | 用于渲染的变换矩阵，通常由函数 FSPDFPage::getDisplayMatrix:top:width:height:rotate: 返回。

返回
  YES 表示成功，而 NO 表示失败。

## ◆ renderFormControls:matrix:()

- (BOOL) renderFormControls: |  | (FSPDFPage*) | page
matrix: |  | (FSMatrix2D*) | matrix

渲染表单控件。

当调用此函数时，渲染标志（通过函数 FSRenderer::setRenderContentFlags: 设置或默认设置）将被忽略。

参数

  [in] | page | 有效的PDF页面。如果输入页面无效，此函数什么也不做并直接返回 NO。
  [in] | matrix | 用于渲染的变换矩阵，通常由函数 FSPDFPage::getDisplayMatrix:top:width:height:rotate: 返回。

返回
  YES 表示成功，而 NO 表示失败。

## ◆ renderGraphicsObject:page:matrix:()

- (BOOL) renderGraphicsObject: |  | (FSGraphicsObject*) | graphics_object
page: |  | (FSPDFPage*) | page
matrix: |  | (FSMatrix2D*) | matrix

渲染图形对象。

当调用此函数时，渲染标志（通过函数 FSRenderer::setRenderContentFlags: 设置或默认设置）将被忽略。

参数

  [in] | graphics_object | 要渲染的有效PDF图形对象。
  [in] | page | 有效的PDF页面。参数 graphics_object 属于此PDF页面。
  [in] | matrix | 用于渲染的变换矩阵，通常由函数 FSPDFPage::getDisplayMatrix:top:width:height:rotate: 返回。

返回
  YES 表示成功，而 NO 表示失败。

## ◆ setClearType:()

- (void) setClearType: |  | (BOOL) | is_clear_type |

设置标志来决定是否使用ClearType类似的反锯齿来渲染文本对象。

如果不调用此函数，将使用默认值 YES。

参数

  [in] | is_clear_type | YES 表示使用ClearType类似的反锯齿来渲染文本对象。 NO 表示不使用ClearType类似的反锯齿来渲染文本对象。

返回
  无。

## ◆ setClipPathFill:matrix:fill_mode:()

- (void) setClipPathFill: |  | (FSPath*) | clip_path
matrix: |  | (FSMatrix2D*) | matrix
fill_mode: |  | (FSFillMode) | fill_mode

使用填充区域设置裁剪路径。

参数

  [in] | clip_path | 裁剪路径。
  [in] | matrix | 用于裁剪的变换矩阵。
  [in] | fill_mode | 填充模式。应该是值 或 。

返回
  无。

## ◆ setClipPathStroke:matrix:graph_state:()

- (void) setClipPathStroke: |  | (FSPath*) | clip_path
matrix: |  | (FSMatrix2D*) | matrix
graph_state: |  | (FSGraphState*) | graph_state

使用描边区域设置裁剪路径。

参数

  [in] | clip_path | 裁剪路径。
  [in] | matrix | 用于裁剪的变换矩阵。
  [in] | graph_state | 有效的图形状态，用于画笔属性。如果为 nil，Foxit PDF SDK将 使用默认构造函数的图形状态对象。默认值：nil。

返回
  无。

## ◆ setClipRect:()

- (void) setClipRect: |  | (FSRectI*) | clip_rect |

设置将在后续渲染过程中使用的裁剪矩形。

参数

  [in] | clip_rect | 裁剪矩形。如果为 nil，表示在 后续渲染过程中不使用裁剪矩形。

返回
  无。

## ◆ setColorMode:()

- (void) setColorMode: |  | (FSRendererColorMode) | color_mode |

设置颜色模式。

如果不调用此函数，将使用默认值 FSRendererColorModeNormal。

参数

  [in] | color_mode | 颜色模式值。应该是以下值之一： FSRendererColorModeNormal 表示正常颜色模式。 FSRendererColorModeMappingGray 表示 将白/黑颜色值映射到背景/前景；对其他颜色，不改变。 如果使用此模式，请调用函数 FSRenderer::setMappingModeColors:foreground_color: 设置"背景颜色"和 "前景颜色"。 FSRendererColorModeMapping 表示 将颜色值映射到由背景颜色和 前景颜色定义的颜色范围。如果使用此模式，请调用函数 FSRenderer::setMappingModeColors:foreground_color: 设置"背景颜色"和 "前景颜色"。

返回
  无。

## ◆ setForceDownSample:()

- (void) setForceDownSample: |  | (BOOL) | is_to_force_down_sample |

设置标志来决定是否对图像拉伸使用下采样。

如果不调用此函数，将使用默认值 NO。

参数

  [in] | is_to_force_down_sample | YES 表示对图像拉伸使用下采样。 NO 表示对图像拉伸不使用下采样。

返回
  无。

## ◆ setForceHalftone:()

- (void) setForceHalftone: |  | (BOOL) | is_to_force_halftone |

设置标志来决定是否对图像拉伸使用半调。

如果不调用此函数，将使用默认值 NO。

参数

  [in] | is_to_force_halftone | YES 表示对图像拉伸使用半调。 NO 表示对图像拉伸不使用半调。

返回
  无。

## ◆ setForegroundColor:()

- (void) setForegroundColor: |  | (unsigned int) | foreground_color |

当颜色模式为 FSRendererColorModeForeground 时为文本、路径或两者设置前景颜色。

文本、路径或两者的前景颜色由函数 FSRenderer::setForegroundColorMode: 设置的前景颜色模式决定。

参数

  [in] | foreground_color | 文本、路径或两者的前景颜色。格式：0xAARRGGBB。

返回
  无。

## ◆ setForegroundColorMode:()

- (void) setForegroundColorMode: |  | (unsigned int) | foreground_color_mode |

当颜色模式为 FSRendererColorModeForeground 时设置渲染前景颜色模式。

如果不调用此函数，将使用默认值 (FSRendererColorModeForegroundText | FSRendererColorModeForegroundPath | FSRendererColorModeForegroundBlackText | FSRendererColorModeForegroundBlackPath)。

参数

  [in] | foreground_color_mode | 渲染前景颜色模式。请参考从 FSRendererColorModeForegroundText 开始的值，应该是这些值中的一个或 这些值的组合。

返回
  无。

## ◆ setJPEGDownSample:()

- (void) setJPEGDownSample: |  | (BOOL) | is_jepg_down_sample |

设置标志来决定是否对jpeg图像使用下采样。

是否对jpeg图像使用下采样将影响PDF页面的渲染结果。 当成功调用当前函数时，用户应该在再次渲染PDF页面之前 为PDF页面（已至少渲染一次）调用函数 FSPDFPage::clearRenderCache。
如果不调用此函数，将使用默认值 YES。

参数

  [in] | is_jepg_down_sample | YES 表示对jpeg图像使用下采样。 NO 表示对jpeg图像不使用下采样。

返回
  无。

## ◆ setJPXDownSample:()

- (void) setJPXDownSample: |  | (BOOL) | is_jpx_down_sample |

设置标志来决定是否对jpx图像使用下采样。

是否对jpx图像使用下采样将影响PDF页面的渲染结果。 当成功调用当前函数时，用户应该在再次渲染PDF页面之前 为PDF页面（已至少渲染一次）调用函数 FSPDFPage::clearRenderCache。
如果不调用此函数，将使用默认值 YES。

参数

  [in] | is_jpx_down_sample | YES 表示对jpx图像使用下采样。 NO 表示对jpx图像不使用下采样。

返回
  无。

## ◆ setLayerContext:()

- (void) setLayerContext: |  | (FSLayerContext*) | layer_context |

设置图层上下文到渲染上下文句柄。

为了在渲染上下文上渲染PDF页面内容时渲染一个图层， 用户应该调用此函数将图层上下文设置到渲染上下文。

参数

  [in] | layer_context | 图层上下文对象。

返回
  无。

## ◆ setMappingModeColors:foreground_color:()

- (void) setMappingModeColors: |  | (unsigned int) | background_color
foreground_color: |  | (unsigned int) | foreground_color

当颜色模式为 FSRendererColorModeMappingGray 或 FSRendererColorModeMapping 时设置背景颜色和前景颜色。

参数

  [in] | background_color | 背景颜色。格式：0xAARRGGBB。
  [in] | foreground_color | 前景颜色。格式：0xAARRGGBB。

返回
  无。

## ◆ setOverprint:()

- (void) setOverprint: |  | (BOOL) | is_to_enable_overprint |

设置标志来决定是否启用叠印。

参数

  [in] | is_to_enable_overprint | YES 表示启用叠印。 NO 表示不启用叠印。 默认值： NO.

返回
  无。

## ◆ setPrintTextAsGraphic:()

- (void) setPrintTextAsGraphic: |  | (BOOL) | is_to_print_text_graphic |

设置标志来决定是否将文本打印为路径或位图。

当此标志为 YES 时，Foxit PDF SDK将以不同方式渲染文本： 如果字体大小大于50，将文本打印为路径；否则，将文本打印为位图。
如果不调用此函数，将使用默认值 NO。

参数

  [in] | is_to_print_text_graphic | YES 表示将文本打印为路径或位图。 NO 表示不将文本打印为路径或位图。

返回
  无。

## ◆ setPrintTextAsImage:()

- (void) setPrintTextAsImage: |  | (BOOL) | is_to_print_text_image |

设置标志来决定是否将文本打印为图像。

如果不调用此函数，将使用默认值 NO。

参数

  [in] | is_to_print_text_image | YES 表示将文本打印为图像。 NO 表示不将文本打印为图像。

返回
  无。

## ◆ setRenderAnnotAppearanceType:()

- (void) setRenderAnnotAppearanceType: |  | (FSAnnotAppearanceType) | ap_type |

设置注释的外观类型用于渲染。

参数

  [in] | ap_type | 注释外观的类型。请参考从 FSAnnotAppearanceTypeNormal 开始的值，应该是这些值中的一个。

返回
  无。

## ◆ setRenderAnnotsForThumbnail:()

- (void) setRenderAnnotsForThumbnail: |  | (BOOL) | is_render_annots_for_thumbnail |

设置渲染标志来决定是否在缩略图模式下渲染注释。

在缩略图模式下，注释的"NoZoom"和"NoRotate"标志将被忽略。 此渲染标志仅在使用标志 FSRendererRenderAnnot 进行渲染或 调用函数 FSRenderer::renderAnnot:matrix: 时可用。关于设置标志 FSRendererRenderAnnot 请参考函数 FSRenderer::setRenderContentFlags:。
如果不调用此函数，当此渲染标志可用时将使用默认值 NO。

参数

  [in] | is_render_annots_for_thumbnail | YES 表示在缩略图模式下渲染注释。 NO 表示不在缩略图模式下渲染注释。

返回
  无。

## ◆ setRenderContentFlags:()

- (void) setRenderContentFlags: |  | (unsigned int) | render_content_flags |

设置渲染标志来决定渲染什么内容。

如果不调用此函数，将使用默认值 (FSRendererRenderPage | FSRendererRenderAnnot)。

参数

  [in] | render_content_flags | 渲染内容标志。请参考从 FSRendererRenderPage 开始的值，应该是这些值中的一个或组合。 FSRendererRenderHighlight 不能与 FSRendererRenderExceptHighlight 组合。

返回
  无。

## ◆ setRenderEnhanceThinLines:()

- (void) setRenderEnhanceThinLines: |  | (BOOL) | is_render_enhance_thin_lines |

设置标志来决定是否增强细线。

如果不调用此函数，将使用默认值 NO。

参数

  [in] | is_render_enhance_thin_lines | YES 表示用更粗的路径绘制零宽度线条， 使它们比默认的单像素更可见。 NO 表示用单像素宽度绘制零宽度线条。

返回
  无。

## ◆ setRenderFormField:()

- (void) setRenderFormField: |  | (BOOL) | is_render_formfield |

设置标志来决定是否渲染表单字段（除签名字段外）。

如果不调用此函数，当此标志可用时将使用默认值 YES。

参数

  [in] | is_render_formfield | YES 表示渲染表单字段（除签名字段外）。 NO 表示不渲染表单字段（除签名字段外）。

返回
  无。

## ◆ setRenderImageAntiAliasing:()

- (void) setRenderImageAntiAliasing: |  | (BOOL) | is_render_image_antialiasing |

设置标志来决定是否绘制图像反锯齿。

如果不调用此函数，将使用默认值 YES。

参数

  [in] | is_render_image_antialiasing | YES 表示绘制图像反锯齿，效果类似于 枚举类InterpolationFlag中定义的值。 NO 表示绘制图像锯齿。

返回
  无。

## ◆ setRenderLayer:()

- (void) setRenderLayer: |  | (BOOL) | is_render_one_layer |

设置标志来决定是否渲染一个图层或所有可用图层。

如果不调用此函数，当此标志可用时将使用默认值 YES。

参数

  [in] | is_render_one_layer | YES 表示渲染一个图层。 NO 表示渲染所有可用图层。

返回
  无。

## ◆ setRenderPathAntiAliasing:()

- (void) setRenderPathAntiAliasing: |  | (BOOL) | is_render_path_antialiasing |

设置标志来决定是否绘制路径反锯齿。

如果不调用此函数，将使用默认值 YES。

参数

  [in] | is_render_path_antialiasing | YES 表示绘制路径反锯齿。 NO 表示绘制路径锯齿。

返回
  无。

## ◆ setRenderPathFullCovered:()

- (void) setRenderPathFullCovered: |  | (BOOL) | is_render_path_full_covered |

可应用于填充模式的特殊标志。

如果不调用此函数，将使用默认值 NO。

参数

  [in] | is_render_path_full_covered | YES 表示路径部分覆盖的所有像素将被完全绘制，而 NO 表示不这样做。

返回
  无。

## ◆ setRenderPathThinLine:()

- (void) setRenderPathThinLine: |  | (BOOL) | is_render_path_thin_line |

设置标志来决定是否将路径绘制为细线。

如果不调用此函数，将使用默认值 NO。

参数

  [in] | is_render_path_thin_line | YES 表示将路径绘制为细线。 NO 表示不将路径绘制为细线。

返回
  无。

## ◆ setRenderSignature:()

- (void) setRenderSignature: |  | (BOOL) | is_render_signature |

设置标志来决定是否渲染签名。

如果不调用此函数，当此标志可用时将使用默认值 YES。

参数

  [in] | is_render_signature | YES 表示渲染签名。 NO 表示不渲染签名。

返回
  无。

## ◆ setRenderSignatureState:()

- (void) setRenderSignatureState: |  | (BOOL) | is_render_signature_state |

设置标志来决定是否在签名上绘制签名状态。

如果不调用此函数，将使用默认值 YES。

参数

  [in] | is_render_signature_state | YES 表示在签名上绘制签名状态， 而 NO 表示不绘制。

## ◆ setRenderTextAntiAliasing:()

- (void) setRenderTextAntiAliasing: |  | (BOOL) | is_render_text_antialiasing |

设置标志来决定是否绘制文本反锯齿。

如果不调用此函数，将使用默认值 YES。

参数

  [in] | is_render_text_antialiasing | YES 表示绘制文本反锯齿。 NO 表示绘制文本锯齿。

返回
  无。

## ◆ setScreenDPIScale:()

- (void) setScreenDPIScale: |  | (float) | scale |

设置用于渲染的屏幕DPI缩放因子。

设置屏幕DPI缩放比例以适应不同的DPI条件。 此值通常应匹配系统报告的缩放因子 （例如，显示设置中125缩放为1.25）以确保与物理显示特性 的正确渲染对齐。

参数

  [in] | scale | 当前屏幕DPI的缩放比例（1.0 = 100原生DPI，2.0 = 200等）。 必须大于0，通常应对应于系统推荐的缩放因子。

注解
  目前，此屏幕DPI缩放因子仅影响注释。

返回
  无。

## ◆ startQuickRender:matrix:pause:()

- (FSProgressive *) startQuickRender: |  | (FSPDFPage*) | page
matrix: |  | (FSMatrix2D*) | matrix
pause: |  | (id<FSPauseCallback>) | pause

开始快速渲染PDF页面，主要用于缩略图。

此函数主要用于为缩略图渲染页面。 渲染的内容将不完整：即使通过函数 FSRenderer::setRenderContentFlags: 设置了标志 FSRendererRenderAnnot，所有注释都将被忽略； 文本内容将变得模糊并被像素点替代。
当页面具有复杂或大量内容时，这种快速渲染可能仍需要很长时间， 因此Foxit PDF SDK使用渐进式过程来完成。

参数

  [in] | page | 有效的PDF页面。应该已经被解析。
  [in] | matrix | 用于渲染的变换矩阵，通常由函数 FSPDFPage::getDisplayMatrix:top:width:height:rotate: 返回。
  [in] | pause | 暂停回调对象，决定渲染过程是否需要暂停。 可以为 nil，表示在渲染过程中不暂停。 如果不为 nil，应该是用户实现的有效暂停对象。 默认值：nil。

返回
  渐进对象。请通过函数 FSProgressive::getRateOfProgress 检查当前进度的速率。 如果速率尚未达到100，调用函数 FSProgressive::resume 继续进度直到进度完成。

## ◆ startRender:matrix:pause:()

- (FSProgressive *) startRender: |  | (FSPDFPage*) | page
matrix: |  | (FSMatrix2D*) | matrix
pause: |  | (id<FSPauseCallback>) | pause

开始渲染PDF页面。

渲染具有复杂或大量内容的PDF页面可能需要很长时间，因此Foxit PDF SDK使用 渐进式过程来完成。
在Foxit PDF SDK中，窗体注释总是与表单字段和表单控件关联。对于如何 渲染窗体注释，推荐流程如下：

- 加载PDF页面后，首先渲染页面和此页面中的所有注释 （包括窗体注释）。
- 然后，如果用户使用 FSFiller 对象填写表单，用户应该使用函数 FSFiller::render:matrix:renderer: 渲染焦点表单控件，而不是使用 函数 FSRenderer::renderAnnot:matrix:。

参数

  [in] | page | 有效的PDF页面。如果只渲染注释（即只通过函数 FSRenderer::setRenderContentFlags: 设置了 FSRendererRenderAnnot），则无需解析输入页面； 否则输入页面应该已经被解析。
  [in] | matrix | 用于渲染的变换矩阵，通常由函数 FSPDFPage::getDisplayMatrix:top:width:height:rotate: 返回。
  [in] | pause | 暂停回调对象，决定渲染过程是否需要暂停。 可以为 nil，表示在渲染过程中不暂停。 如果不为 nil，应该是用户实现的有效暂停对象。 默认值：nil。

返回
  渐进式对象。请通过函数 FSProgressive::getRateOfProgress 检查当前进度的比率。如果比率还不是100，调用函数 FSProgressive::resume 继续进度直到进度完成。

## ◆ startRenderBitmap:matrix:clip_rect:interpolation:pause:()

- (FSProgressive *) startRenderBitmap: |  | (FSBitmap*) | bitmap
matrix: |  | (FSMatrix2D*) | matrix
clip_rect: |  | (FSRectI*) | clip_rect
interpolation: |  | (unsigned int) | interpolation
pause: |  | (id<FSPauseCallback>) | pause

开始渲染位图。

渲染具有复杂或大量内容的位图可能需要很长时间，因此Foxit PDF SDK使用 渐进式过程来完成。

参数

  [in] | bitmap | 有效的位图。用户应确保位图在 当前渲染过程完成之前保持有效。
  [in] | matrix | 用于渲染的变换矩阵。此矩阵用作图像矩阵： 假设 h 是图像高度，w 是图像宽度，那么矩阵 [w 0 0 h 0 0] 将产生一个相同的图像。
  [in] | clip_rect | 渲染设备的裁剪矩形。可以为 nil。 默认值：nil。
  [in] | interpolation | 位图插值标志。请参考从 FSBitmapDownsample 开始的值，可以是这些值中的一个或组合。 如果不指定任何标志，请使用0。默认值：0。
  [in] | pause | 暂停回调对象，决定渲染过程是否需要暂停。 可以为 nil，表示在渲染过程中不暂停。 如果不为 nil，应该是用户实现的有效暂停对象。 默认值：nil。

返回
  渐进对象。请通过函数 FSProgressive::getRateOfProgress 检查当前进度的速率。 如果速率尚未达到100，调用函数 FSProgressive::resume 继续进度直到进度完成。

## ◆ startRenderBitmapWithAlpha:matrix:clip_rect:interpolation:alpha:pause:()

- (FSProgressive *) startRenderBitmapWithAlpha: |  | (FSBitmap*) | bitmap
matrix: |  | (FSMatrix2D*) | matrix
clip_rect: |  | (FSRectI*) | clip_rect
interpolation: |  | (unsigned int) | interpolation
alpha: |  | (unsigned int) | alpha
pause: |  | (id<FSPauseCallback>) | pause

开始渲染位图。

渲染具有复杂或大量内容的位图可能需要很长时间，因此Foxit PDF SDK使用 渐进式过程来完成。

参数

  [in] | bitmap | 有效的位图。用户应确保位图在 当前渲染过程完成之前保持有效。
  [in] | matrix | 用于渲染的变换矩阵。此矩阵用作图像矩阵： 假设 h 是图像高度，w 是图像宽度，那么矩阵 [w 0 0 h 0 0] 将产生一个相同的图像。
  [in] | clip_rect | 渲染设备的裁剪矩形。可以为 nil。
  [in] | interpolation | 位图插值标志。请参考从 FSBitmapDownsample 开始的值，可以是这些值中的一个或组合。 如果不指定任何标志，请使用0。
  [in] | alpha | 位图透明度值（0 = 完全透明，255 = 完全不透明）。 有效范围：从0到255。
  [in] | pause | 暂停回调对象，决定渲染过程是否需要暂停。 可以为 nil，表示在渲染过程中不暂停。 如果不为 nil，应该是用户实现的有效暂停对象。

返回
  渐进对象。请通过函数 FSProgressive::getRateOfProgress 检查当前进度的速率。 如果速率尚未达到100，调用函数 FSProgressive::resume 继续进度直到进度完成。

## ◆ startRenderReflowPage:matrix:pause:()

- (FSProgressive *) startRenderReflowPage: |  | (FSReflowPage*) | reflow_page
matrix: |  | (FSMatrix2D*) | matrix
pause: |  | (id<FSPauseCallback>) | pause

开始渲染重排页面。

渲染具有复杂或大量内容的重排页面可能需要很长时间，因此Foxit PDF SDK使用 渐进式过程来完成。

参数

  [in] | reflow_page | 有效的重排页面。应该已经被解析。
  [in] | matrix | 用于渲染的变换矩阵，通常由函数 FSReflowPage::getDisplayMatrix:offset_y:width:height:rotate: 返回。
  [in] | pause | 暂停回调对象，决定渲染过程是否需要暂停。 可以为 nil，表示在渲染过程中不暂停。 如果不为 nil，应该是用户实现的有效暂停对象。 默认值：nil。

返回
  渐进式对象。请通过函数 FSProgressive::getRateOfProgress 检查当前进度的比率。如果比率还不是100，调用函数 FSProgressive::resume 继续进度直到进度完成。

## ◆ startRenderXFAPage:matrix:is_highlight:pause:()

- (FSProgressive *) startRenderXFAPage: |  | (FSXFAPage*) | xfa_page_view
matrix: |  | (FSMatrix2D*) | matrix
is_highlight: |  | (BOOL) | is_highlight
pause: |  | (id<FSPauseCallback>) | pause

开始渲染XFA页面。

渲染具有复杂或大量内容的XFA页面将需要很长时间，因此Foxit PDF SDK使用 渐进式过程来完成。

参数

  [in] | xfa_page_view | 有效的XFA页面。
  [in] | matrix | 用于渲染的变换矩阵，通常由函数 FSXFAPage::getDisplayMatrix:top:width:height:rotate: 返回。
  [in] | is_highlight | YES 表示高亮XFA小部件，NO 表示不高亮 XFA小部件。
  [in] | pause | 暂停回调对象，决定渲染过程是否需要暂停。 可以为 nil，表示在渲染过程中不暂停。 如果不为 nil，应该是用户实现的有效暂停对象。 默认值：nil。

返回
  渐进对象。请通过函数 FSProgressive::getRateOfProgress 检查当前进度的速率。 如果速率尚未达到100，调用函数 FSProgressive::resume 继续进度直到进度完成。