7 Module implementing the central widget showing the web pages. |
7 Module implementing the central widget showing the web pages. |
8 """ |
8 """ |
9 |
9 |
10 import os |
10 import os |
11 |
11 |
12 from PyQt6.QtCore import pyqtSignal, pyqtSlot, Qt, QUrl, QFile, QFileDevice |
12 from PyQt6.QtCore import ( |
13 from PyQt6.QtGui import QIcon, QPixmap, QPainter |
13 pyqtSignal, pyqtSlot, Qt, QUrl, QFile, QFileDevice, QMarginsF |
|
14 ) |
|
15 from PyQt6.QtGui import QIcon, QPixmap, QPainter, QPageLayout |
14 from PyQt6.QtWidgets import ( |
16 from PyQt6.QtWidgets import ( |
15 QWidget, QHBoxLayout, QMenu, QToolButton, QDialog |
17 QWidget, QHBoxLayout, QMenu, QToolButton, QDialog |
16 ) |
18 ) |
17 from PyQt6.QtPrintSupport import QPrinter, QPrintDialog, QAbstractPrintDialog |
19 from PyQt6.QtPrintSupport import QPrinter, QPrintDialog, QAbstractPrintDialog |
18 |
20 |
650 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
652 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
651 if Preferences.getPrinter("FirstPageFirst"): |
653 if Preferences.getPrinter("FirstPageFirst"): |
652 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
654 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
653 else: |
655 else: |
654 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
656 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
655 printer.setPageMargins( |
657 printer.setPageMargins(QMarginsF( |
656 Preferences.getPrinter("LeftMargin") * 10, |
658 Preferences.getPrinter("LeftMargin") * 10, |
657 Preferences.getPrinter("TopMargin") * 10, |
659 Preferences.getPrinter("TopMargin") * 10, |
658 Preferences.getPrinter("RightMargin") * 10, |
660 Preferences.getPrinter("RightMargin") * 10, |
659 Preferences.getPrinter("BottomMargin") * 10, |
661 Preferences.getPrinter("BottomMargin") * 10), |
660 QPrinter.Unit.Millimeter |
662 QPageLayout.Unit.Millimeter |
661 ) |
663 ) |
662 printerName = Preferences.getPrinter("PrinterName") |
664 printerName = Preferences.getPrinter("PrinterName") |
663 if printerName: |
665 if printerName: |
664 printer.setPrinterName(printerName) |
666 printer.setPrinterName(printerName) |
665 printer.setResolution(Preferences.getPrinter("Resolution")) |
667 printer.setResolution(Preferences.getPrinter("Resolution")) |
778 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
780 printer.setColorMode(QPrinter.ColorMode.GrayScale) |
779 if Preferences.getPrinter("FirstPageFirst"): |
781 if Preferences.getPrinter("FirstPageFirst"): |
780 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
782 printer.setPageOrder(QPrinter.PageOrder.FirstPageFirst) |
781 else: |
783 else: |
782 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
784 printer.setPageOrder(QPrinter.PageOrder.LastPageFirst) |
783 printer.setPageMargins( |
785 printer.setPageMargins(QMarginsF( |
784 Preferences.getPrinter("LeftMargin") * 10, |
786 Preferences.getPrinter("LeftMargin") * 10, |
785 Preferences.getPrinter("TopMargin") * 10, |
787 Preferences.getPrinter("TopMargin") * 10, |
786 Preferences.getPrinter("RightMargin") * 10, |
788 Preferences.getPrinter("RightMargin") * 10, |
787 Preferences.getPrinter("BottomMargin") * 10, |
789 Preferences.getPrinter("BottomMargin") * 10), |
788 QPrinter.Unit.Millimeter |
790 QPageLayout.Unit.Millimeter |
789 ) |
791 ) |
790 printerName = Preferences.getPrinter("PrinterName") |
792 printerName = Preferences.getPrinter("PrinterName") |
791 if printerName: |
793 if printerName: |
792 printer.setPrinterName(printerName) |
794 printer.setPrinterName(printerName) |
793 printer.setResolution(Preferences.getPrinter("Resolution")) |
795 printer.setResolution(Preferences.getPrinter("Resolution")) |