Foxit PDF SDK
foxit.pdf.objects.PDFObject类 参考
类 foxit.pdf.objects.PDFObject 继承关系图:
foxit.pdf.objects.PDFArray foxit.pdf.objects.PDFDictionary foxit.pdf.objects.PDFStream

Public 类型

enum  Type {
  Type.e_InvalidType = 0, Type.e_Boolean = 1, Type.e_Number = 2, Type.e_String = 3,
  Type.e_Name = 4, Type.e_Array = 5, Type.e_Dictionary = 6, Type.e_Stream = 7,
  Type.e_Null = 8, Type.e_Reference = 9
}
 PDF对象类型的枚举。 更多...
 

Public 成员函数

PDFObject CloneObject ()
 克隆当前PDF对象并获取克隆的PDF对象。 更多...
 
PDFObject DeepCloneObject ()
 克隆当前PDF对象并获取克隆的PDF对象。 更多...
 
PDFArray GetArray ()
 获取当前PDF对象的PDF数组对象。 更多...
 
bool GetBoolean ()
 获取当前PDF对象的布尔值。 更多...
 
DateTime GetDateTime ()
 获取当前PDF对象的日期时间值。 更多...
 
PDFDictionary GetDict ()
 获取当前PDF对象的PDF字典对象。 更多...
 
PDFObject GetDirectObject ()
 获取当前PDF对象的直接对象。 更多...
 
float GetFloat ()
 获取当前PDF对象的浮点数值。 更多...
 
int GetInteger ()
 获取当前PDF对象的整数值。 更多...
 
Matrix2D GetMatrix ()
 获取当前PDF对象的矩阵值。 更多...
 
string GetName ()
 获取当前PDF对象的名称值。 更多...
 
int GetObjNum ()
 获取当前PDF对象的间接对象编号。 更多...
 
RectF GetRect ()
 获取当前PDF对象的矩形值。 更多...
 
PDFStream GetStream ()
 获取当前PDF对象的PDF流对象。 更多...
 
byte [] GetString ()
 获取当前PDF对象的字符串值。 更多...
 
PDFObject.Type GetType ()
 获取当前PDF对象的类型。 更多...
 
string GetWideString ()
 获取当前PDF对象的宽字符串值。 更多...
 
bool IsIdentical (PDFObject pdf_obj)
 检查输入的PDF对象是否与当前PDF对象相同。 更多...
 
void Release ()
 释放新创建的PDF对象或克隆PDF对象, 该对象与PDF文档或其他PDF对象无关且不会再使用。 更多...
 

静态 Public 成员函数

static PDFObject CreateFromBoolean (bool boolean_value)
 从布尔值创建PDF对象。 更多...
 
static PDFObject CreateFromDateTime (DateTime date_time)
 从日期时间创建PDF对象。 更多...
 
static PDFObject CreateFromFloat (float float_value)
 从浮点数创建PDF对象。 更多...
 
static PDFObject CreateFromInteger (int integer_value)
 Create a PDF object from a integer number. 更多...
 
static PDFObject CreateFromName (string name)
 从表示名称的字符串创建PDF对象。 更多...
 
static PDFObject CreateFromNameW (string name)
 从表示名称的字符串创建PDF对象。 更多...
 
static PDFObject CreateFromString (string string_value)
 从字符串创建PDF对象。 更多...
 
static PDFObject CreateFromString (string string_value, int length)
 从字符串创建PDF对象。 更多...
 
static PDFObject CreateReference (PDFDoc document, int object_number)
 为间接对象创建引用。 更多...
 

详细描述

PDF支持八种基本类型的对象:
“布尔值”、“整数和实数”、“字符串”、“名称”、 “数组”、“字典”、“流”、“空对象”。有关PDF对象的更多详细信息, 请参考<PDF Reference 1.7>中的第3.2节“对象”。
PDFObject 是所有类型PDF对象的基类。它提供了不同的函数来 创建不同类型的PDF对象。对于“数组”、“字典”和“流”PDF对象,请参考 派生类foxit.pdf.objects.PDFArray foxit.pdf.objects.PDFDictionary PDFStream
如果用户想要将新创建的PDF对象设为间接对象,请调用函数 pdf.PDFDoc.AddIndirectObject

