
У меня есть счета, которые отправляются в нашу систему в виде файлов PDF. Оттуда у меня есть скрипт, который периодически проверяет каталог на наличие файлов и печатает их на сетевых принтерах, подключенных к CUPS (HP LJ 400) через ipp.
Каждый счет-фактура должен иметь 4 копии, поэтому используется следующая команда:
lpr -P invoiceprint -# 4 invoice.pdf
(кстати, invoiceprint — это класс, состоящий из 2 принтеров)
Я вижу, что в каждом счете CUPS создает 4 задания на печать, по одному на каждую копию.
Как наложить номер копии на каждую копию?
Таким образом, каждая копия исходного файла будет иметь номер «Копия 1», «Копия 2» и т. д.
Есть ли способ отправить наложенную информацию о печати на принтер или мне следует объединить другой PDF с существующим? Если да, то какой инструмент лучше всего это сделать, и могу ли я добавить это с помощью фильтрации CUPS или мне придется создавать отдельные PDF и отправлять каждый из них в CUPS по отдельности?
решение1
На самом деле существует утилита pdfstamp, входящая в пакет libtext-pdf-perl, которая делает именно это — добавляет текст в существующий PDF-файл (судя по всему, как новый слой).
Нашел информацию благодаряэтот вопрос, pdfstamp был упомянут в комментариях.
Единственная проблема в том, что он, похоже, не понимает UTF8, даже при использовании шрифтов Unicode TTF.