Foxit PDF SDK
foxit::pdf::annots::Ink类 参考
类 foxit::pdf::annots::Ink 继承关系图:
foxit::pdf::annots::Markup foxit::pdf::annots::Annot foxit::Base

Public 成员函数

 Ink ()
 构造函数。
 
 Ink (const Annot &annot)
 构造函数,使用父类对象。 更多...
 
 ~Ink ()
 析构函数。
 
void EnableUseBezier (bool use_bezier)
 启用使用贝塞尔样条来为墨迹注释的外观生成墨迹路径。 更多...
 
common::Path GetInkList ()
 获取墨迹列表数据。 更多...
 
void SetInkList (const common::Path &ink_list)
 设置墨迹列表数据。 更多...
 
- Public 成员函数 继承自 foxit::pdf::annots::Markup
 Markup (const Annot &annot)
 构造函数,使用父类对象。 更多...
 
 Markup ()
 构造函数
 
 ~Markup ()
 析构函数。
 
Note AddReply ()
 在回复列表的末尾添加新回复。 更多...
 
void AddRichText (const WString &content, const RichTextStyle &style)
 在末尾添加新的富文本字符串。 更多...
 
Note AddStateAnnot (const WString &title, StateModel model, State state)
 添加新的状态注释。 更多...
 
float GetBorderOpacity () const
 获取注释的边框透明度。 更多...
 
DateTime GetCreationDateTime () const
 获取创建日期时间。 更多...
 
float GetFillOpacity () const
 获取注释的填充透明度。 更多...
 
MarkupArray GetGroupElements ()
 从当前标记注释所属的组中获取一个元素(作为标记注释)。 更多...
 
Markup GetGroupHeader ()
 获取当前标记注释所属组的头注释(作为主注释)。 更多...
 
String GetIntent () const
 获取意图名称。 更多...
 
float GetOpacity () const
 获取不透明度值。 更多...
 
Popup GetPopup ()
 获取相关的弹出注释。 更多...
 
Note GetReply (int index) const
 按索引获取回复。 更多...
 
int GetReplyCount ()
 计算所有回复。 更多...
 
WString GetRichTextContent (int32 index)
 获取指定索引的富文本字符串的文本字符串。 更多...
 
int32 GetRichTextCount ()
 获取富文本字符串的数量。 更多...
 
RichTextStyle GetRichTextStyle (int32 index)
 获取指定索引的富文本字符串的样式数据。 更多...
 
NoteArray GetStateAnnots (StateModel model)
 获取指定状态模型中的所有状态注释。 更多...
 
WString GetSubject () const
 获取主题字符串。 更多...
 
WString GetTitle () const
 获取标题字符串。 更多...
 
void InsertRichText (int32 index, const WString &content, const RichTextStyle &style)
 在指定索引位置插入新的富文本字符串。 更多...
 
bool IsGrouped ()
 检查当前标记注释是否在组中。 更多...
 
bool RemoveAllReplies ()
 删除所有回复。 更多...
 
bool RemoveAllStateAnnots ()
 移除所有状态注释。 更多...
 
bool RemovePopup ()
 删除相关的弹出注释。 更多...
 
bool RemoveReply (int index)
 按索引删除回复。 更多...
 
void RemoveRichText (int index)
 移除指定索引的富文本字符串。 更多...
 
void SetBorderOpacity (float opacity)
 设置注释的边框透明度。 更多...
 
void SetCreationDateTime (const DateTime &date_time)
 设置创建日期时间。 更多...
 
void SetFillOpacity (float opacity)
 设置注释的填充透明度。 更多...
 
void SetIntent (const String &intent)
 设置意图名称。 更多...
 
void SetOpacity (float opacity)
 设置不透明度值。 更多...
 
void SetPopup (const Popup &popup)
 设置相关的弹出注释。 更多...
 
void SetRichTextContent (int32 index, const WString &content)
 设置指定索引的富文本字符串的文本字符串。 更多...
 
