Печать квитанций с помощью Python - PullRequest
0 голосов
/ 05 марта 2019

Я работаю в приложении кассира, использующем Python, и хочу печатать квитанции напрямую без диалогового окна принтера (я использую USB-принтер).Я также хотел бы контролировать макет напечатанной бумаги.

Мой код до сих пор:

def createPrinteDialog(self):
    try:
        bill = ""
        for i in range(len(dig.bill)):
            bill += dig.bill.item(i).text() + "\n"

        printer = QPrinter(QPrinter.HighResolution)
        dialog = QPrintDialog(printer, self)
        if dialog.exec_() == QPrintDialog.Accepted:
            dig.textEdit.setText(bill)
            dig.textEdit.print_(printer)
    except Exception as e:
        print(e)

Однако это не очень хорошо работает.Он печатает чеки, которые слишком длинные, а шрифт слишком маленький.Диалоговое окно принтера также появляется каждый раз.

Может кто-нибудь помочь мне с этой проблемой?

хорошо, проблема с диалоговым окном решена, когда я удалил if dialog.exec_() == QPrintDialog.Accepted:

, но теперь яхочу контролировать расклад бумаги напечатан

...