Как я могу создать новые файлы PDF на основе шаблона, где будет заменен какой-то текст? - PullRequest
1 голос
/ 21 мая 2010

Я разрабатываю приложение CMS в ASP .Net с использованием WebForms и ищу способ создания новых файлов PDF на основе шаблона.

Эта функция будет использоваться для создания контрактов, в которых некоторые заполнители будут заменены данными клиента.

Какой лучший способ сделать это?

Отредактировано: шаблоны будут статичными, основное содержимое никогда не изменится от клиента к клиенту, только некоторый текст в начале, который будет содержать заполнители для получения данных клиента. Суть в том, что я должен разрешить владельцу приложения загружать новые шаблоны в PDF с заранее определенными заполнителями, чтобы обеспечить возможность замены.

Ответы [ 3 ]

0 голосов
/ 02 ноября 2010

Я бы пошел со статическими шаблонами HTML, содержащими токены замещения, например {FullName}, который вы можете заменить своими данными. После того, как вы создали такой HTML-файл, например, в StringBuilder, вы можете использовать PrinceXML или ABCPdf.net (www.websupergoo.com) для преобразования вашего HTML-файла в PDF.

0 голосов
/ 02 ноября 2010

Я надеюсь, что правильно понимаю, но не буду использовать стандартные поля форм PDF, чтобы предоставить вам необходимые функции и возможности. Загрузите шаблон PDF в Adobe Acrobat Full или Foxit Phantom и определите стандартные поля формы PDF поверх PDF. Каждое поле имеет имя, должность, шрифт и т. Д.

Затем просто используйте стандартную библиотеку PDF, чтобы заполнить поля формы PDF и «сгладить» поля формы, если это требуется.

Это решение позволяет заказчику создавать новые макеты PDF, и если они определяют поля формы с совпадающими именами, вы сможете добавить в форму замены простую копию файла.

Библиотека iText или iTextSharp должна быть в состоянии сделать все это довольно легко. Если нет, то есть много PDF-библиотек, которые могут это сделать.

0 голосов
/ 21 мая 2010

Я могу придумать два подхода в зависимости от того, какой тип шаблона вы просматриваете:

1) Статический шаблон - скажем, шаблон не изменяется с данными (например, стандартная форма соответствия и т. Д.) Вы можете попробовать что-то вроде iTextSharp , где ваши шаблоны определены в вашем коде .net, и вы просто «подключаете» соответствующие данные и визуализируете PDF через iTextSharp.

2) Динамические шаблоны - допустим, ваш шаблон не является стандартным и настраивается пользователем. В этом случае, я бы сказал, пойти на HTML для проектирования и «распечатать» для PDF. Есть много доступных компонентов.

Вы также можете попробовать такие компоненты, как отчеты Crystal.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...