void SetRichTextStyle (int32 index, const RichTextStyle &style)
 设置指定索引的富文本字符串的样式数据。 更多...
 
void SetSubject (const WString &subject)
 设置主题字符串。 更多...
 
void SetTitle (const WString &title)
 设置标题字符串。 更多...
 
bool Ungroup ()
 将当前标记注释从其所属的组中解组。 更多...
 
- Public 成员函数 继承自 foxit::pdf::annots::Annot
 Annot (const PDFPage &page, objects::PDFDictionary *annot_dict)
 构造函数,使用PDF页面和注释的PDF字典。 更多...
 
 Annot (const Annot &annot)
 构造函数,使用另一个注释对象。 更多...
 
 Annot ()
 构造函数。
 
virtual ~Annot ()
 析构函数。
 
objects::PDFStreamGetAppearanceStream (AppearanceType type, const char *appearance_state="") const
 获取具有指定类型和状态的注释外观流。 更多...
 
RGB GetBorderColor () const
 获取边框颜色。 更多...
 
BorderInfo GetBorderInfo () const
 获取边框信息。 更多...
 
WString GetContent () const
 获取内容。 更多...
 
RectI GetDeviceRect (const Matrix &matrix)
 获取设备坐标系统中的注释矩形。 更多...
 
objects::PDFDictionaryGetDict () const
 获取注释的字典对象。 更多...
 
Matrix GetDisplayMatrix (const Matrix &page_display_matrix)
 获取显示矩阵,从PDF坐标系统到 目标设备坐标系统。 更多...
 
uint32 GetFlags () const
 获取注释标志。 更多...
 
int GetIndex () const
 获取当前注释在其所属页面中的索引。 更多...
 
DateTime GetModifiedDateTime () const
 获取最后修改日期时间。 更多...
 
objects::PDFDictionaryGetOptionalContent () const
 获取注释可选内容的PDF字典。 更多...
 
PDFPage GetPage () const
 获取相关的PDF页面。 更多...
 
RectF GetRect () const
 获取矩形,以PDF坐标系统表示。 更多...
 
Type GetType () const
 获取当前注释的实际注释类型。 更多...
 
WString GetUniqueID () const
 获取唯一ID。 更多...
 
bool HasProperty (Property property) const
 当前注释是否具有指定的注释属性。 更多...
 
bool IsEmpty () const
 检查当前对象是否为空。 更多...
 
bool IsMarkup () const
 检查当前注释是否为标记注释。 更多...
 
bool Move (const RectF &rect)
 将当前注释移动到新位置,由PDF坐标系统中的新矩形指定。 更多...
 
bool Move (const RectF &rect, bool is_reset_appearance)
 将当前注释移动到新位置,由PDF坐标系统中的新矩形指定。 更多...
 
bool operator != (const Annot &other) const
 不等于运算符。 更多...
 
Annotoperator= (const Annot &annot)
 赋值运算符。 更多...
 
bool operator== (const Annot &other) const
 等于运算符。 更多...
 
bool RemoveProperty (Property property)
 删除指定的注释属性。 更多...
 
bool ResetAppearanceStream ()
 重置外观流。 更多...
 
bool ResetAppearanceStream (bool is_generate_new_appearance_obj)
 重置外观流。 更多...
 
void SetBorderColor (RGB color)
 设置边框颜色。 更多...
 
void SetBorderInfo (const BorderInfo &border)
 设置边框信息。 更多...
 
void SetContent (const WString &content)
 设置内容。 更多...
 
void SetFlags (uint32 flags)
 设置注释标志。 更多...
 
void SetModifiedDateTime (const DateTime &date_time)
 设置最后修改日期时间。 更多...
 
void SetUniqueID (const WString &unique_id)
 设置唯一ID。 更多...
 
- Public 成员函数 继承自 foxit::Base
FS_HANDLE Handle () const
 获取当前对象的句柄。 更多...
 

额外继承的成员函数

