2014-02-04 1 views
6

Итак, вот что, у нас есть куча форм PDF для пользователей на нашем веб-сайте, чтобы заполнить их, у нас есть кнопка отправки в каждой форме PDF, которая отправляет заполненные данные через метод http post. Мы уже заполняем предварительно заполненную форму, где пользователь заполняет общую информацию о форме html, данные, которые используются для создания частично заполненных нескольких файлов PDF, поэтому независимо от того, какая форма PDF, которую пользователь выбрал для заполнения, все они будут быть регенерированным с предварительно заполненной информацией, которую он только что напечатал в форме html. Я делаю это, используя pdftk (http://www.pdflabs.com/docs/pdftk-man-page/), который позволяет мне просто сделать это. Но мы доходим до того, чтобы сделать это более эффективным, пользователь должен иметь возможность нарисовать свою подпись на стороне html на этапе предварительно заполненной формы, поэтому мы используем подписи для этого (http://thomasjbradley.ca/lab/signature-pad/), чем мы создайте изображение с холста, создаваемого плагином. Но так как каждый PDF имеет свою собственную позицию для подписи, мы должны вставить заполнитель в PDF, который будет заменен для изображения подписи. Поэтому я придумал идею создания отключенного текстового поля в формате pdf с именем «подпись», поэтому через приложение nodejs с модулем pdf2json (https://github.com/modesty/pdf2json) я могу разобрать форму pdf и получить позицию (x, y , w, h) этого конкретного поля, будучи способным прикрепить изображение к заполнителю текстового поля. Так что проблема в том, что pdftk не поддерживает поддержку прикрепления изображения к существующему PDF-файлу или даже прикрепляет его в определенной позиции, я попытался найти модуль nodejs, который позволит мне это сделать, но единственное, что заслуживает nodejs модуль, который я нашел, был pdfkit (http://pdfkit.org/), но он работает только при создании нового pdf, не редактируя выходящего, я посмотрел в pdfkit исходный код, и я отбросил его, потому что понимаю, что он не будет работать на мой случай существующего pdf. Итак, я добрался до конца, добрался до финальной стадии этой реализации, пришел к последнему шагу, чтобы получить эту работу, и я просто стек.Прикрепите изображение к существующему PDF-файлу в нужном месте

Это результат, который у меня есть из модуля pdf2json для nodejs, который помогает при подстановке подстановки.

{ 
    page: 7, 
    index: 317, 
    name: 'signature', 
    type: 'alpha', 
    x: 43.806640625, 
    y: 14.64195833333333, 
    w: 30.546828125000005, 
    h: 1.9339166666666756 
} 

Если кто-то знает любой сервер приложений, который я мог бы запустить через команду Unix на моем сервере, чтобы прикрепить изображение поверх существующего PDF-документ, он будет соответствовать моим потребностям, не нужно быть исключительно nodejs модуль.

Обьявление: Я уже проверил его продукт adobe echosign, но он не соответствует нашим потребностям, он не является бесплатным и не решает нашу проблему с прикреплением подписи к нескольким файлам PDF из одной формы html.

ответ

7

Я понимаю, что могу использовать модуль nodejs pdfkit для создания нового чистого PDF-файла с подписями в правильной позиции и только над двумя pdf-файлами, имеющими пустой pdf-файл с изображением подписи сверху, как штамп. Я мог бы сделать это с помощью Pdftk командной строки:

pdftk form.pdf stamp signature.pdf output form-signed.pdf 

Там другой бесплатный инструмент приложения, как Pdftk, что я только что узнал, и это pdfjam. Кроме того, если вы не можете использовать модуль nodejs pdfkit (отличный от приложения pdfkt), чтобы создать новый pdf-файл с изображением в нужном месте, у вас есть инструмент stampTK (http://www.pdflabs.com/tools/stamptk-the-pdf-stamp-maker/), где вы можете проанализировать через командную строку изображение штамп в существующем формате pdf, но этот инструмент оплачивается (не так много, и его стоит), но поскольку у меня есть модуль pdfkit для nodejs, который позволяет мне делать только это вместе с файлом pdfkt, я использую это, и я также имею больше контроля над несколькими сигнатурами в модуле pdfkit для nodejs. Надеюсь, этот ответ поможет кому-то.

+0

Спасибо человеку. Определенно ваш ответ указал мне в правильном направлении. –