Немного краткой справки, чтобы помочь объяснить варианты:
Приложение предъявляет требования к тому, что должно быть напечатано. Драйвер принтера преобразует это в инструкции принтера. Эти инструкции могут быть на общепринятом "языке" принтеров, понятном ряду принтеров, или могут быть довольно уникальными, особенно если вы говорите о специализированном принтере. Существует ряд широко используемых "классов" или "семейств" языков принтеров, и внутри них часто существуют версии, настроенные для использования преимуществ, доступных на определенных моделях принтеров. Есть также проприетарные языки, которые используют определенные производители.
В случае инструкций для физического принтера они сохраняются в виде файла в диспетчере очереди печати, который отправляет его на физический принтер. Если вы говорите о виртуальном PDF-принтере, он действует как драйвер, преобразуя выходные требования приложения в PDF. PDF сохраняется как файл.
Содержимое диспетчера очереди печати можно сохранить и отправить на принтер, который понимает те же инструкции, но вы не можете напрямую использовать это для принтера другого типа. Таким образом, для требований, которые вы описываете, вашими источниками являются исходное приложение или файл, и файл будет представлять собой необработанные инструкции принтера на определенном языке принтера или в формате PDF. Есть несколько способов достичь желаемого результата, но не обязательно использовать описанный вами механизм:
Один простой - просто напечатать дважды. Поскольку это повторяющееся требование, включающее одинаковые виды вывода, вы можете автоматизировать последовательность с помощью макроса.
Еще один простой способ - изначально использовать виртуальный драйвер PDF. Это сохранит вывод как ваш PDF, и PDF может быть легко распечатан на любом типе принтера. Может даже существовать способ автоматизации выходной последовательности с помощью макроса или простого скрипта или пакетного файла.
Другие подходы используют некоторую форму сторонней утилиты. Это было всегда, так как мне нужно было делать это, поэтому я не могу рекомендовать конкретное программное обеспечение, но такие утилиты легко доступны, и поиск в Google определит, какие текущие предложения:
Один тип утилиты - это в основном переводчик. Он берет файл очереди печати и переводит необработанные инструкции принтера на другой язык принтера (или PDF в данном случае). Я не думаю, что эта опция действительно выиграет у вас что-то кроме вывода в PDF, а затем распечатки.
Утилита печати другого типа захватывает выходные требования из приложения и затем отправляет их на драйверы принтера по вашему выбору. Я подозреваю, что для автоматизации последовательности вам может потребоваться вариант, включающий параметр "пакетной печати" и позволяющий сохранить его в качестве настройки по умолчанию.