Foxit PDF SDK

Public 成员函数 | 静态 Public 属性 | 所有成员列表
FSDK::GraphicsObjects类 参考
类 FSDK::GraphicsObjects 继承关系图:

## Public 成员函数
| GenerateContent ()
| 生成当前图形对象的内容。 更多...
| GenerateContent (text_merge_option)
| 生成当前图形对象的内容。 更多...
| GetFirstGraphicsObjectPosition (filter)
| 基于类型过滤器获取图形对象列表中第一个图形对象的位置。 更多...
| GetGraphicsObject (position)
| 通过图形对象列表中的位置获取图形对象。 更多...
| GetGraphicsObject (index)
| 通过索引获取图形对象。 更多...
| GetGraphicsObjectCount ()
| 获取图形对象列表中图形对象的数量。 更多...
| GetGraphicsObjectIndex (graphics_object)
| 获取图形对象列表中指定图形对象的索引。 更多...
| GetGraphicsObjectPosition (graphics_object)
| 获取指定图形对象的位置。 更多...
| GetLastGraphicsObjectPosition (filter)
| 基于类型过滤器获取图形对象列表中最后一个图形对象的位置。 更多...
| GetNextGraphicsObjectPosition (position, filter)
| 基于类型过滤器和指定的当前位置,获取图形对象列表中下一个图形对象的位置。 更多...
| GetPrevGraphicsObjectPosition (position, filter)
| 基于类型过滤器和指定的当前位置,获取图形对象列表中前一个图形对象的位置。 更多...
| InsertGraphicsObject (position_insert_after, graphics_object)
| 在指定位置后插入图形对象。 更多...
| IsEmpty ()
| 检查当前对象是否为空。 更多...
| MoveGraphicsObjectByPosition (current_position, position_move_after)
| 将图形对象从一个位置移动到另一个位置。 更多...
| RemoveGraphicsObject (graphics_object)
| 删除图形对象。 更多...
| RemoveGraphicsObjectByPosition (position)
| 通过位置删除图形对象。 更多...

## 静态 Public 属性
static | e_TextMergeBTET
| 将连续的 BTET 合并为一个新的。 更多...
static | e_TextMergeNone
| 文本合并的枚举。 更多...
static | e_TextMergeTJY
| 合并具有相同 y 坐标的连续文本显示运算符。

## 详细描述

此类用作图形对象的管理器。它将所有图形对象存储在一个图形列表中, 并使用 POSITION 对象来枚举它们。一个有效的 POSITION 对象可用于获取一个图形对象、 插入新图形对象甚至删除一个图形对象。
如果任何图形对象被更改,或者图形对象被插入/删除,应调用函数 FSDK.GraphicsObjects.GenerateContent 以确保所有这些更改都存储到 PDF 文档中。有关详细信息,请参阅函数 FSDK.GraphicsObjects.GenerateContent。
PDF 页面的内容通常由一系列图形对象组成,这意味着 PDF 页面也像图形对象的管理器一样使用。 因此,类 FSDK.PDFPage 派生自类 FSDK.GraphicsObjects,以便 类 FSDK.PDFPage 可以检索其图形对象。
表单 XObject 是一种图形对象,是任意图形对象序列的自包含描述, 因此可以使用函数 FSDK.FormXObject.GetGraphicsObjects 从表单 XObject 检索 GraphicsObjects 对象, 以便管理表单 XObject 中包含的图形对象。

参见
  FSDK.PDFPage
  FSDK.FormXObject
  FSDK.GraphicsObject

## 成员函数说明

## ◆ GenerateContent() [1/2]

FSDK::GraphicsObjects::GenerateContent | ( |  | ) |

生成当前图形对象的内容。

