Table of Contents

Moteur de rendu cartographique QgsMapRenderer

Etape 1

from PyQt4.QtCore import *
from PyQt4.QtGui import *

aLayer = qgis.utils.iface.activeLayer()

img = QImage(QSize(800,600), QImage.Format_RGB32)
img.fill(QColor(255,255,255).rgb())
p = QPainter()

p.begin(img)
p.setRenderHint(QPainter.Antialiasing)
render = QgsMapRenderer()
render.setLayerSet([ aLayer.id() ])
rect = QgsRectangle(render.fullExtent())
render.setExtent(rect)
render.setOutputSize(img.size(), 96)
render.render(p)
p.end()

img.save("/tmp/render.png","png")

(compréhension du “portrayal model” portrayalogc.png)

Etape 2