Я бы использовал iTextSharp. Я создаю все виды PDF-файлов на основе разных шаблонов, и IText работал лучшее для меня. Это очень мощный контроль и может управлять файлами PDF практически в любом случае.
Я не уверен, что IText может справиться с вашим третьим требованием. Я знаю, что он может создать PDF из файла HTML. Может быть, используйте, какие томас опубликовали и создают PDF с помощью ITEXT.
Для этого есть различные коммерческие компоненты. Посмотрите на это: PDFLib (http://www.pdflib.com/), Tall Components (http://www.tallcomponents.com/) и т.д.
Я использую продукцию Tall components и могу рекомендовать их.
Некоторые другие намного дороже.
ITextSharp, как вы уже упоминали, довольно хорош и может быть использован для добавления/удаления внешних страниц, в этом можно скрыть полные страницы, опустив их или заменив на страницы-плацдармы. iText может использовать существующие PDF-файлы или создавать пустые страницы.
По своему личному опыту я просто пропускал изображения и текст на существующие страницы и добавлял страницы, генерируемые инструментом отчетности, когда требуются табличные данные.
HTH
Мы использовали http://www.dynamicpdf.com/, для подобных проектов и были довольны результатами. У них есть инструмент проектирования PDF WYSIWYG, который вы можете использовать для построения шаблона макета PDF, а также инструмент для слияния шаблона с вашими данными на основе сопоставления полей и колонок. Это экономит часы ручного кодирования каждого элемента данного PDF. Он поддерживает заголовки и колонтитулы страниц и справляется со сложностями разрывов страниц.
Почему нуждаются в файлах шаблона в формате PDF? С динамикой, который вы хотите, это плохой формат для отчетности шаблона. Используйте программное обеспечение для отчетности, которое также выводится в качестве PDF. Ваши дизайнеры могут создавать шаблоны очень легко с графическим интерфейсом. Здесь вы найдете множество репортажных решений здесь на StackoverFlow.
Я бы рассмотрел возможность создания HTML-файлов из шаблонов и преобразования их в PDF с помощью Prince. Prince очень гибкий, и создавать HTML-файлы из шаблонов намного проще, чем непосредственно создавать PDF-файлы.