如果任何图形对象被更改,或者图形对象被插入/删除/移动,应在保存相关 PDF 文档之前 调用此函数,以确保所有这些更改都存储到 PDF 文档。由于生成内容可能需要很长时间, 不建议用户频繁调用此函数,而应仅在必要时调用,例如 在即将保存相关 PDF 文档之前。
当此函数成功且当前图形对象表示 PDF 页面时,建议用户在对页面内容执行某些操作之前, 使用函数 FSDK.PDFPage.StartParse 并将参数 is_reparse 设为 true 重新解析 PDF 页面; 否则操作结果可能是意外的。例如,如果在此函数成功后没有重新解析 PDF 页面就渲染页面, 页面内容可能不会按预期渲染,或者可能会出现意外错误。 有关重新解析 PDF 页面的详细信息,请参阅函数 FSDK.PDFPage.StartParse。

返回
  true 表示成功，而 false 表示失败。

## ◆ GenerateContent() [2/2]

FSDK::GraphicsObjects::GenerateContent | ( | text_merge_option |  | ) |

生成当前图形对象的内容。

如果任何图形对象被更改,或者图形对象被插入/删除/移动,应在保存相关 PDF 文档之前 调用此函数,以确保所有这些更改都存储到 PDF 文档。由于生成内容可能需要很长时间, 不建议用户频繁调用此函数,而应仅在必要时调用,例如 在即将保存相关 PDF 文档之前。
当此函数成功且当前图形对象表示 PDF 页面时,建议用户在对页面内容执行某些操作之前, 使用函数 FSDK.PDFPage.StartParse 并将参数 is_reparse 设为 true 重新解析 PDF 页面; 否则操作结果可能是意外的。例如,如果在此函数成功后没有重新解析 PDF 页面就渲染页面, 页面内容可能不会按预期渲染,或者可能会出现意外错误。 有关重新解析 PDF 页面的详细信息,请参阅函数 FSDK.PDFPage.StartParse。

参数

  [in] | text_merge_option | 文本对象的合并选项。请参考从 FSDK.GraphicsObjects.e_TextMergeNone 开始的值,这应该是这些值之一。

返回
  true 表示成功，而 false 表示失败。

## ◆ GetFirstGraphicsObjectPosition()

FSDK::GraphicsObjects::GetFirstGraphicsObjectPosition | ( | filter |  | ) |

基于类型过滤器获取图形对象列表中第一个图形对象的位置。

在图形对象列表中获取位置后,用户可以调用函数 FSDK.GraphicsObjects.GetGraphicsObject 来获取此位置的图形对象。

参数

  [in] | filter | 指定要获取哪种图形对象的类型过滤器。 请参考从 FSDK.GraphicsObject.e_TypeAll 开始的值, 这应该是这些值之一。 FSDK.GraphicsObject.e_TypeAll 表示所有类型的 图形对象。默认值: FSDK.GraphicsObject.e_TypeAll。

返回
  一个 POSITION 对象,表示图形对象列表中第一个图形对象的位置。 null 或 0 表示没有图形对象。

## ◆ GetGraphicsObject() [1/2]

FSDK::GraphicsObjects::GetGraphicsObject | ( | position |  | ) |

通过图形对象列表中的位置获取图形对象。

参数

  [in] | position | 一个 POSITION 对象,指示图形对象列表中的位置。 它不应为 null 或 0。

返回
  一个 FSDK.GraphicsObject 对象。如果有任何错误,此函数将返回 null。

## ◆ GetGraphicsObject() [2/2]

FSDK::GraphicsObjects::GetGraphicsObject | ( | index |  | ) |

通过索引获取图形对象。

参数

  [in] | index | 要检索的图形对象的索引。有效范围:从 0 到 (count-1)。 count 由函数 FSDK.GraphicsObjects.GetGraphicsObjectCount 返回。

返回
  一个图形对象。如果有任何错误,此函数将返回 null。

## ◆ GetGraphicsObjectCount()

FSDK::GraphicsObjects::GetGraphicsObjectCount | ( |  | ) |

获取图形对象列表中图形对象的数量。