- Public 类型 继承自 foxit::pdf::annots::Markup
enum  EndingStyle {
  e_EndingStyleNone = 0, e_EndingStyleSquare = 1, e_EndingStyleCircle = 2, e_EndingStyleDiamond = 3,
  e_EndingStyleOpenArrow = 4, e_EndingStyleClosedArrow = 5, e_EndingStyleButt = 6, e_EndingStyleROpenArrow = 7,
  e_EndingStyleRClosedArrow = 8, e_EndingStyleSlash = 9
}
 线条端点样式的枚举。 更多...
 
enum  MeasureType {
  e_MeasureTypeX = 0, e_MeasureTypeY = 1, e_MeasureTypeD = 2, e_MeasureTypeA = 3,
  e_MeasureTypeT = 4, e_MeasureTypeS = 5
}
 注释测量类型的枚举。 更多...
 
enum  State {
  e_StateNone = 0, e_StateMarked = 1, e_StateUnmarked = 2, e_StateAccepted = 3,
  e_StateRejected = 4, e_StateCancelled = 5, e_StateCompleted = 6, e_StateDeferred = 7,
  e_StateFuture = 8
}
 标记注释状态的枚举。 更多...
 
enum  StateModel { e_StateModelMarked = 1, e_StateModelReview = 2 }
 标记注释状态模型的枚举。 更多...
 
- Public 类型 继承自 foxit::pdf::annots::Annot
enum  AppearanceType { e_AppearanceTypeNormal = 0, e_AppearanceTypeRollover = 1, e_AppearanceTypeDown = 2 }
 注释外观类型的枚举。 更多...
 
enum  Flags {
  e_FlagInvisible = 0x0001, e_FlagHidden = 0x0002, e_FlagPrint = 0x0004, e_FlagNoZoom = 0x0008,
  e_FlagNoRotate = 0x0010, e_FlagNoView = 0x0020, e_FlagReadOnly = 0x0040, e_FlagLocked = 0x0080,
  e_FlagToggleNoView = 0x0100, e_FlagLockedContents = 0x0200
}
 PDF注释标志的枚举。 更多...
 
enum  HighlightingMode {
  e_HighlightingNone = 0, e_HighlightingInvert = 1, e_HighlightingOutline = 2, e_HighlightingPush = 3,
  e_HighlightingToggle = 4
}
 PDF注释高亮模式的枚举。 更多...
 
enum  MKEntry {
  e_MKEntryRotation = 0, e_MKEntryBorderColor = 1, e_MKEntryBackgroundColor = 2, e_MKEntryNormalCaption = 3,
  e_MKEntryRolloverCaption = 4, e_MKEntryDownCaption = 5, e_MKEntryNormalIcon = 6, e_MKEntryRolloverIcon = 7,
  e_MKEntryDownIcon = 8, e_MKEntryIconFit = 9, e_MKEntryIconCaptionRelation = 10
}
 注释MK字典(外观特征)条目的枚举。 更多...
 
enum  MKIconCaptionRelation {
  e_MKRelationNoIcon = 0, e_MKRelationNoCaption = 1, e_MKRelationCaptionBelowIcon = 2, e_MKRelationCaptionAboveIcon = 3,
  e_MKRelationCaptionRight = 4, e_MKRelationCaptionLeft = 5, e_MKRelationCaptionOvrlayOnIcon = 6
}
 注释MK字典中图标和标题相对位置的枚举。 更多...
 
enum  Property { e_PropertyModifiedDate = 0, e_PropertyCreationDate = 1, e_PropertyBorderColor = 2, e_PropertyFillColor = 3 }
 某些PDF注释属性的枚举。 更多...
 
