Foxit PDF SDK

Public 成员函数 | 静态 Public 成员函数 | 静态 Public 属性 | 所有成员列表
FSDK::PDFStream类 参考
类 FSDK::PDFStream 继承关系图:

## Public 成员函数
| ExportData (is_raw_data)
| 导出流数据。 更多...
| GetData (is_raw_data, size, out_buffer)
| 获取流数据。 更多...
| GetDataSize (is_raw_data)
| 获取流数据的大小，以字节为单位。 更多...
| GetDictionary ()
| 获取与当前PDF流对象关联的PDF字典对象。 更多...
| GetStreamFilter ()
| 获取流过滤器类型，该类型指示在使用数据之前如何解码流数据。 更多...
| ImportData (file_read, stream_filter)
| 导入流数据。 更多...
| SetData (buffer, size)
| 设置流数据。 更多...
Public 成员函数 继承自 FSDK::PDFObject
| CloneObject ()
| 克隆当前PDF对象并获取克隆的PDF对象。 更多...
| DeepCloneObject ()
| 克隆当前PDF对象并获取克隆的PDF对象。 更多...
| GetArray ()
| 获取当前PDF对象的PDF数组对象。 更多...
| GetBoolean ()
| 获取当前PDF对象的布尔值。 更多...
| GetDateTime ()
| 获取当前PDF对象的日期时间值。 更多...
| GetDict ()
| 获取当前PDF对象的PDF字典对象。 更多...
| GetDirectObject ()
| 获取当前PDF对象的直接对象。 更多...
| GetFloat ()
| 获取当前PDF对象的浮点值。 更多...
| GetInteger ()
| 获取当前PDF对象的整数值。 更多...
| GetMatrix ()
| 获取当前PDF对象的矩阵值。 更多...
| GetName ()
| 获取当前PDF对象的名称值。 更多...
| GetObjNum ()
| 获取当前PDF对象的间接对象编号。 更多...
| GetRect ()
| 获取当前PDF对象的矩形值。 更多...
| GetStream ()
| 获取当前PDF对象的PDF流对象。 更多...
| GetString ()
| 获取当前PDF对象的字符串值。 更多...
| GetType ()
| 获取当前PDF对象的类型。 更多...
| GetWideString ()
| 获取当前PDF对象的宽字符串值。 更多...
| IsIdentical (pdf_obj)
| 检查输入的PDF对象是否与当前PDF对象相同。 更多...
| Release ()
| 释放新创建的PDF对象或克隆的PDF对象， 该对象与 PDF文档或其他PDF对象无关，且将不再使用。 更多...

## 静态 Public 成员函数
static | Create (dictionary)
| 基于字典创建新的流对象。 更多...
静态 Public 成员函数 继承自 FSDK::PDFObject
static | CreateFromBoolean (boolean_value)
| 从布尔值创建PDF对象。 更多...
static | CreateFromDateTime (date_time)
| 从日期时间创建PDF对象。 更多...
static | CreateFromFloat (float_value)
| 从浮点数创建PDF对象。 更多...
static | CreateFromInteger (integer_value)
| 从整数创建PDF对象。 更多...
static | CreateFromName (name)
| 从表示名称的字符串创建PDF对象。 更多...
static | CreateFromNameW (name)
| 从表示名称的字符串创建PDF对象。 更多...
static | CreateFromString (string_value)
| 从字符串创建PDF对象。 更多...
static | CreateFromString (string_value, length)
| 从字符串创建PDF对象。 更多...
static | CreateReference (document, object_number)
| 为间接对象创建引用。 更多...

## 静态 Public 属性
static | e_ASCII85Decode
| 过滤器类型：ASCII85Decode，表示解码以ASCII base-85表示编码的数据， 还原原始二进制数据。
static | e_ASCIIHexDecode
| 过滤器类型：ASCIIHexDecode，表示解码以ASCII十六进制表示编码的数据， 还原原始二进制数据。
static | e_CCITTFaxDecode
| 过滤器类型：CCITTFaxDecode，表示使用CCITT传真标准编码的数据进行解压缩， 还原原始数据（通常是每像素1位的单色图像数据）。
static | e_Crypt
| 过滤器类型：Crypt，表示解密由安全处理程序加密的数据， 还原加密前的原始数据。
static | e_DCTDecode
| 过滤器类型：DCTDecode，表示使用基于JPEG标准的DCT（离散余弦变换）技术编码的数据进行解压缩， 还原近似原始数据的图像采样数据。
static | e_FlateDecode
| 过滤器类型：FlateDecode，表示使用zlib/deflate压缩方法编码的数据进行解压缩， 还原原始文本或二进制数据。
static | e_JBIG2Decode
| 过滤器类型：JBIG2Decode，表示使用JBIG2标准编码的数据进行解压缩， 还原原始单色（每像素1位）图像数据（或该数据的近似值）。
static | e_JPXDecode
| 过滤器类型：JPXDecode，表示使用基于小波的JPEG2000标准编码的数据进行解压缩， 还原原始图像数据。
static | e_LZWDecode
| 过滤器类型：LZWDecode，表示使用LZW（Lempel-Ziv-Welch）自适应压缩方法编码的数据进行解压缩， 还原原始文本或二进制数据。
static | e_NoneDecode
| 无需解码流数据。
static | e_RunLengthDecode
| 过滤器类型：RunLengthDecode，表示使用面向字节的行程长度编码算法编码的数据进行解压缩， 还原原始文本或二进制数据（通常是单色图像数据，或包含频繁出现的单个字节值长段的任何数据）。
static | e_Unknown
| 流过滤器类型的枚举。 更多...
静态 Public 属性 继承自 FSDK::PDFObject
static | e_Array
| PDF数组对象。
static | e_Boolean
| PDF布尔对象。
static | e_Dictionary
| PDF字典对象。
static | e_InvalidType
| PDF对象类型的枚举。 更多...
static | e_Name
| PDF名称对象。
static | e_Null
| PDF空对象。
static | e_Number
| PDF数字对象。
static | e_Reference
| PDF引用对象。
static | e_Stream
| PDF流对象。
static | e_String
| PDF字符串对象。

