2015-02-01 7 views
1

Я успешно создал 3 формы форм Breezing Forms на сайте Joomla и хотел бы знать, как наилучшим образом использовать данные формы, сохраненные в базе данных, для заполнения формы PDF, а затем отправляется по электронной почте на конкретный адрес в качестве последнего шага, когда форма заполняется пользователем. Я знаю, что с помощью Breezing Forms вы можете экспортировать данные формы в PDF, но мои формы слишком сложны в макете для формата этого типа экспорта. Мне нужны данные формы для заполнения форматированной формы PDF.Использование форм Breezing Forms формирует данные для заполнения формы PDF

Вот пример одной из форм и PDF он должен заполнить: Форма: http://www.nutriworkscnc.com/Development/index.php?option=com_breezingforms&view=form&Itemid=640 PDF: http://www.nutriworkscnc.com/Development/images/forms/history.pdf

ответ

0

Вы по существу есть два способа, чтобы заполнить форму PDF: на стороне клиента и на стороне сервера ,

Для заполнения на стороне клиента вы должны создать файл FDF с ключом/F, указывающим на базовый PDF (некоторые люди будут называть это файлом шаблона). Затем вы отправите FDF пользователю, и опытный читатель в формате PDF будет загружать базовый PDF-файл и заполнять его.

Если вам нужно обслуживать немых читателей PDF, вам придется полагаться на заполнение на стороне сервера. Для этого существуют приложения, такие как FDFMerge от Appligent или библиотеки, такие как iText. Затем вам нужно будет подготовить данные соответствующим образом для вашего инструмента заполнения на стороне сервера.

0

Если вы хотите решить это, используя PHP, вы можете взглянуть на SetaPDF-FormFiller component (не бесплатно!). С его помощью вы можете заполнить поля через очень простой интерфейс:

// Create an http writer 
$writer = new SetaPDF_Core_Writer_Http("filled.pdf"); 
// Load document by filename 
$document = SetaPDF_Core_Document::loadByFilename("history.pdf", $writer); 

// Initiate a form filler instance 
$formFiller = new SetaPDF_FormFiller($document); 
// Get the fields instance 
$fields = $formFiller->getFields(); 

// fill in the fields 
$fields["Client Name"]->setValue("Test Person"); 
$fields["Address street"]->setValue("Teststreet 1"); 
$fields["Address city zip"]->setValue(12345); 
$fields["diabetes"]->setValue(true); 
$fields["diar"]->setValue(true); 

// done 
$document->save()->finish();