Foxit PDF SDK
foxit::pdf::Metadata类 参考
类 foxit::pdf::Metadata 继承关系图:
foxit::Base

Public 成员函数

 Metadata (const PDFDoc &document)
 构造函数,从PDF文档对象构造。 更多...
 
 Metadata (const Metadata &other)
 构造函数,使用另一个元数据对象构造。 更多...
 
 ~Metadata ()
 析构函数。
 
DateTime GetCreationDateTime () const
 获取创建日期时间。 更多...
 
WStringArray GetCustomerKeys ()
 从元数据获取客户键。 更多...
 
DateTime GetModifiedDateTime () const
 获取修改日期时间。 更多...
 
WStringArray GetValues (const wchar_t *key) const
 获取元数据值(多个)。 更多...
 
bool HasKey (const wchar_t *key) const
 检查相关PDF文档是否具有指定的元数据键。 更多...
 
bool IsEmpty () const
 检查当前对象是否为空。 更多...
 
bool operator != (const Metadata &other) const
 不相等操作符。 更多...
 
Metadataoperator= (const Metadata &other)
 赋值操作符。 更多...
 
bool operator== (const Metadata &other) const
 相等操作符。 更多...
 
void RemoveCustomerKey (const wchar_t *key)
 删除指定的客户键(连同相关值)。 更多...
 
void SetCreationDateTime (const DateTime &date_time)
 设置创建日期时间。 更多...
 
void SetModifiedDateTime (const DateTime &date_time)
 设置修改日期时间。 更多...
 
bool SetValues (const wchar_t *key, const WStringArray &value_array)
 设置元数据值(多个)。 更多...
 
- Public 成员函数 继承自 foxit::Base
FS_HANDLE Handle () const
 获取当前对象的句柄。 更多...
 

详细描述

在PDF文档中,元数据信息存储在文档的Info字典或元数据流中(以可扩展标记语言XML表示)。 当同一个键同时存在于Info字典和元数据流中时,将使用最后修改的那个。
此类从PDF文档对象构造,用于从文档的Info字典和元数据流中获取或设置元数据信息。

构造及析构函数说明

◆ Metadata() [1/2]

foxit::pdf::Metadata::Metadata ( const PDFDoc document)
explicit

构造函数,从PDF文档对象构造。

如果指定的PDF文档中存在元数据信息, 此函数只是构造一个与这些信息关联的元数据对象。 如果指定的PDF文档中不存在此类信息,构造的元数据对象 可用于为PDF文档设置元数据信息。

参数
[in]document有效的PDF文档对象。

◆ Metadata() [2/2]

foxit::pdf::Metadata::Metadata ( const Metadata other)

构造函数,使用另一个元数据对象构造。

参数
[in]other另一个元数据对象。

成员函数说明

◆ GetCreationDateTime()

DateTime foxit::pdf::Metadata::GetCreationDateTime ( ) const

获取创建日期时间。

返回
创建日期时间。如果找不到创建日期时间,将返回所有值都为0的日期时间对象。

◆ GetCustomerKeys()

WStringArray foxit::pdf::Metadata::GetCustomerKeys ( )

从元数据获取客户键。

在Info字典和元数据流中,它们有一些标准键,这些键具有相同的功能 但名称不同。对于这种情况,Foxit PDF SDK将使用Info字典中的标准键名。 除了这些标准键之外,其他键将被视为客户键。

返回
客户键的字符串数组。

◆ GetModifiedDateTime()

DateTime foxit::pdf::Metadata::GetModifiedDateTime ( ) const

获取修改日期时间。

返回
修改日期时间。如果找不到修改日期时间,将返回所有值都为0的日期时间对象。

◆ GetValues()

WStringArray foxit::pdf::Metadata::GetValues ( const wchar_t *  key) const

获取元数据值(多个)。

对于一个元数据键,它可能包含单个或多个值。