参见
PDFArray
PDFDictionary
PDFStream
foxit.pdf.PDFDoc

成员枚举类型说明

◆ Type

PDF对象类型的枚举。

此枚举的值应单独使用。

枚举值
e_InvalidType 

无效的PDF对象类型。

e_Boolean 

PDF布尔对象。

e_Number 

PDF数字对象。

e_String 

PDF字符串对象。

e_Name 

PDF名称对象。

e_Array 

PDF数组对象。

e_Dictionary 

PDF字典对象。

e_Stream 

PDF流对象。

e_Null 

PDF空对象。

e_Reference 

PDF引用对象。

成员函数说明

◆ CloneObject()

PDFObject foxit.pdf.objects.PDFObject.CloneObject ( )
inline

克隆当前PDF对象并获取克隆的PDF对象。

如果新对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用PDFObject.Release 来释放该对象。

返回
一个新的PDFObject 对象作为克隆结果。 如果有任何错误,此函数将返回null

◆ CreateFromBoolean()

static PDFObject foxit.pdf.objects.PDFObject.CreateFromBoolean ( bool  boolean_value)
inlinestatic

从布尔值创建PDF对象。

如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

参数
[in]boolean_value一个布尔值。
返回
一个新的PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_Boolean 。 如果有任何错误,此函数将返回null

◆ CreateFromDateTime()

static PDFObject foxit.pdf.objects.PDFObject.CreateFromDateTime ( DateTime  date_time)
inlinestatic

从日期时间创建PDF对象。

PDF定义了一种标准的日期格式,它严格遵循 国际标准ASN.1(抽象语法记号法一),定义于ISO/ IEC 8824(请参阅参考文献)。日期被定义为以下形式的ASCII字符串 (D:YYYYMMDDHHmmSSOHH'mm')。 如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

参数
[in]date_time一个日期和时间对象。
返回
一个新的PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_String 。 如果有任何错误,此函数将返回null

◆ CreateFromFloat()

static PDFObject foxit.pdf.objects.PDFObject.CreateFromFloat ( float  float_value)
inlinestatic

从浮点数创建PDF对象。

如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

参数
[in]float_value一个浮点值。
返回
一个新的PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_Number 。 如果有任何错误,此函数将返回null

◆ CreateFromInteger()

static PDFObject foxit.pdf.objects.PDFObject.CreateFromInteger ( int  integer_value)
inlinestatic

Create a PDF object from a integer number.

如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

参数
[in]integer_value一个整数值。
返回
一个新的PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_Number 。 如果有任何错误,此函数将返回null

◆ CreateFromName()

static PDFObject foxit.pdf.objects.PDFObject.CreateFromName ( string  name)
inlinestatic

从表示名称的字符串创建PDF对象。

如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

参数
[in]name一个字符串。不应为空字符串。
返回
一个新的PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_Name 。 如果有任何错误,此函数将返回null

◆ CreateFromNameW()

static PDFObject foxit.pdf.objects.PDFObject.CreateFromNameW ( string  name)
inlinestatic

从表示名称的字符串创建PDF对象。

参数
[in]name一个字符串。不应为空字符串。
返回
一个新的PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_Name 。 如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

◆ CreateFromString() [1/2]

static PDFObject foxit.pdf.objects.PDFObject.CreateFromString ( string  string_value)
inlinestatic

从字符串创建PDF对象。

如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

参数
[in]string_value一个字符串。不应为空字符串。
返回
一个PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_String 。 如果有任何错误,此函数将返回null

◆ CreateFromString() [2/2]

static PDFObject foxit.pdf.objects.PDFObject.CreateFromString ( string  string_value,
int  length 
)
inlinestatic