返回
  图形对象列表中图形对象的数量。

## ◆ GetGraphicsObjectIndex()

FSDK::GraphicsObjects::GetGraphicsObjectIndex | ( | graphics_object |  | ) |

获取图形对象列表中指定图形对象的索引。

参数

  [in] | graphics_object | 要检索其索引的图形对象。请确保 输入的图形对象属于当前图形对象。

返回
  图形对象列表中指定图形对象的索引。 -1 表示参数 graphics_object 不属于当前图形对象列表。

## ◆ GetGraphicsObjectPosition()

FSDK::GraphicsObjects::GetGraphicsObjectPosition | ( | graphics_object |  | ) |

获取指定图形对象的位置。

参数

  [in] | graphics_object | 要检索其位置的图形对象。

返回
  指定图形对象的位置。null 表示输入的图形对象不属于当前图形对象。

## ◆ GetLastGraphicsObjectPosition()

FSDK::GraphicsObjects::GetLastGraphicsObjectPosition | ( | filter |  | ) |

基于类型过滤器获取图形对象列表中最后一个图形对象的位置。

在图形对象列表中获取位置后,用户可以调用函数 FSDK.GraphicsObjects.GetGraphicsObject 来获取此位置的图形对象。

参数

  [in] | filter | 指定要获取哪种图形对象的类型过滤器。 请参考从 FSDK.GraphicsObject.e_TypeAll 开始的值, 这应该是这些值之一。 FSDK.GraphicsObject.e_TypeAll 表示所有类型的 图形对象。默认值: FSDK.GraphicsObject.e_TypeAll。

返回
  一个 POSITION 对象,表示图形对象列表中最后一个图形对象的位置。 null 或 0 表示没有图形对象。

## ◆ GetNextGraphicsObjectPosition()

FSDK::GraphicsObjects::GetNextGraphicsObjectPosition | ( | position | ,
|  | filter |
| ) |  |

基于类型过滤器和指定的当前位置,获取图形对象列表中下一个图形对象的位置。

在图形对象列表中获取位置后,用户可以调用函数 FSDK.GraphicsObjects.GetGraphicsObject 来获取此位置的图形对象。

参数

  [in] | position | 一个 POSITION 对象,指示图形对象列表中的一个位置, 将获取其下一个位置。它不应为 null 或 0。
  [in] | filter | 指定要获取哪种图形对象的类型过滤器。 请参考从 FSDK.GraphicsObject.e_TypeAll 开始的值, 这应该是这些值之一。 FSDK.GraphicsObject.e_TypeAll 表示所有类型的 图形对象。默认值: FSDK.GraphicsObject.e_TypeAll。

返回
  一个 POSITION 对象,表示图形对象列表中下一个图形对象的位置。 null 或 0 表示参数 position 是图形对象列表中的最后一个位置。

## ◆ GetPrevGraphicsObjectPosition()

FSDK::GraphicsObjects::GetPrevGraphicsObjectPosition | ( | position | ,
|  | filter |
| ) |  |

基于类型过滤器和指定的当前位置,获取图形对象列表中前一个图形对象的位置。

在图形对象列表中获取位置后,用户可以调用函数 FSDK.GraphicsObjects.GetGraphicsObject 来获取此位置的图形对象。

参数

  [in] | position | 一个 POSITION 对象,指示图形对象列表中的一个位置, 将获取其前一个位置。它不应为 null 或 0。
  [in] | filter | 指定要获取哪种图形对象的类型过滤器。 请参考从 FSDK.GraphicsObject.e_TypeAll 开始的值, 这应该是这些值之一。 FSDK.GraphicsObject.e_TypeAll 表示所有类型的 图形对象。默认值: FSDK.GraphicsObject.e_TypeAll。

返回
  一个 POSITION 对象,表示图形对象列表中前一个图形对象的位置。 null 或 0 表示参数 position 已经是图形对象列表中的第一个位置。