参数
[in]key元数据键字符串。它不应该是空字符串。 目前它可以是以下键之一:
"Title", "Author", "Subject", "Keywords", "Creator", "Producer", "Trapped", "CreationDate", "ModDate", "pdfaid", "InstanceID", "DocumentID"。
如果PDF文件支持,它也可以是其他自定义信息键。
对于"CreationDate"和"ModDate",建议用户使用函数 Metadata::GetCreationDateTimeMetadata::GetModifiedDateTime 来 获取日期信息。
返回
元数据值的字符串数组。

◆ HasKey()

bool foxit::pdf::Metadata::HasKey ( const wchar_t *  key) const

检查相关PDF文档是否具有指定的元数据键。

参数
[in]key要检查的元数据键。
返回
true 表示相关PDF文档具有指定的元数据键, false 表示相关PDF文档不具有指定的元数据键。

◆ IsEmpty()

bool foxit::pdf::Metadata::IsEmpty ( ) const

检查当前对象是否为空。

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

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

◆ operator !=()

bool foxit::pdf::Metadata::operator != ( const Metadata other) const

不相等操作符。

参数
[in]other另一个元数据对象。此函数将检查当前对象是否与此对象不相等。
返回
true 表示不相等,false 表示相等。

◆ operator=()

Metadata& foxit::pdf::Metadata::operator= ( const Metadata other)

赋值操作符。

参数
[in]other另一个元数据对象,其值将被赋给当前对象。
返回
当前对象本身的引用。

◆ operator==()

bool foxit::pdf::Metadata::operator== ( const Metadata other) const

相等操作符。

参数
[in]other另一个元数据对象。此函数将检查当前对象是否与此对象相等。
返回
true 表示相等,false 表示不相等。

◆ RemoveCustomerKey()

void foxit::pdf::Metadata::RemoveCustomerKey ( const wchar_t *  key)

删除指定的客户键(连同相关值)。

参数
[in]key客户键字符串。它不应该是空字符串。 这应该是从函数 Metadata::GetCustomerKeys 检索到的键之一。
返回
无。

◆ SetCreationDateTime()

void foxit::pdf::Metadata::SetCreationDateTime ( const DateTime date_time)

设置创建日期时间。

参数
[in]date_time新的创建日期时间。请参考类 foxit::DateTime 的注释来检查 每个成员的有效范围。
返回
无。

◆ SetModifiedDateTime()

void foxit::pdf::Metadata::SetModifiedDateTime ( const DateTime date_time)

设置修改日期时间。

参数
[in]date_time新的修改日期时间。请参考类 foxit::DateTime 的注释来检查 每个成员的有效范围。
返回
无。

◆ SetValues()

bool foxit::pdf::Metadata::SetValues ( const wchar_t *  key,
const WStringArray value_array 
)

设置元数据值(多个)。

此函数用于为指定的元数据键设置单个或多个值:

  • 对于元数据键"Author"和"Keywords",它们可以包含单个或多个值。
  • 对于元数据键"pdfaid",它表示PDFA文件版本,其值字符串的长度 总是2,例如"2a"、"1a"等。因此,只会使用参数valueArray中 第一个元素的前两个字符。
  • 对于其余预定义的键,它们不支持多个值。因此参数value_array中的 所有元素将被放入一个字符串中,并用";"连接。 然后此字符串将被视为单个值。
参数
[in]key元数据键字符串。它不应该是空字符串。 目前它可以是以下键之一:
"Title", "Author", "Subject", "Keywords", "Creator", "Producer", "Trapped", "CreationDate", "ModDate", "pdfaid", "InstanceID", "DocumentID"。
如果PDF文件支持,它也可以是其他自定义信息键。
对于"CreationDate"和"ModDate",建议用户使用 Metadata::SetCreationDateTimeMetadata::SetModifiedDateTime 来设置日期信息。
[in]value_array元数据值的字符串数组。
返回
无。