7 Module implementing a dialog showing a pixmap. |
7 Module implementing a dialog showing a pixmap. |
8 """ |
8 """ |
9 |
9 |
10 from PyQt6.QtCore import Qt, QSize, QEvent |
10 from PyQt6.QtCore import Qt, QSize, QEvent |
11 from PyQt6.QtGui import ( |
11 from PyQt6.QtGui import ( |
12 QPalette, QImage, QPixmap, QPainter, QFont, QColor, QAction |
12 QPalette, QImage, QPixmap, QPainter, QFont, QColor, QAction, QMarginsF, |
|
13 QPageLayout |
13 ) |
14 ) |
14 from PyQt6.QtWidgets import ( |
15 from PyQt6.QtWidgets import ( |
15 QLabel, QSizePolicy, QScrollArea, QMenu, QToolBar |
16 QLabel, QSizePolicy, QScrollArea, QMenu, QToolBar |
16 ) |
17 ) |
17 from PyQt6.QtPrintSupport import QPrinter, QPrintDialog |
18 from PyQt6.QtPrintSupport import QPrinter, QPrintDialog |
356 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
357 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
357 if Preferences.getPrinter("FirstPageFirst"): |
358 if Preferences.getPrinter("FirstPageFirst"): |
358 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
359 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
359 else: |
360 else: |
360 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
361 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
361 printer.setPageMargins( |
362 printer.setPageMargins(QMarginsF( |
362 Preferences.getPrinter("LeftMargin") * 10, |
363 Preferences.getPrinter("LeftMargin") * 10, |
363 Preferences.getPrinter("TopMargin") * 10, |
364 Preferences.getPrinter("TopMargin") * 10, |
364 Preferences.getPrinter("RightMargin") * 10, |
365 Preferences.getPrinter("RightMargin") * 10, |
365 Preferences.getPrinter("BottomMargin") * 10, |
366 Preferences.getPrinter("BottomMargin") * 10), |
366 QPrinter.Unit.Millimeter |
367 QPageLayout.Unit.Millimeter |
367 ) |
368 ) |
368 printer.setPrinterName(Preferences.getPrinter("PrinterName")) |
369 printer.setPrinterName(Preferences.getPrinter("PrinterName")) |
369 |
370 |
370 preview = QPrintPreviewDialog(printer, self) |
371 preview = QPrintPreviewDialog(printer, self) |
371 preview.paintRequested[QPrinter].connect(self.__print) |
372 preview.paintRequested[QPrinter].connect(self.__print) |