zoukankan      html  css  js  c++  java
  • qgis cookbook-QgsMapRendererJob学习

    学习到渲染(QgsMapRendererJob),按照教程所讲总是输出不了图像,看了一下qgis的测试源码,发现少了一句话,加上后就可以输出了!

    from qgis.core import *
    from qgis.gui import *
    from qgis.PyQt.QtCore import *
    from qgis.PyQt.QtWidgets import *
    from qgis.PyQt.QtGui import *
    if __name__ == "__main__":
        vLayer = QgsVectorLayer("E:\qgis-and-tools\河北省\河北省.shp", "Hebei", "ogr")
        options = QgsMapSettings()
        options.setLayers([vLayer])
        options.setBackgroundColor(QColor(255, 255, 255))
        options.setOutputSize(QSize(800, 600))
        options.setExtent(vLayer.extent())
        renderer = QgsMapRendererParallelJob(options)
    
        def finished():
            print("img")
            img = renderer.renderedImage()
            print("begin save")
            img.save("E:\qgis-and-tools\河北省\hebei.png")
            print("save")
        renderer.finished.connect(finished)
        print("render connect")
        renderer.start()
        ##需要加上这一句话才能输出图片
        renderer.waitForFinished()
  • 相关阅读:
    OC准备知识
    文件操作
    双向链表
    单链表(Single Linked List)
    动态分配内存补充 realloc
    git心得一
    git的工作原理
    git:团队开发的流程
    git操作流程
    js:有关属性
  • 原文地址:https://www.cnblogs.com/m-zhang-yang/p/14351876.html
Copyright © 2011-2022 走看看