从字符串创建PDF对象。

如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

参数
[in]string_value一个字符串。不应为空字符串。
[in]length宽字符串的长度。长度应该是正值或-1。 值-1表示以零结尾的宽字符串。
返回
一个PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_String 。 如果有任何错误,此函数将返回null

◆ CreateReference()

static PDFObject foxit.pdf.objects.PDFObject.CreateReference ( PDFDoc  document,
int  object_number 
)
inlinestatic

为间接对象创建引用。

可以通过以下方法获取间接对象:

如果创建的对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用函数PDFObject.Release 来释放该对象。

参数
[in]document一个有效的PDF文档对象。
[in]object_number间接PDF对象的间接对象编号。该值应大于0。
返回
一个新的PDFObject 对象,其对象类型为foxit.pdf.objects.PDFObject.Type.e_Reference 。 如果有任何错误,此函数将返回null

◆ DeepCloneObject()

PDFObject foxit.pdf.objects.PDFObject.DeepCloneObject ( )
inline

克隆当前PDF对象并获取克隆的PDF对象。

此函数是完全的直接复制,内部没有任何引用对象, 因此复制的对象可以被复制到另一个文档。 如枟新对象尚未添加/设置到PDF文档或其他PDF对象中且不会再使用, 请调用PDFObject.Release 来释放该对象。

返回
一个新的PDFObject 对象作为克隆结果。 如果有任何错误,此函数将返回null

◆ GetArray()

PDFArray foxit.pdf.objects.PDFObject.GetArray ( )
inline

获取当前PDF对象的PDF数组对象。

如果当前PDF对象的类型是foxit.pdf.objects.PDFObject.Type.e_Reference , 此函数将检查当前PDF对象的直接PDF对象。

返回
一个PDF数组对象。如果当前PDF对象或直接PDF对象不是PDF数组, 将返回null

◆ GetBoolean()

bool foxit.pdf.objects.PDFObject.GetBoolean ( )
inline

获取当前PDF对象的布尔值。

仅当当前PDF对象的类型为foxit.pdf.objects.PDFObject.Type.e_Boolean 时有用。

返回
布尔值。对于其他类型的PDF对象,将返回false

◆ GetDateTime()

DateTime foxit.pdf.objects.PDFObject.GetDateTime ( )
inline

获取当前PDF对象的日期时间值。

仅当当前PDF对象的类型为foxit.pdf.objects.PDFObject.Type.e_String 且其内容为PDF标准日期格式时有用。

返回
日期时间信息。如果有任何错误或当前对象为其他类型, 将返回一个空的日期和时间对象。

◆ GetDict()

PDFDictionary foxit.pdf.objects.PDFObject.GetDict ( )
inline

获取当前PDF对象的PDF字典对象。

如果当前PDF对象的类型是foxit.pdf.objects.PDFObject.Type.e_Reference , 此函数将检查当前PDF对象的直接PDF对象。

返回
一个PDF字典对象。如果当前PDF对象或直接PDF对象不是PDF字典, 将返回null

◆ GetDirectObject()

PDFObject foxit.pdf.objects.PDFObject.GetDirectObject ( )
inline

获取当前PDF对象的直接对象。

如果当前PDF对象的类型是foxit.pdf.objects.PDFObject.Type.e_Reference , 将返回直接对象。

返回
直接PDF对象。对于其他类型的PDF对象,此函数将返回当前PDF对象本身。 如果有任何错误,此函数将返回null

◆ GetFloat()

float foxit.pdf.objects.PDFObject.GetFloat ( )
inline

获取当前PDF对象的浮点数值。

仅当当前PDF对象的类型为foxit.pdf.objects.PDFObject.Type.e_Number 时有用。

返回
浮点数值。对于其他类型的PDF对象,将返回0.0f。

◆ GetInteger()

int foxit.pdf.objects.PDFObject.GetInteger ( )
inline

获取当前PDF对象的整数值。

