Desplegar un objeto de QgsComposerLabel con más de una línea en PyQGIS

En este tema de gis.stackexchange.com se requiere desplegar un objeto de la clase QgsComposerLabel en más de una línea. Para el extracto del código que está allí representado se refiere que solo se imprime la primera con la palabra “Prognostico”.

Después de utilizar “Get Pattern” para evaluar los métodos de clase más probables y luego de unas pruebas encontré que ‘setMargin’, con un valor entero negativo, podría ser la respuesta. Para hacer las pruebas incluí el extracto del código siguiente dentro del que se presentó en un post anterior para aprovechar mi propio composition object.

.
.
.
pr = 'test'
text = QgsComposerLabel(c)
text.setText("Prognostico" + "\n" + "Coordinate System: ETRS89 PTTM06" + '\n' + str(pr))
text.setFont(QFont("Cambria",15, QFont.Bold))
text.setItemPosition(40, 40, True)
text.adjustSizeToText()
#text.setFrameEnabled(True)
text.setMargin(-6)
c.addItem(text)
.
.
.

Después de ejecutar el código completo en la Python Console se obtuvo lo siguiente:

composer

lo que refleja el resultado que se esperaba.

Esta entrada fue publicada en PyQGIS, QGIS, Software Libre. Guarda el enlace permanente.

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s