Skip to content

导入和导出

导入和导出 XFDF 表单的方法使用户能够保存和还原PDF文档表单数据,方便填写表单数据。

导入表单

导入表单的代码如下:

使用CPDFReaderWidget

dart
CPDFReaderWidgetController? _controller;
// 初始化 CPDFReaderWidget,并在 onCreated 回调中获取 controller
CPDFReaderWidget(
  document: documentPath,
  configuration: CPDFConfiguration(),
  onCreated: (controller) {
    setState(() {
      this._controller = controller;
    });
  },
)
  
bool importResult = await _controller.document.importWidgets('data/your_package_name/files/xxx.xfdf');
// or use Uri on the Android Platform.
const xfdfFile = 'content://media/external/file/1000045118';
const importResult = await _controller.document.importWidgets(xfdfFile);

使用CPDFDocument

dart
// 创建并打开文档
CPDFDocument document = await CPDFDocument.createInstance();
var error = await document.open(pdfFilePath);
if (error == CPDFDocumentError.success) {
  bool importResult = await document.importWidgets('data/your_package_name/files/xxx.xfdf');
  // or use Uri on the Android Platform.
  const xfdfFile = 'content://media/external/file/1000045118';
  const importResult = await document.importWidgets(xfdfFile);
}

导出表单

导出表单的代码如下:

使用CPDFReaderWidget

dart
CPDFReaderWidgetController? _controller;
// 初始化 CPDFReaderWidget,并在 onCreated 回调中获取 controller
CPDFReaderWidget(
  document: documentPath,
  configuration: CPDFConfiguration(),
  onCreated: (controller) {
    setState(() {
      this._controller = controller;
    });
  },
)
  
const exportPath = await _controller.document.exportWidgets();

使用CPDFDocument

dart
// 创建并打开文档
CPDFDocument document = await CPDFDocument.createInstance();
var error = await document.open(pdfFilePath);
if (error == CPDFDocumentError.success) {
	const exportPath = await document.exportWidgets();
}

什么是XFDF

XFDF(XML Forms Data Format)是一种用于描述和传输 PDF 表单数据的XML格式。它通常与 PDF 文件一起使用,用于存储和传递表单字段的值、状态和操作。

XFDF 文件包含了对应 PDF 表单的数据,其中包括表单字段的名称、值、选项、格式等。

XFDF 是一种用于描述表单数据的格式,并不包含 PDF 文件本身。它用于存储和传输表单数据,以便在不同系统和应用程序之间进行交互和共享。