enum  Type {
  e_UnknownType = 0, e_Note = 1, e_Link = 2, e_FreeText = 3,
  e_Line = 4, e_Square = 5, e_Circle = 6, e_Polygon = 7,
  e_PolyLine = 8, e_Highlight = 9, e_Underline = 10, e_Squiggly = 11,
  e_StrikeOut = 12, e_Stamp = 13, e_Caret = 14, e_Ink = 15,
  e_PSInk = 16, e_FileAttachment = 17, e_Sound = 18, e_Movie = 19,
  e_Widget = 20, e_Screen = 21, e_PrinterMark = 22, e_TrapNet = 23,
  e_Watermark = 24, e_3D = 25, e_Popup = 26, e_Redact = 27,
  e_RichMedia = 28, e_PagingSeal = 29
}
 PDF注释类型的枚举。 更多...
 

详细描述

墨迹注释表示由一个或多个不相交路径组成的手绘"涂鸦"。
墨迹注释是一种标记注释,所以类Ink派生自 类Markup,提供获取/设置墨迹注释属性和 重置墨迹注释外观流的函数。
对于墨迹注释,需要墨迹列表属性。因此,在重置其外观流之前,请确保墨迹注释 具有有效的墨迹列表属性;否则墨迹注释无法重置外观流。

注解
对于新创建的墨迹注释,如果用户在设置必需的墨迹列表属性后直接调用函数 Annot::ResetAppearanceStream(从Ink的父类继承) 而不设置任何其他属性,将使用默认外观:
边框宽度 = 2.0,边框样式 = BorderInfo::e_Solid, 边框颜色 = 0xFFFF0000(红色),不透明度 = 1.0。
参见
Markup

构造及析构函数说明

◆ Ink()

foxit::pdf::annots::Ink::Ink ( const Annot annot)
explicit

构造函数,使用父类对象。

参数
[in]annot父类对象。

成员函数说明

◆ EnableUseBezier()

void foxit::pdf::annots::Ink::EnableUseBezier ( bool  use_bezier)

启用使用贝塞尔样条来为墨迹注释的外观生成墨迹路径。

如果未调用此函数,Foxit PDF SDK将默认使用贝塞尔样条生成墨迹路径。

参数
[in]use_bezier决定是否使用贝塞尔样条的布尔值: true表示使用贝塞尔样条生成墨迹路径, 而false表示使用直线连接相邻点来生成墨迹路径。
返回
无。

◆ GetInkList()

common::Path foxit::pdf::annots::Ink::GetInkList ( )

获取墨迹列表数据。

墨迹列表属性对于墨迹注释是必需的,此属性对墨迹注释的外观有影响。 墨迹列表包含一个或多个描边路径。
在Foxit PDF SDK中,类common::Path用于表示墨迹列表数据, 但路径对象的点类型已经为墨迹列表特别简化。 只有common::Path::e_TypeMoveTocommon::Path::e_TypeLineTo类型 用于墨迹列表中的点:

诸如移动墨迹注释或为此注释设置新墨迹路径等操作将更新墨迹路径数据, 因此先前返回的路径对象将变为无效。在这种情况下, 用户应再次调用此函数以获得新的路径对象。

返回
墨迹列表数据。如果返回的路径对象的函数common::Path::IsEmpty 的返回值为true,那意味着找不到墨迹列表数据。

◆ SetInkList()

void foxit::pdf::annots::Ink::SetInkList ( const common::Path ink_list)

设置墨迹列表数据。

墨迹列表属性对于墨迹注释是必需的,此属性对墨迹注释的外观有影响。 墨迹列表包含一个或多个描边路径。
在Foxit PDF SDK中,类common::Path用于表示墨迹列表数据, 但路径对象的点类型已经为墨迹列表特别简化。 只有common::Path::e_TypeMoveTocommon::Path::e_TypeLineTo类型 用于墨迹列表中的点:

特别地,如果输入参数ink_list包含贝塞尔点(例如,由函数 common::Path::CubicBezierTo添加),控制点将被忽略,只有目标点将 用于墨迹列表数据。
强烈建议用户只传递具有点类型common::Path::e_TypeMoveTocommon::Path::e_TypeLineTo的有效路径对象。
如果用户希望效果显示在注释的外观中,请在此函数后调用函数 Annot::ResetAppearanceStream

参数
[in]ink_list指定新列表数据的新路径对象。
返回
无。