真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么在python中使用QPrinter打印控件-創(chuàng)新互聯(lián)

這篇文章給大家介紹怎么在python中使用QPrinter打印控件,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

成都創(chuàng)新互聯(lián)公司專注于金塔網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供金塔營(yíng)銷型網(wǎng)站建設(shè),金塔網(wǎng)站制作、金塔網(wǎng)頁設(shè)計(jì)、金塔網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務(wù),打造金塔網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供金塔網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。PyQt5打印控件QPrinter簡(jiǎn)介

打印圖像是圖像處理軟件中的一個(gè)常用功能,打印圖像實(shí)際上是在QPaintDevice中畫圖,與平時(shí)在QWidget。QPixmap和QImage中畫圖是一樣的,都是創(chuàng)建一個(gè)QPainter對(duì)象進(jìn)行畫圖的,只是打印使用的是QPrinter,它的本質(zhì)上也是一個(gè)QPainterDevice(繪圖設(shè)備)

QPrinter的使用實(shí)例
import sys
from PyQt5.QtWidgets import QApplication,QMainWindow,QLabel,QSizePolicy,QAction
from PyQt5.QtPrintSupport import QPrintDialog,QPrinter
from PyQt5.QtGui import QImage,QIcon,QPixmap

class MainWindow(QMainWindow):
  def __init__(self,parent=None):
    super(MainWindow, self).__init__(parent)

    #設(shè)置標(biāo)題
    self.setWindowTitle('打印圖片')

    #創(chuàng)建標(biāo)簽,設(shè)置標(biāo)簽的大小規(guī)則以及控件的位置居中
    self.imageLabel=QLabel()
    self.imageLabel.setSizePolicy(QSizePolicy.Ignored,QSizePolicy.Ignored)
    self.setCentralWidget(self.imageLabel)

    #實(shí)例化Qimage類
    self.image = QImage()
    #自定義的多個(gè)函數(shù),實(shí)現(xiàn)的功能不一
    self.createActions()
    self.createMenus()
    self.createToolBars()

    if self.image.load('images\screen.png'):
      self.imageLabel.setPixmap(QPixmap.fromImage(self.image))
      self.resize(self.image.width(),self.image.height())

  def createActions(self):
    #加載圖標(biāo),添加快捷方式,添加提示信息,綁定槽函數(shù)
    self.PrintAction=QAction(QIcon('images\screen.png'),self.tr('打印'),self)
    self.PrintAction.setShortcut('Ctrl+P')
    self.PrintAction.setStatusTip(self.tr('打印'))
    self.PrintAction.triggered.connect(self.slotPrint)
  def createMenus(self):
    #實(shí)例化菜單欄,并添加一個(gè)父菜單,以及把PrintAction添加到父菜單下
    PrintMenu=self.menuBar().addMenu(self.tr('打印'))
    PrintMenu.addAction(self.PrintAction)

  def createToolBars(self):
    #在工具欄區(qū)域內(nèi)添加控件printACtion
    fileToolBar=self.addToolBar('Print')
    fileToolBar.addAction(self.PrintAction)

  def slotPrint(self):
    #實(shí)例化打印圖像對(duì)象
    printer=QPrinter()
    #打印窗口彈出
    printDialog=QPrintDialog(printer,self)
    if printDialog.exec_():

      painter=QPainter(printer)
      #實(shí)例化視圖窗口
      rect=painter.viewport()
      #獲取圖片的尺寸
      size=self.image.size()

      size.scale(rect.size(),Qt.KeepAspectRatio)
      #設(shè)置視圖窗口的屬性
      painter.setViewport(rect.x(),rect.y(),size.width(),size.height())

      #設(shè)置窗口的大小為圖片的尺寸,并在窗口內(nèi)繪制圖片
      painter.setWindow(self.image.rect)
      painter.drawImage(0,0,self.image)
if __name__ == '__main__':
  app=QApplication(sys.argv)
  main=MainWindow()
  main.show()
  sys.exit(app.exec_())

運(yùn)行程序,顯示效果如下

怎么在python中使用QPrinter打印控件

打印功能

怎么在python中使用QPrinter打印控件

關(guān)于怎么在python中使用QPrinter打印控件就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。


分享題目:怎么在python中使用QPrinter打印控件-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://weahome.cn/article/dchihj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部