## ◆ InsertGraphicsObject()

FSDK::GraphicsObjects::InsertGraphicsObject | ( | position_insert_after | ,
|  | graphics_object |
| ) |  |

在指定位置后插入图形对象。

参数

  [in] | position_insert_after | 用于指定位置,以便在此位置后插入 参数 graphics_object。 null 表示参数 graphics_object 将被插入到所有图形对象之前。
  [in] | graphics_object | 要插入的图形对象。用户应确保参数 graphics_object 属于与当前图形对象 相同的 PDF 文档。

返回
  插入的图形对象的新位置。

注解
  当此函数成功时,应调用函数 FSDK.GraphicsObjects.GenerateContent。 有关详细信息,请参阅函数 FSDK.GraphicsObjects.GenerateContent。

## ◆ IsEmpty()

FSDK::GraphicsObjects::IsEmpty | ( |  | ) |

检查当前对象是否为空。

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

返回
  true 表示当前对象为空,而 false 表示不为空。

## ◆ MoveGraphicsObjectByPosition()

FSDK::GraphicsObjects::MoveGraphicsObjectByPosition | ( | current_position | ,
|  | position_move_after |
| ) |  |

将图形对象从一个位置移动到另一个位置。

参数

  [in] | current_position | 要移动到新位置的图形对象的当前位置。
  [in] | position_move_after | 用于指定位置,以便将参数 current_position 指定的图形对象 移动到此位置之后。 null 表示参数 current_position 指定的图形对象 将被移动到所有图形对象之前。

返回
  移动后的图形对象的新位置。

注解
  当此函数成功时,应调用函数 FSDK.GraphicsObjects.GenerateContent。 有关详细信息,请参阅函数 FSDK.GraphicsObjects.GenerateContent。

## ◆ RemoveGraphicsObject()

FSDK::GraphicsObjects::RemoveGraphicsObject | ( | graphics_object |  | ) |

删除图形对象。

通过位置删除图形对象(函数 FSDK.GraphicsObjects.RemoveGraphicsObjectByPosition)比 直接删除图形对象(函数 FSDK.GraphicsObjects.RemoveGraphicsObject)更直接和有效。

参数

  [in] | graphics_object | 要删除的图形对象。请确保此图形对象属于 当前图形对象。

返回
  true 表示成功，而 false 表示失败。

注解
  当此函数成功时,应调用函数 FSDK.GraphicsObjects.GenerateContent。 有关详细信息,请参阅函数 FSDK.GraphicsObjects.GenerateContent。

## ◆ RemoveGraphicsObjectByPosition()

FSDK::GraphicsObjects::RemoveGraphicsObjectByPosition | ( | position |  | ) |

通过位置删除图形对象。

通过位置删除图形对象(函数 FSDK.GraphicsObjects.RemoveGraphicsObjectByPosition)比 直接删除图形对象(函数 FSDK.GraphicsObjects.RemoveGraphicsObject)更直接和有效。

参数

  [in] | position | 用于指定要删除的图形对象的位置。 它不应为 null 或 0。

返回
  true 表示成功，而 false 表示失败。

注解
  当此函数成功时,应调用函数 FSDK.GraphicsObjects.GenerateContent。 有关详细信息,请参阅函数 FSDK.GraphicsObjects.GenerateContent。

## 类成员变量说明

## ◆ e_TextMergeBTET

FSDK::GraphicsObjects::e_TextMergeBTET
| static

将连续的 BTET 合并为一个新的。

'/BT' 是内容流中的运算符,表示文本对象的开始。 '/ET' 是内容流中的运算符,表示文本对象的结束。 如果使用合并选项,它将把多个连续的 '/BT' 和 '/ET' 合并为一个新的。

## ◆ e_TextMergeNone

FSDK::GraphicsObjects::e_TextMergeNone
| static

文本合并的枚举。

此枚举的值应单独使用。不进行文本合并。