Импорт и экспорт данных формы
Эта страница демонстрирует типовые рабочие процессы импорта и экспорта данных AcroForm с помощью Aspose.PDF for Python via .NET. Все операции используют Form фасад.
Импортировать данные полей формы из XML
Используйте этот подход для заполнения PDF-формы данными из внешнего XML.
- Создайте
Formобъект. - Привяжите входной PDF.
- Откройте XML‑файл данных.
- Импортируйте данные XML в форму.
- Сохраните обновлённый PDF.
from io import FileIO
import aspose.pdf as ap
def import_data_from_xml(input_file_name, data_file_name, output_file_name):
form = ap.facades.Form()
form.bind_pdf(input_file_name)
with FileIO(data_file_name, "r") as f:
form.import_xml(f)
form.save(output_file_name)
Экспортировать данные полей формы в XML
Этот метод экспортирует значения полей формы из PDF‑документа в XML.
- Создайте
Formобъект. - Привяжите входной PDF.
- Откройте файл вывода XML.
- Экспортируйте данные формы в XML.
from io import FileIO
import aspose.pdf as ap
def export_data_to_xml(input_file_name, output_file_name):
form = ap.facades.Form()
form.bind_pdf(input_file_name)
with FileIO(output_file_name, "w") as f:
form.export_xml(f)
Импортировать данные полей формы из FDF
Определённый import_data_from_fdf метод импортирует данные полей формы из файла FDF (Формат данных форм) в форму PDF.
- Создайте
Formобъект. - Привяжите входной PDF.
- Импортируйте данные формы с
import_fdf(). - Сохраните обновлённый PDF.
from io import FileIO
import aspose.pdf as ap
def import_data_from_fdf(input_file_name, data_file_name, output_file_name):
form = ap.facades.Form()
form.bind_pdf(input_file_name)
with FileIO(data_file_name, "r") as f:
form.import_fdf(f)
form.save(output_file_name)
Экспортировать данные полей формы в FDF
В этом примере данные формы экспортируются из PDF‑документа в файл FDF.
- Создайте
Formобъект. - Свяжите PDF‑документ.
- Экспортируйте данные формы с
export_fdf().
from io import FileIO
import aspose.pdf as ap
def export_data_to_fdf(input_file_name, output_file_name):
form = ap.facades.Form()
form.bind_pdf(input_file_name)
with FileIO(output_file_name, "w") as f:
form.export_fdf(f)
Импортировать данные полей формы из XFDF
Используйте этот метод для импорта данных полей формы из файла XFDF (XML Forms Data Format) в PDF-форму.
- Создайте
Formобъект. - Привяжите входной PDF.
- Импортируйте данные формы из файла XFDF.
- Сохраните обновлённый PDF.
from io import FileIO
import aspose.pdf as ap
def import_data_from_xfdf(input_file_name, data_file_name, output_file_name):
form = ap.facades.Form()
form.bind_pdf(input_file_name)
with FileIO(data_file_name, "r") as f:
form.import_xfdf(f)
form.save(output_file_name)
Экспортировать данные полей формы в XFDF
Этот код экспортирует данные полей формы из PDF‑документа в файл XFDF.
- Создайте
Formобъект. - Привяжите входной PDF.
- Экспортируйте данные формы в XFDF.
from io import FileIO
import aspose.pdf as ap
def export_data_to_xfdf(input_file_name, output_file_name):
form = ap.facades.Form()
form.bind_pdf(input_file_name)
with FileIO(output_file_name, "w") as f:
form.export_xfdf(f)
Импортировать данные из другого PDF
Этот пример переносит данные полей формы из исходного PDF в целевой PDF, экспортируя XFDF в поток в памяти и импортируя его в целевую форму.
- Создайте источник и назначение
Formобъекты. - Объедините исходный и целевой PDF.
- Экспортируйте данные формы из исходного PDF.
- Импортируйте данные формы в целевой PDF.
- Сохраните обновлённый PDF назначения.
from io import StringIO
import aspose.pdf as ap
def import_data_from_another_pdf(source_pdf_name, destination_pdf_name, output_file_name):
form_source = ap.facades.Form()
form_dest = ap.facades.Form()
form_source.bind_pdf(source_pdf_name)
form_dest.bind_pdf(destination_pdf_name)
with StringIO() as xfdf_stream:
form_source.export_xfdf(xfdf_stream)
xfdf_stream.seek(0)
form_dest.import_xfdf(xfdf_stream)
form_dest.save(output_file_name)
Извлечь поля формы в JSON
Этот метод экспортирует поля формы в JSON‑файл, используя export_json().
- Создайте
Formобъект. - Откройте файл вывода JSON.
- Экспортируйте поля формы с помощью
export_json().
from io import FileIO
import aspose.pdf as ap
def extract_form_fields_to_json(input_file_name, output_file_name):
form = ap.facades.Form(input_file_name)
with FileIO(output_file_name, "w") as json_file:
form.export_json(json_file, True)
Извлечь FormField в JSON Document
Этот пример создает пользовательский JSON‑документ из имён полей формы и их значений.
- Создайте объект Form из входного файла.
- Инициализируйте пустой словарь для хранения данных полей формы.
- Пройдите по всем полям формы и извлеките их значения.
- Сериализуйте словарь данных формы в строку JSON с отступом в 4 пробела.
- Запишите строку JSON в выходной файл с кодировкой UTF-8.
import json
import aspose.pdf as ap
def extract_form_fields_to_json_doc(input_file_name, output_file_name):
form = ap.facades.Form(input_file_name)
form_data = {}
for field_name in form.field_names:
form_data[field_name] = form.get_field(field_name)
json_string = json.dumps(form_data, indent=4)
with open(output_file_name, "w", encoding="utf-8") as json_file:
json_file.write(json_string)