Использование PDF в качестве механизма ввода данных
Я работал над преобразованием PDF в HTML, но у клиента его не было. Итак, поехали. Мне нужен способ указать встроенную PDF-форму для отправки POST на URL. Что-то или другое, как:
<!-- Inlined PDF -->
<object type="application/pdf" data="http://xxxxxxx" id="pdf_form">
</object>
<!-- Button I add to the page to do a form submit -->
<input type="button" onclick="javascript: DoSubmit();">
<script type="text/javascript">
// Do a POST with the form data here. Either getting the data out of the pdf
// or using ACROBAT's FDF export & http submit to handle this
function DoSubmit() {
// Get 'pdf_form' and tell it to post it's data to a url
}
</script>
Мне нужно, чтобы это работало таким образом, чтобы клиенту не нужно было добавлять кнопку отправки в PDF всякий раз, когда он хочет добавить новую форму. Я пытаюсь сделать систему достаточно гибкой для добавления этих форм; потому что их много.
Лучше всего, если мне не нужно изменять PDF-файлы вручную, чтобы это работало.
Есть также панель инструментов, которая включает кнопку сохранения. Также важно удалить эту кнопку сохранения или сделать так, чтобы кнопка сохранения выполняла отправку формы, а не сохранение файла PDF.
1 ответ
У меня хорошие новости и плохие новости.
Давайте начнем с хороших новостей, так как их меньше: вы можете использовать JavaScript в PDF так же, как вы можете использовать JavaScript в HTML.
Плохие новости:
- вам нужно адаптировать свой PDF, чтобы установить связь между JavaScript в PDF и JavaScript в HTML. Взгляните на отрывок из моей книги, чтобы узнать, как это сделать. Из HTML вы можете вызвать метод
postMessage()
, но это сообщение будет понято только в PDF, если PDF содержитMessageHandler
, - Это известная проблема, которая не работает на всех ОС (в прошлый раз, когда я проверял, она не работала на MacOS).
- Adobe Reader показывает панель инструментов, которая позволяет людям сохранять PDF. Нет способа удалить эту панель инструментов. Я уже ответил на этот вопрос о stackru: можно ли скрыть плавающую панель инструментов Adobe при отображении PDF в браузере? Обратите внимание, что другой ответ относится к "Открытым параметрам". Насколько я знаю, эти параметры могут сделать верхнюю панель инструментов в плагине видимой / невидимой, но они не влияют на "плавающую панель инструментов".