Печать на Linux и Windows в Qt / Stack Overflow

У меня есть PDF-файлы, и я хочу напечатать их на бумаге (я говорю это, потому что «печать» обычно относится к передаче содержимого, сгенерированного в PDF-файл).

В Linux я использую системные вызовы CUPS, передавая имя файла в качестве аргумента, но в Windows это невозможно. Я начал читать о печати на Windows с C ++, но я должен использовать проприетарные библиотеки, и я не хочу использовать это сейчас (только последний ресурс).

Я читаю о QPrinter и другие классы, но как я могу использовать этот класс или другой, связанный с печатью PDF-файлов? Есть ли еще что-то, что печатает PDF-файлы?

0

Решение

Если ваша цель состоит в том, чтобы печатать в командной строке так же, как в Linux, вы можете установить cygwin с lpr и ghostscript, и это, вероятно, позволит вам печатать PDF-файлы. В Windows также есть встроенный lpr, который вы можете установить. Это не кубки, но должно позволять печать из командной строки.

Если вы хотите сделать все на C ++ (что потребует перекомпиляции для каждой системы), то вы можете использовать Qt с poppler. Вы можете создать приложение Qt, которое просто запускается из командной строки, использует poppler для загрузки указанного pdf-файла в QWidget, а затем сделать QPrinter для печати содержимого этого виджета. Я использовал невидимые виджеты раньше для печати, поэтому я знаю, что это выполнимо. Но я бы позаботился о том, чтобы я исчерпал другие варианты, прежде чем испачкать руки, создавая новый инструмент.

0

Другие решения


По вопросам рекламы [email protected]