Foxit PDF SDK

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

## 构造函数
(void) | - addPoint:type:pressure:
| 添加一个点。 更多...
(FSPSInk *) | - convertToPDFAnnot:annot_rect:rotate:
| 将PSI对象转换为PSInk注释并将PSInk注释插入到PDF页面中。 更多...
(FSBitmap *) | - getBitmap
| 获取画布位图。 更多...
(FSRectF *) | - getContentsRect
| 获取内容矩形。 更多...
(id) | - initWithBitmap:simulate:
| 构造函数，使用位图作为画布。 更多...
(id) | - initWithOther:
| 构造函数，使用另一个PSI对象。 更多...
(id) | - initWithWidth:height:simulate:
| 构造函数，使用指定的画布宽度和高度。 更多...
(BOOL) | - isEmpty
| 检查当前对象是否为空。 更多...
(void) | - setCallback:
| 设置用于刷新的回调对象。 更多...
(void) | - setColor:
| 设置墨水颜色。 更多...
(void) | - setDiameter:
| 设置墨水直径。 更多...
(void) | - setOpacity:
| 设置墨水不透明度。 更多...

## 详细描述

PSI，"压感墨水"，专为手动签名而定义，通常与 手写板或触摸屏配合使用。PSI包含私有坐标，并在 其坐标中创建画布。画布限制操作区域并生成PSI的外观。
PSI独立于PDF，甚至可以直接在设备屏幕上使用。如果用户想要将PSI对象保存到 PDF文件中，请调用函数 FSPSI::convertToPDFAnnot:annot_rect:rotate:。此函数将PSI数据转换为 PSInk注释（作为Foxit自定义注释类型）并将PSInk注释插入到 PDF页面中的指定位置。

参见
  FSPSInk

## 函数文档

## ◆ addPoint:type:pressure:()

- (void) addPoint: |  | (FSPointF*) | point
type: |  | (FSPathPointType) | type
pressure: |  | (float) | pressure

添加一个点。

参数

  [in] | point | 画布坐标系中的一个点。
  [in] | type | 点类型。应为以下值之一： FSPathTypeMoveTo、FSPathTypeLineTo、 FSPathTypeLineToCloseFigure。
  [in] | pressure | 此点的压力值。有效范围：从0.0到1.0。

返回
  无。

## ◆ convertToPDFAnnot:annot_rect:rotate:()

- (FSPSInk *) convertToPDFAnnot: |  | (FSPDFPage*) | page
annot_rect: |  | (FSRectF*) | annot_rect
rotate: |  | (FSRotation) | rotate

将PSI对象转换为PSInk注释并将PSInk注释插入到PDF页面中。

实际上，此函数是将当前PSI的路径数据转换为PSInk注释， 忽略画布位图。
调用此函数之前，用户应确保当前PSI对象包含有效路径 （其最后一个点的类型为 FSPathTypeLineToCloseFigure）。 否则，转换将失败，此函数将抛出异常 FSErrInvalidData。

参数

  [in] | page | 有效的PDF页面对象，预期将PSI插入其中。
  [in] | annot_rect | 指定PDF页面中位置的矩形， 新的PSInk注释将插入其中。 在中应有效。
  [in] | rotate | 旋转值。目前只能是 FSRotation0。

返回
  新的PSInk注释对象。

注解
  用户在此转换后不需要调用函数 FSAnnot::resetAppearanceStream（从 PSInk的父类继承）来重置PSInk注释的外观。

## ◆ getBitmap()

- (FSBitmap *) getBitmap |  |  |

获取画布位图。

返回
  画布位图。

## ◆ getContentsRect()

- (FSRectF *) getContentsRect |  |  |

获取内容矩形。

返回
  设备坐标系中的内容矩形。 如果当前PSI对象不包含有效路径， 将返回所有值为0的RectF对象。

## ◆ initWithBitmap:simulate:()

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

构造函数，使用位图作为画布。

参数

  [in] | bitmap | 用作画布的位图。应使用 FSBitmapDIBArgb 格式创建。 用户应确保此位图在当前PSI对象释放之前保持有效。
  [in] | simulate | 用于决定是否开启PSI模拟： YES 表示开启模拟，NO 表示关闭模拟。 开启模拟时，可以通过写入速度模拟手写重量。

## ◆ initWithOther:()

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

构造函数，使用另一个PSI对象。

参数

  [in] | other | 另一个PSI对象。

## ◆ initWithWidth:height:simulate:()

- (id) initWithWidth: |  | (int) | width
height: |  | (int) | height
simulate: |  | (BOOL) | simulate

构造函数，使用指定的画布宽度和高度。

参数

  [in] | width | 设备坐标系中PSI画布的宽度。应大于0。
  [in] | height | 设备坐标系中PSI画布的高度。应大于0。
  [in] | simulate | 用于决定是否开启PSI模拟： YES 表示开启模拟，NO 表示关闭模拟。 开启模拟时，可以通过写入速度模拟手写重量。

## ◆ isEmpty()

- (BOOL) isEmpty |  |  |

检查当前对象是否为空。

当前对象为空时，表示当前对象无用。

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

## ◆ setCallback:()

- (void) setCallback: |  | (id<FSPSICallback>) | callback |

设置用于刷新的回调对象。

参数

  [in] | callback | 由用户实现的回调对象 。 请确保回调对象在 当前PSI对象的生命周期结束前保持有效。

返回
  无。

## ◆ setColor:()

- (void) setColor: |  | (unsigned int) | color |

设置墨水颜色。

应在向PSI对象添加第一个点之前设置。 如果未设置，将使用默认值0x000000。

参数

  [in] | color | 墨水颜色。格式：0xRRGGBB。

返回
  无。

## ◆ setDiameter:()

- (void) setDiameter: |  | (int) | diameter |

设置墨水直径。

应在向PSI对象添加第一个点之前设置。 如果未设置，将使用默认值10。

参数

  [in] | diameter | 墨水直径。应大于1。

返回
  无。

## ◆ setOpacity:()

- (void) setOpacity: |  | (float) | opacity |

设置墨水不透明度。

应在向PSI对象添加第一个点之前设置。 如果未设置，将使用默认值1.0。

参数

  [in] | opacity | 墨水不透明度。有效范围：从0.0到1.0。 0.0表示完全透明，1.0表示完全不透明。

返回
  无。