## 详细描述

PDF流对象由直接字典对象和流数据组成。 有关更多详细信息，请参阅<PDF Reference 1.7>中的第3.2.7节"Stream Objects"。
类 FSDK.PDFStream 派生自 FSDK.PDFObject，并提供函数来创建新的PDF流对象并 获取/设置流数据。

参见
  FSDK.PDFObject

## 成员函数说明

## ◆ Create()

static FSDK::PDFStream::Create | ( | dictionary |  | ) |
| static

基于字典创建新的流对象。

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

参数

  [in] | dictionary | PDF字典对象： 如果为 null，将基于空PDF字典创建PDF流对象。 如果不为 null，成功创建PDF流对象后， 不要为此PDF字典对象调用 FSDK.PDFObject.Release。

返回
  新的 FSDK.PDFStream 对象。如果有任何错误，此函数将返回 null。

## ◆ ExportData()

FSDK::PDFStream::ExportData | ( | is_raw_data |  | ) |

导出流数据。

此函数提供了一种获取流数据的高效方式，特别适用于大型流数据。

参数

  [in] | is_raw_data | 布尔值，指示是否获取原始数据： true 表示获取原始数据，false 表示 获取解码数据（原始数据）。

返回
  可用于读取流数据的 FSDK.FileReaderCallback 对象。 请记住，当不再使用时，使用返回的 FSDK.FileReaderCallback 对象的回调函数 Relase() 来 释放此 FSDK.FileReaderCallback 对象。

注解
  如果当前流对象被释放或相关PDF文档被关闭， 不要再使用返回的 FSDK.FileReaderCallback 对象；否则，将发生意外错误或崩溃。

## ◆ GetData()

FSDK::PDFStream::GetData | ( | is_raw_data | ,
|  | size | ,
|  | out_buffer |
| ) |  |

获取流数据。

调用此函数时，用户应传递具有足够大小的内存块来检索数据。 建议用户先调用函数 FSDK.PDFStream.GetDataSize（使用相同的参数 is_raw_data）来获取预期大小，然后准备内存块，然后 调用此函数来获取数据。

参数

  [in] | is_raw_data | 布尔值，指示是否获取原始数据： true 表示获取原始数据，false 表示 获取解码数据（原始数据）。
  [in] | size | 参数 out_buffer 的大小，以字节为单位。 它应等于或大于实际数据大小。
  [out] | out_buffer | 用作输出参数的内存块（具有足够大小），用于接收流数据。 它不应为 null。

返回
  true 表示成功，而 false 表示失败。

## ◆ GetDataSize()

FSDK::PDFStream::GetDataSize | ( | is_raw_data |  | ) |

获取流数据的大小，以字节为单位。

参数

  [in] | is_raw_data | 布尔值，指示是否获取原始数据： true 表示获取原始数据，false 表示 获取解码数据（原始数据）。

返回
  数据大小，以字节为单位。

## ◆ GetDictionary()

FSDK::PDFStream::GetDictionary | ( |  | ) |

获取与当前PDF流对象关联的PDF字典对象。

返回
  流字典。 如果有任何错误，此函数将返回 null。

## ◆ GetStreamFilter()

FSDK::PDFStream::GetStreamFilter | ( |  | ) |

获取流过滤器类型，该类型指示在使用数据之前如何解码流数据。

返回
  流过滤器类型。请参考从 FSDK.PDFStream.e_Unknown 开始的值， 这将是这些值之一。

## ◆ ImportData()

FSDK::PDFStream::ImportData | ( | file_read | ,
|  | stream_filter |
| ) |  |

导入流数据。

参数

  [in] | file_read | 用户实现的 FSDK.FileReaderCallback 对象。Foxit PDF SDK将使用它来 读取流数据并设置到当前PDF流对象。用户应保持 此回调有效，直到相关PDF文档关闭或当前流对象 因为无用而被释放。
  [in] | stream_filter | 流过滤器类型，指定如何解码通过参数 file_read 读取的数据。 请参考从 FSDK.PDFStream.e_NoneDecode 开始的值， 这应该是这些值之一，但不包括 FSDK.PDFStream.e_Unknown。

返回
  None.

## ◆ SetData()

FSDK::PDFStream::SetData | ( | buffer | ,
|  | size |
| ) |  |

设置流数据。

参数

  [in] | buffer | 表示要设置的新流数据的内存块。
  [in] | size | 参数 buffer 的大小，以字节为单位。

返回
  None.

## 类成员变量说明

## ◆ e_Unknown

FSDK::PDFStream::e_Unknown
| static

流过滤器类型的枚举。

此枚举的值应单独使用。 流过滤器指示在使用数据之前必须如何解码PDF流中的数据。

未知的过滤器类型。