Foxit PDF SDK
fsdk.PDFStream Class Reference

Public Member Functions

def ExportData (is_raw_data)
 Export stream data.
More...
 
def GetData (is_raw_data, size, out_buffer)
 Get stream data.
More...
 
def GetDataSize (is_raw_data)
 Get the size of stream data, in bytes.
More...
 
def GetDictionary ()
 Get the PDF dictionary object associated to current PDF stream object.
More...
 
def GetStreamFilter ()
 Get the type of stream filter which indicate how the stream data must be decoded before the data is used.
More...
 
def ImportData (file_read, stream_filter)
 Import stream data.
More...
 
def SetData (buffer, size)
 Set stream data.
More...
 

Detailed Description

A PDF stream object consists of a direct dictionary object and stream data. For more details, please refer to Section 3.2.7 "Stream Objects" in <PDF Reference 1.7>.
Class fsdk.PDFStream is derived from PDFObject and offers functions to create a new PDF stream object and get/set stream data.

See also
PDFObject

Member Function Documentation

◆ ExportData()

def fsdk.PDFStream.ExportData (   is_raw_data)

Export stream data.

This function provides an efficient way to get the stream data, especially for large stream data.

Parameters
[in]is_raw_dataA boolean value that indicates whether to get raw data or not: true means to get raw data, and false means to get decoded data (original data).
Returns
A fsdk.FileReaderCallback object which can be used to read stream data. Please remeber to use callback function Relase() of the returned fsdk.FileReaderCallback object to release this fsdk.FileReaderCallback object when not use it any more.
Note
If current stream object is released or related PDF document is closed, do not use returned fsdk.FileReaderCallback object any more; otherwise, unexpected error or crash will occur.

◆ GetData()

def fsdk.PDFStream.GetData (   is_raw_data,
  size,
  out_buffer 
)

Get stream data.

When calling this function, user should pass a memory block with enough size to retrieve data. User is recommended to call function fsdk.PDFStream.GetDataSize (with same parameter is_raw_data) to get the expected size, then prepare the memory block, and then call this function to get data.

Parameters
[in]is_raw_dataA boolean value that indicates whether to get raw data or not: true means to get raw data, and false means to get decoded data (original data).
[in]sizeSize of parameter out_buffer, in bytes. It should be equal to or larger than the actual data size.
[out]out_bufferA memory block (with enough size) used as output parameter that receives the stream data. It should not be null.
Returns
true means success, while false means failed.

◆ GetDataSize()

def fsdk.PDFStream.GetDataSize (   is_raw_data)

Get the size of stream data, in bytes.

Parameters
[in]is_raw_dataA boolean value that indicates whether to get raw data or not: true means to get raw data, and false means to get decoded data (original data).
Returns
The data size, in bytes.

◆ GetDictionary()

def fsdk.PDFStream.GetDictionary ( )

Get the PDF dictionary object associated to current PDF stream object.

Returns
The stream dictionary. If there is any error, this function will return null.

◆ GetStreamFilter()

def fsdk.PDFStream.GetStreamFilter ( )

Get the type of stream filter which indicate how the stream data must be decoded before the data is used.

Returns
The type of stream filter. Please refer to values starting from fsdk.PDFStreamE_Unknown and this would be one of these values.

◆ ImportData()

def fsdk.PDFStream.ImportData (   file_read,
  stream_filter 
)

Import stream data.

Parameters
[in]file_readA fsdk.FileReaderCallback object implemented by user. Foxit PDF SDK will use this to read stream data and set to current PDF stream object. User should keep this callback valid until the related PDF document is closed or current stream object is released because of useless.
[in]stream_filterType of stream filter, which specifies how to decode the data which is read through parameter file_read. Please refer to values starting from fsdk.PDFStreamE_NoneDecode and this should be one of these values except fsdk.PDFStreamE_Unknown .
Returns
None.

◆ SetData()

def fsdk.PDFStream.SetData (   buffer,
  size 
)

Set stream data.

Parameters
[in]bufferA memory block that represents the new stream data to be set.
[in]sizeSize of parameter buffer, in bytes.
Returns
None.