仅当当前PDF对象的类型为foxit.pdf.objects.PDFObject.Type.e_Number 时有用。

返回
整数值。对于其他类型的PDF对象,将返回0。

◆ GetMatrix()

Matrix2D foxit.pdf.objects.PDFObject.GetMatrix ( )
inline

获取当前PDF对象的矩阵值。

仅对类型为foxit.pdf.objects.PDFObject.Type.e_Array 且 包含6个数字对象作为元素的PDF对象有用。

返回
一个矩阵。如果有任何错误或当前对象为其他类型, 将返回值为[0 0 0 0 0 0]的矩阵。

◆ GetName()

string foxit.pdf.objects.PDFObject.GetName ( )
inline

获取当前PDF对象的名称值。

仅当当前PDF对象的类型为 foxit.pdf.objects.PDFObject.Type.e_Name foxit.pdf.objects.PDFObject.Type.e_String 时有用。

返回
表示该值的字符串。如果有任何错误或当前对象为其他类型, 将返回空字符串。

◆ GetObjNum()

int foxit.pdf.objects.PDFObject.GetObjNum ( )
inline

获取当前PDF对象的间接对象编号。

返回
间接对象编号。它可能是:
  • 0,如果当前PDF对象是直接对象。

  • 大于0,如果当前PDF对象是间接对象。

  • -1表示有任何错误。

◆ GetRect()

RectF foxit.pdf.objects.PDFObject.GetRect ( )
inline

获取当前PDF对象的矩形值。

仅对类型为foxit.pdf.objects.PDFObject.Type.e_Array 且 包含4个数字对象作为元素的PDF对象有用。

返回
一个矩形。如果有任何错误或当前对象为其他类型, 将返回值为[0 0 0 0]的矩形。

◆ GetStream()

PDFStream foxit.pdf.objects.PDFObject.GetStream ( )
inline

获取当前PDF对象的PDF流对象。

如果当前PDF对象的类型是foxit.pdf.objects.PDFObject.Type.e_Reference , 此函数将检查当前PDF对象的直接PDF对象。

返回
一个PDF流对象。如果当前PDF对象或直接PDF对象不是PDF流, 将返回null

◆ GetString()

DX_BYTE_ARRAY foxit.pdf.objects.PDFObject.GetString ( )
inline

获取当前PDF对象的字符串值。

此函数将获取当前PDF对象实际值的字符串格式:

如果当前PDF对象的值无法转换为有效的字符串,将返回空字符串。

返回
一个字符串。

◆ GetType()

PDFObject.Type foxit.pdf.objects.PDFObject.GetType ( )
inline

获取当前PDF对象的类型。

返回
PDF对象类型。请参考从foxit.pdf.objects.PDFObject.Type.e_Boolean 开始的值, 此值将是这些值之一。

◆ GetWideString()

string foxit.pdf.objects.PDFObject.GetWideString ( )
inline

获取当前PDF对象的宽字符串值。

此函数将获取当前PDF对象实际值的字符串格式:

如果当前PDF对象的值无法转换为有效的字符串,将返回空字符串。

返回
一个字符串。

◆ IsIdentical()

bool foxit.pdf.objects.PDFObject.IsIdentical ( PDFObject  pdf_obj)
inline

检查输入的PDF对象是否与当前PDF对象相同。

参数
[in]pdf_obj另一个PDF对象,将与当前PDF对象进行比较。
返回
true表示输入的PDF对象与当前PDF对象相同, 而false表示输入的PDF对象与当前PDF对象不相同。

◆ Release()

void foxit.pdf.objects.PDFObject.Release ( )
inline

释放新创建的PDF对象或克隆PDF对象, 该对象与PDF文档或其他PDF对象无关且不会再使用。

此函数应仅用于新创建的PDF对象或克隆的PDF对象, 该对象尚未被添加或设置到其他PDF对象或与PDF文档相关联, 且不会再使用。请勿在其他情况下使用此函数, 否则可能会发生未知错误。

返回
无。