(предыдущий сотрудник iText здесь)
PDF - не простой (двоичный) формат.По сути, информационные блоки (текст, который необходимо отобразить, шрифты, изображения, векторная графика и т. Д.) Сжимаются и собираются в объекты.
Каждый объект получает номер.Объектам разрешено ссылаться друг на друга (фрагмент текста может сказать: «Я хочу быть отображенным со шрифтом 4433»)
Все номера объектов и их байтовое смещение в файле собраны в перекрестной ссылке (часто называемой XREF)таблица.
PDF включает в себя объект словаря «Страницы», который сообщает зрителю, к какому объекту относится данная страница.
Чтобы объединить PDF-файлы, вам необходимо:
-прочитать все таблицы XREF всех файлов
- настроить все из них на правильное смещение байта
- обновить различные объекты словаря в файле PDF, которые сообщают ему, где хранятся все объекты на странице
Этоэто ни в коем случае не тривиальная задача, но она может быть выполнена с использованием только VB.
Если вы серьезно относитесь к реализации надежной, масштабируемой версии этого инструмента, возможно, лучше взглянуть на исходный код iText и попробоватьпортировать его на VB?