|
Foxit PDF SDK
|
Public 类型 | |
| enum | BlendMode { e_BlendNormal = 0, e_BlendMultiply = 1, e_BlendScreen = 2, e_BlendOverlay = 3, e_BlendDarken = 4, e_BlendLighten = 5, e_BlendColorDodge = 6, e_BlendColorBurn = 7, e_BlendHardlight = 8, e_BlendSoftlight = 9, e_BlendDifference = 10, e_BlendExclusion = 11, e_BlendHue = 21, e_BlendSaturation = 22, e_BlendColor = 23, e_BlendLuminosity = 24 } |
| 渲染混合模式的枚举。 更多... | |
| enum | Type { e_TypeAll = 0, e_TypeText = 1, e_TypePath = 2, e_TypeImage = 3, e_TypeShading = 4, e_TypeFormXObject = 5, e_TypeInlines = 6, e_TypeEmptyMarkedContent = 7 } |
| PDF图形对象类型的枚举。 更多... | |
Public 成员函数 | |
| bool | AddClipPath (const common::Path &path, common::FillMode fill_mode) |
| 添加用于裁剪的路径。 更多... | |
| bool | AddClipTextObject (TextObject *textobject) |
| 添加用于裁剪的文本对象。 更多... | |
| bool | ClearClips () |
| 清除所有裁剪。 更多... | |
| GraphicsObject * | Clone () |
| 克隆新的图形对象。 更多... | |
| GraphicsObject * | Clone (foxit::pdf::GraphicsObjects src_graphicsobjects, foxit::pdf::GraphicsObjects dest_graphicsobjects) |
| 克隆新的图形对象。 更多... | |
| BlendMode | GetBlendMode () const |
| 获取透明成像模型的混合模式。 更多... | |
| common::Path | GetClipPath (int index) const |
| 根据索引获取路径裁剪。 更多... | |
| int | GetClipPathCount () const |
| 获取路径裁剪的数量。 更多... | |
| common::FillMode | GetClipPathFillMode (int index) const |
| 根据索引获取路径裁剪的填充模式。 更多... | |
| RectF | GetClipRect () const |
| 获取裁剪矩形。 更多... | |
| TextObject * | GetClipTextObject (int index) const |
| 根据索引获取文本裁剪的文本对象。 更多... | |
| int | GetClipTextObjectCount () const |
| 获取文本裁剪的数量。 更多... | |
| ColorState | GetColorState () const |
| 获取颜色状态。 更多... | |
| ARGB | GetFillColor () const |
| 获取填充颜色。 更多... | |
| float | GetFillOpacity () const |
| 获取除描边外的绘制操作的不透明度值。 更多... | |
| FormXObject * | GetFormXObject () const |
| 如果当前图形对象表示表单XObject对象,则获取表单XObject图形对象。 更多... | |
| common::GraphState | GetGraphState () const |
| 获取图形状态。 更多... | |
| ImageObject * | GetImageObject () const |
| 如果当前图形对象表示图像对象,则获取图像图形对象。 更多... | |
| LayerNodeArray | GetLayers (const LayerTree &layer_tree) |
| 获取与当前图形对象关联的所有图层。 更多... | |
| MarkedContent * | GetMarkedContent () const |
| 获取标记内容对象。 更多... | |
| Matrix | GetMatrix () const |
| 获取矩阵。 更多... | |
| PathObject * | GetPathObject () const |
| 如果当前图形对象表示路径对象,则获取路径图形对象。 更多... | |
| RectF | GetRect () const |
| 获取当前图形对象的矩形。 更多... | |
| ShadingObject * | GetShadingObject () const |
| 如果当前图形对象表示阴影对象,则获取阴影图形对象。 更多... | |
| ARGB | GetStrokeColor () const |
| 获取描边颜色。 更多... | |
| float | GetStrokeOpacity () const |
| 获取路径和字形轮廓的描边绘制操作的不透明度值。 更多... | |
| TextObject * | GetTextObject () const |
| 如果当前图形对象表示文本对象,则获取文本图形对象。 更多... | |
| Type | GetType () const |
| 获取当前图形对象的类型。 更多... | |
| bool | HasTransparency () |
| 检查当前图形对象是否具有透明度。 更多... | |
| void | Release () |
| 释放尚未插入到任何PDF页面中的克隆或新创建的PDF图形对象或其他对象。 更多... | |
| bool | RemoveClipPath (int index) |
| 根据索引删除路径裁剪。 更多... | |
| bool | RemoveClipTextObject (int index) |
| 根据索引删除用于裁剪的文本裁剪。 更多... | |
| void | Rotate (int angle) |
| 从当前状态以指定的角度顺时针旋转当前图形对象。 更多... | |
| void | SetBlendMode (BlendMode blend_mode) |
| 设置透明成像模型的混合模式。 更多... | |
| void | SetClipRect (const RectF &clip_rect) |
| 设置裁剪矩形。 更多... | |
| void | SetColorState (const ColorState &color_state) |
| 设置颜色状态。 更多... | |
| void | SetFillColor (ARGB color) |
| 设置填充颜色。 更多... | |
| void | SetFillOpacity (float opacity) |
| 设置除描边外的绘制操作的不透明度值。 更多... | |
| void | SetGraphState (const common::GraphState &graph_state) |
| 设置图形状态。 更多... | |
| void | SetMatrix (const Matrix &matrix) |
| 设置矩阵。 更多... | |
| void | SetStrokeColor (ARGB color) |
| 设置描边颜色。 更多... | |
| void | SetStrokeOpacity (float opacity) |
| 设置路径和字形轮廓的描边绘制操作的不透明度值。 更多... | |
| bool | Transform (const Matrix &matrix, bool need_transform_clippath) |
| 变换当前图形对象。 更多... | |
PDF页面的内容通常由一系列图形对象组成。每个图形对象包含其状态信息、数据和渲染指令。
类GraphicsObject是所有类型PDF图形对象的基类。 它提供获取/设置图形对象通用属性的基本函数。对于具体的图形对象类型,请参阅派生类。
要获取或插入/删除图形对象,请参阅类pdf::GraphicsObjects。
如果对PDF图形对象进行了任何更改,请记住为pdf::GraphicsObjects对象 (当前图形对象所属的对象)调用函数GraphicsObjects::GenerateContent。 更多详细信息请参阅函数GraphicsObjects::GenerateContent的注释。
渲染混合模式的枚举。
此枚举的值应单独使用。
| bool foxit::pdf::graphics::GraphicsObject::AddClipPath | ( | const common::Path & | path, |
| common::FillMode | fill_mode | ||
| ) |
添加用于裁剪的路径。
| [in] | path | 要添加到当前图形对象的路径数据。 |
| [in] | fill_mode | 输入路径的填充模式。请参考从 common::e_FillModeNone开始的值,这应该是这些值中的一个。 |
| bool foxit::pdf::graphics::GraphicsObject::AddClipTextObject | ( | TextObject * | textobject | ) |
添加用于裁剪的文本对象。
| [in] | textobject | 要添加用于裁剪的文本对象。 |
| bool foxit::pdf::graphics::GraphicsObject::ClearClips | ( | ) |
清除所有裁剪。
| GraphicsObject* foxit::pdf::graphics::GraphicsObject::Clone | ( | ) |
克隆新的图形对象。
新克隆的图形对象默认与当前图形对象关联到同一页面。 新克隆的图形对象只能在包含当前图形对象的PDF文件内使用。 如果克隆的图形对象未插入到任何PDF页面或其他对象中, 请记住在不再使用时调用函数GraphicsObject::Release来释放它。
| GraphicsObject* foxit::pdf::graphics::GraphicsObject::Clone | ( | foxit::pdf::GraphicsObjects | src_graphicsobjects, |
| foxit::pdf::GraphicsObjects | dest_graphicsobjects | ||
| ) |
克隆新的图形对象。
新克隆的图形对象与dest_graphicsobjects所属的页面相关联。 新克隆的图形对象可以在包含当前图形对象的PDF文件内外使用。 如果克隆的图形对象未插入到任何PDF页面或其他对象中, 请记住在不再使用时调用函数GraphicsObject::Release来释放它。
| [in] | src_graphicsobjects | 包含当前图形对象的GraphicsObjects对象。 |
| [in] | dest_graphicsobjects | 将包含克隆图形对象的GraphicsObjects对象。 这可以属于当前文档中的另一页面或另一文档中的页面。 |
| BlendMode foxit::pdf::graphics::GraphicsObject::GetBlendMode | ( | ) | const |
获取透明成像模型的混合模式。
| common::Path foxit::pdf::graphics::GraphicsObject::GetClipPath | ( | int | index | ) | const |
根据索引获取路径裁剪。
| [in] | index | 路径裁剪索引。有效范围:从0到(count-1)。 count 由函数GraphicsObject::GetClipPath返回。 |
| int foxit::pdf::graphics::GraphicsObject::GetClipPathCount | ( | ) | const |
获取路径裁剪的数量。
| common::FillMode foxit::pdf::graphics::GraphicsObject::GetClipPathFillMode | ( | int | index | ) | const |
根据索引获取路径裁剪的填充模式。
| [in] | index | 路径裁剪索引。有效范围:从0到(count-1)。 count 由函数GraphicsObject::GetClipPath返回。 |
| RectF foxit::pdf::graphics::GraphicsObject::GetClipRect | ( | ) | const |
获取裁剪矩形。
| TextObject* foxit::pdf::graphics::GraphicsObject::GetClipTextObject | ( | int | index | ) | const |
根据索引获取文本裁剪的文本对象。
| [in] | index | 文本裁剪索引。有效范围:从0到(count-1)。 count 由函数GraphicsObject::GetClipTextObjectCount返回。 |
| int foxit::pdf::graphics::GraphicsObject::GetClipTextObjectCount | ( | ) | const |
获取文本裁剪的数量。
| ColorState foxit::pdf::graphics::GraphicsObject::GetColorState | ( | ) | const |
获取颜色状态。
文本图形对象、路径图形对象和表单XObject图形对象可以具有颜色状态。
| ARGB foxit::pdf::graphics::GraphicsObject::GetFillColor | ( | ) | const |
获取填充颜色。
文本图形对象、路径图形对象和表单XObject图形对象可以具有此属性。 函数GraphicsObject::GetColorState可用于获取其他颜色空间(如CMYK颜色空间)中的填充颜色。
| float foxit::pdf::graphics::GraphicsObject::GetFillOpacity | ( | ) | const |
获取除描边外的绘制操作的不透明度值。
| FormXObject* foxit::pdf::graphics::GraphicsObject::GetFormXObject | ( | ) | const |
如果当前图形对象表示表单XObject对象,则获取表单XObject图形对象。
| common::GraphState foxit::pdf::graphics::GraphicsObject::GetGraphState | ( | ) | const |
获取图形状态。
表单XObject图形对象、路径图形对象和文本图形对象可以具有此属性。
| ImageObject* foxit::pdf::graphics::GraphicsObject::GetImageObject | ( | ) | const |
如果当前图形对象表示图像对象,则获取图像图形对象。
| LayerNodeArray foxit::pdf::graphics::GraphicsObject::GetLayers | ( | const LayerTree & | layer_tree | ) |
获取与当前图形对象关联的所有图层。
| [in] | layer_tree | 有效的图层树。此图层树中的所有图层节点将按顺序枚举, 以查找与当前图形对象关联的图层。 |
| MarkedContent* foxit::pdf::graphics::GraphicsObject::GetMarkedContent | ( | ) | const |
获取标记内容对象。
| Matrix foxit::pdf::graphics::GraphicsObject::GetMatrix | ( | ) | const |
获取矩阵。
| PathObject* foxit::pdf::graphics::GraphicsObject::GetPathObject | ( | ) | const |
如果当前图形对象表示路径对象,则获取路径图形对象。
| RectF foxit::pdf::graphics::GraphicsObject::GetRect | ( | ) | const |
获取当前图形对象的矩形。
| ShadingObject* foxit::pdf::graphics::GraphicsObject::GetShadingObject | ( | ) | const |
如果当前图形对象表示阴影对象,则获取阴影图形对象。
| ARGB foxit::pdf::graphics::GraphicsObject::GetStrokeColor | ( | ) | const |
获取描边颜色。
文本图形对象、路径图形对象和表单XObject图形对象可以具有此属性。
函数GraphicsObject::GetColorState可用于获取其他颜色空间(如CMYK颜色空间)中的描边颜色。
| float foxit::pdf::graphics::GraphicsObject::GetStrokeOpacity | ( | ) | const |
获取路径和字形轮廓的描边绘制操作的不透明度值。
| TextObject* foxit::pdf::graphics::GraphicsObject::GetTextObject | ( | ) | const |
如果当前图形对象表示文本对象,则获取文本图形对象。
| Type foxit::pdf::graphics::GraphicsObject::GetType | ( | ) | const |
获取当前图形对象的类型。
| bool foxit::pdf::graphics::GraphicsObject::HasTransparency | ( | ) |
检查当前图形对象是否具有透明度。
| void foxit::pdf::graphics::GraphicsObject::Release | ( | ) |
释放尚未插入到任何PDF页面中的克隆或新创建的PDF图形对象或其他对象。
| bool foxit::pdf::graphics::GraphicsObject::RemoveClipPath | ( | int | index | ) |
根据索引删除路径裁剪。
| [in] | index | 路径裁剪索引。有效范围:从0到(count-1)。 count 由函数GraphicsObject::GetClipPath返回。 |
| bool foxit::pdf::graphics::GraphicsObject::RemoveClipTextObject | ( | int | index | ) |
根据索引删除用于裁剪的文本裁剪。
| [in] | index | 文本裁剪索引。有效范围:从0到(count-1)。 count 由函数GraphicsObject::GetClipTextObjectCount返回。 |
| void foxit::pdf::graphics::GraphicsObject::Rotate | ( | int | angle | ) |
从当前状态以指定的角度顺时针旋转当前图形对象。
| [in] | angle | 角度值,用于从当前状态顺时针旋转当前图形对象。 值范围:从0到360。特别地,如果输入值为0或360(表示不旋转当前图形对象), 当前函数将不执行任何操作。 |
| void foxit::pdf::graphics::GraphicsObject::SetBlendMode | ( | BlendMode | blend_mode | ) |
设置透明成像模型的混合模式。
| [in] | blend_mode | 新的混合模式。请参考从GraphicsObject::e_BlendNormal开始的值, 这应该是这些值中的一个。 |
| void foxit::pdf::graphics::GraphicsObject::SetClipRect | ( | const RectF & | clip_rect | ) |
设置裁剪矩形。
新的裁剪矩形将默认使用填充模式common::e_FillModeWinding设置。
| [in] | clip_rect | 新的裁剪矩形。 |
| void foxit::pdf::graphics::GraphicsObject::SetColorState | ( | const ColorState & | color_state | ) |
设置颜色状态。
文本图形对象、路径图形对象和表单XObject图形对象可以具有此属性。 如果尝试为其余不支持的类型设置颜色状态,将抛出异常foxit::e_ErrUnsupported。
| [in] | color_state | 要设置到当前图形对象的颜色状态对象。 |
| void foxit::pdf::graphics::GraphicsObject::SetFillColor | ( | ARGB | color | ) |
设置填充颜色。
文本图形对象、路径图形对象和表单XObject图形对象可以具有颜色状态。 如果尝试为其余不支持的类型设置填充颜色,将抛出foxit::e_ErrUnsupported。
对于路径图形对象,请确保填充模式不是common::e_FillModeNone; 否则填充颜色将不会对路径图形对象产生任何影响。请参阅函数 PathObject::GetFillMode和PathObject::SetFillMode来 检查和更改路径图形对象的填充模式。
此函数仅设置RGB颜色值。 如果需要设置其他颜色空间(如CMYK颜色空间)的填充颜色, 可以使用函数GraphicsObject::SetColorState。
| [in] | color | 新的颜色值,格式为0xAARRGGBB。 |
| void foxit::pdf::graphics::GraphicsObject::SetFillOpacity | ( | float | opacity | ) |
设置除描边外的绘制操作的不透明度值。
| [in] | opacity | 新的不透明度值。有效范围:0.0到1.0。 0.0表示完全透明,1.0表示完全不透明。 |
| void foxit::pdf::graphics::GraphicsObject::SetGraphState | ( | const common::GraphState & | graph_state | ) |
设置图形状态。
表单XObject图形对象、路径图形对象和文本图形对象(其文本模式为 TextState::e_ModeStroke、TextState::e_ModeStrokeClip、 TextState::e_ModeFillStroke或TextState::e_ModeFillStrokeClip) 可以具有此属性。如果尝试为其余不支持的类型设置图形状态,将抛出异常 foxit::e_ErrUnsupported。
| [in] | graph_state | 新的图形状态。 |
| void foxit::pdf::graphics::GraphicsObject::SetMatrix | ( | const Matrix & | matrix | ) |
设置矩阵。
| [in] | matrix | 新的矩阵值。 |
| void foxit::pdf::graphics::GraphicsObject::SetStrokeColor | ( | ARGB | color | ) |
设置描边颜色。
文本图形对象、路径图形对象和表单XObject图形对象可以具有此属性。 如果当前图形对象是文本图形对象且文本模式为TextState::e_ModeFill, 描边颜色将不会对文本图形对象产生影响。
如果尝试为其余不支持的类型设置描边颜色,将抛出异常foxit::e_ErrUnsupported。
函数GraphicsObject::SetColorState可用于在其他颜色空间(如CMYK颜色空间)中设置描边颜色。
| [in] | color | 新的颜色值,格式为0xAARRGGBB。 |
| void foxit::pdf::graphics::GraphicsObject::SetStrokeOpacity | ( | float | opacity | ) |
设置路径和字形轮廓的描边绘制操作的不透明度值。
| [in] | opacity | 新的不透明度值。有效范围:0.0到1.0。 0.0表示完全透明,1.0表示完全不透明。 |
| bool foxit::pdf::graphics::GraphicsObject::Transform | ( | const Matrix & | matrix, |
| bool | need_transform_clippath | ||
| ) |
变换当前图形对象。
| [in] | matrix | 变换矩阵。 |
| [in] | need_transform_clippath | true 表示与当前图形对象一起变换裁剪路径。 false 表示仅变换当前图形对象。 |