Foxit PDF SDK

Public 成员函数 | 所有成员列表
foxit::pdf::Metadata类 参考
类 foxit::pdf::Metadata 继承关系图:

## Public 成员函数
| Metadata (const Metadata &other)
| 构造函数，使用另一个元数据对象构造。 更多...
| Metadata (const PDFDoc &document)
| 构造函数，从PDF文档对象构造。 更多...
| ~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
| 不相等操作符。 更多...
Metadata & | operator= (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::GetCreationDateTime 和 Metadata::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::SetCreationDateTime 和 Metadata::SetModifiedDateTime 来设置日期信息。
  [in] | value_array | 元数据值的字符串数组。

返回
  无。