Foxit PDF SDK
FSXFADoc类 参考
类 FSXFADoc 继承关系图:
FSBase

构造函数

(BOOL) - exportData:export_type:
 将数据导出到文件。
更多...
 
(BOOL) - exportDataWithStreamCallback:export_type:
 将数据导出到 FSFileWriterCallback 对象。
更多...
 
(void) - flattenTo:
 将当前 XFA 文档扁平化到文件。
更多...
 
(void) - flattenToWithStreamCallback:
 将当前 XFA 文档扁平化到文件流。
更多...
 
(FSXFAPage *) - getPage:
 按索引获取 XFA 页面。
更多...
 
(int) - getPageCount
 获取 XFA 页面数量。
更多...
 
(FSXFADocType- getType
 获取 XFA 文档类型。
更多...
 
(FSXFAWidget *) - getWidgetByFullName:
 获取与指定全名匹配的 XFA 控件。
更多...
 
(BOOL) - importData:
 从 XML 或 XDP 文件导入数据。
更多...
 
(BOOL) - importDataWithReaderCallback:
 FSFileReaderCallback 对象导入数据。
更多...
 
(id) - initWithDocument:
 构造函数。
更多...
 
(id) - initWithDocument:xfa_doc_provider_handler:
 构造函数。
更多...
 
(id) - initWithOther:
 构造函数,使用另一个 XFA 文档对象。
更多...
 
(BOOL) - isEmpty
 检查当前对象是否为空。
更多...
 
(void) - killFocus
 取消 XFA 控件的焦点。
更多...
 
(void) - processEvent:
 为当前 XFA 文档中的所有 XFA 控件处理某种事件。
更多...
 
(void) - resetForm
 重置表单。
更多...
 
(void) - setDocProviderCallback:
 设置 XFA 文档提供程序回调。
更多...
 
(void) - setFocus:
 设置 XFA 控件的焦点。
更多...
 
(void) - setPDFPath:
 设置相关 PDF 文档的路径。
更多...
 
(FSProgressive *) - startLoad:
 开始为当前 XFA 文档加载内容。
更多...
 

详细描述

FSXFADoc 从已加载的 PDF 文档对象构造,以便更清晰地访问 XFA 内容。 用户必须在使用 XFA 模块之前调用 FSLibrary::registerXFAAppProviderCallback:。 对于新构造的 XFA 对象,请记住在使用 XFA 类中的其他函数之前调用函数 FSXFADoc::startLoad:
要在 XFA 文档中搜索,请使用 FSXFADoc 对象构造 FSTextSearch 对象。

参见
FSTextSearch

函数文档

◆ exportData:export_type:()

- (bool) exportData: (NSString *)  output_file_path
export_type: (FSXFADocExportDataType export_type 

将数据导出到文件。

参数
[in]output_file_path数据将导出到的文件路径。
[in]export_type导出类型。请参考从 FSXFADocExportDataTypeXML 开始的值,这应该是这些值之一。
返回
YES 表示成功,NO 表示失败。

◆ exportDataWithStreamCallback:export_type:()

- (BOOL) exportDataWithStreamCallback: (id<FSFileWriterCallback>)  stream
export_type: (FSXFADocExportDataType export_type 

将数据导出到 FSFileWriterCallback 对象。

参数
[in]stream由用户实现的 foxit::common::file::WriterCallback 对象,用于保存导出的数据。
[in]export_type导出类型。请参考从 FSXFADocExportDataTypeXML 开始的值,这应该是这些值之一。
返回
YES 表示成功,NO 表示失败。

◆ flattenTo:()

- (void) flattenTo: (NSString *)  output_file_path

将当前 XFA 文档扁平化到文件。

参数
[in]output_file_path扁平化结果将保存到的文件路径。
返回
无。

◆ flattenToWithStreamCallback:()

- (void) flattenToWithStreamCallback: (id<FSFileStreamCallback>)  stream

将当前 XFA 文档扁平化到文件流。

参数
[in]stream用户实现的 FSFileStreamCallback 对象,用于保存扁平化结果。
返回
无。

◆ getPage:()

- (FSXFAPage *) getPage: (int)  page_index

按索引获取 XFA 页面。

参数
[in]page_index页面索引。有效范围:从 0 到 (count-1)。 count 由函数 FSXFADoc::getPageCount 返回。
返回
XFA 页面。

◆ getPageCount()

- (int) getPageCount

获取 XFA 页面数量。

返回
页面数量。

◆ getType()

- (FSXFADocType) getType

获取 XFA 文档类型。

返回
XFA 文档的类型。请参考从 FSXFADocDynamic 开始的值, 这将是这些值之一。

◆ getWidgetByFullName:()

- (FSXFAWidget *) getWidgetByFullName: (NSString *)  full_name

获取与指定全名匹配的 XFA 控件。

某些 XFA 控件可能跨越多个 XFA 页面。在这种情况下,此函数只能用于 获取 XFA 文档中第一个匹配的 XFA 控件。用户也可以使用函数 FSXFAPage::getWidgetByFullName: 来获取 XFA 页面中匹配的 XFA 控件。

参数
[in]full_nameXFA 控件的全名。它不应该是空字符串。 XFA 控件的全名可以通过函数 FSXFAWidget::getName: 使用类型 FSXFAWidgetWidgetNameTypeFullName 在之前的过程中检索。
返回
XFA 控件对象。

◆ importData:()

- (BOOL) importData: (NSString *)  file_path

从 XML 或 XDP 文件导入数据。

参数
[in]file_path源文件的路径,其数据将导入到当前 XFA 文档。 它应该是 XML 或 XDP 文件,文件扩展名应该是".xml"或".xdp"。
返回
YES 表示成功,NO 表示失败。

◆ importDataWithReaderCallback:()

- (BOOL) importDataWithReaderCallback: (id<FSFileReaderCallback>)  file_reader

FSFileReaderCallback 对象导入数据。

参数
[in]file_readerFSFileReaderCallback 对象,其数据将导入到当前 XFA 文档。 它应该是 XML 或 XDP 文件。
返回
YES 表示成功,NO 表示失败。

◆ initWithDocument:()

- (id) initWithDocument: (FSPDFDoc*)  document

构造函数。

当通过此构造函数成功构造 XFADoc 时,用户必须通过函数 FSXFADoc::setDocProviderCallback: 设置 XFA 文档提供程序回调。

参数
[in]documentA valid PDF document. It should has been loaded successfully.
注解
如果在函数 FSLibrary::initialize:key: 中使用的许可信息中未定义模块"XFA", 这意味着用户无权使用 XFA 相关函数,此构造函数将抛出异常 FSErrNoXFAModuleRight

◆ initWithDocument:xfa_doc_provider_handler:()

- (id) initWithDocument: (FSPDFDoc*)  document
xfa_doc_provider_handler: (id<FSDocProviderCallback>)  xfa_doc_provider_handler 

构造函数。

参数
[in]document有效的 PDF 文档。它应该已经成功加载。
[in]xfa_doc_provider_handler由用户实现的 XFA 文档提供程序回调对象, 基于回调类 。它不应该为 nil。用户应确保此回调对象在 相关 PDF 文档释放之前保持有效。
注解
如果在函数 FSLibrary::initialize:key: 中使用的许可信息中未定义模块"XFA", 这意味着用户无权使用 XFA 相关函数,此构造函数将抛出异常 FSErrNoXFAModuleRight

◆ initWithOther:()

- (id) initWithOther: (FSXFADoc*)  other

构造函数,使用另一个 XFA 文档对象。

参数
[in]other另一个 XFA 文档对象。

◆ isEmpty()

- (BOOL) isEmpty

检查当前对象是否为空。

当前对象为空时,表示当前对象无用。

返回
YES 表示当前对象为空,NO 表示不为空。

◆ killFocus()

- (void) killFocus

取消 XFA 控件的焦点。

返回
无。

◆ processEvent:()

- (void) processEvent: (FSXFADocEventType event_type

为当前 XFA 文档中的所有 XFA 控件处理某种事件。

参数
[in]event_type事件类型。请参考从 FSXFADocEventTypePostPrint 开始的值,这应该是这些值之一,除了 FSXFADocEventTypeUnknown
返回
无。

◆ resetForm()

- (void) resetForm

重置表单。

返回
无。

◆ setDocProviderCallback:()

- (void) setDocProviderCallback: (id<FSDocProviderCallback>)  doc_provider_callback

设置 XFA 文档提供程序回调。

参数
[in]doc_provider_callback由用户实现并基于回调类 的 XFA 文档提供程序回调对象。 它不应该为 nil。用户应确保此回调对象在相关 PDF 文档释放之前保持有效。
返回
无。

◆ setFocus:()

- (void) setFocus: (FSXFAWidget*)  xfa_widget

设置 XFA 控件的焦点。

参数
[in]xfa_widget将获得焦点的 XFA 控件。
返回
无。

◆ setPDFPath:()

- (void) setPDFPath: (NSString *)  pdf_file_path

设置相关 PDF 文档的路径。

PDF 路径将在函数 FSXFADoc::exportData:export_type: 中使用,作为导出数据的一部分。

参数
[in]pdf_file_path相关 PDF 文档的文件路径。它可以是绝对路径或 相对路径。不应该是空字符串。
返回
无。

◆ startLoad:()

- (FSProgressive *) startLoad: (id<FSPauseCallback>)  pause

开始为当前 XFA 文档加载内容。

加载 XFA 内容可能需要很长时间,因此此函数使用渐进过程来 执行此操作。
相关的 PDF 文档对象已加载,但只加载了 PDF 相关内容。 因此,为了访问 XFA 内容,应调用此函数来加载 XFA 内容。

参数
[in]pause暂停对象,决定导入过程是否需要暂停。 这可以是 nil,表示在解析过程中不暂停。 如果不是 nil,它应该是用户实现的有效暂停对象。 默认值:nil
返回
渐进对象。请通过函数 FSProgressive::getRateOfProgress 检查当前进度的比率。 如果比率还不是 100,请调用函数 FSProgressive::resume 继续进度,直到进度完成。