¿Pausar etiquetado en QGIS?

9

¿Es posible pausar / detener el etiquetado temporalmente en QGIS como en Arcmap para todas las capas a la vez?

La barra de herramientas de etiquetas no ofrece solución.

RolandG
fuente

Respuestas:

11

QGIS 3.x

Puede usar el siguiente código en la Consola Python para crear un botón en la barra de herramientas que alterna las etiquetas para todas las capas vectoriales:

action = QAction(QIcon(""), "Turn labels" + "\n" + "ON/OFF", iface.mainWindow())
action.setCheckable(True)
iface.addToolBarIcon(action)

def label_control():
    for layer in QgsProject.instance().mapLayers().values():
        if layer.type() == QgsMapLayer.VectorLayer:
            if action.isChecked() == True:
                layer.setLabelsEnabled(True)
            else:
                layer.setLabelsEnabled(False)
        layer.triggerRepaint()

action.triggered.connect(label_control)
# Uncomment line below if you want to remove the icon yourself,
# otherwise it will be removed automatically when you restart QGIS
iface.removeToolBarIcon(action)

El código se basó en la pregunta: Cómo activar / desactivar todas las etiquetas de todas las capas en QGIS .


QGIS 2.18.x

Puede usar el complemento Desactivar / Etiquetas activas que tiene un botón para activar / desactivar etiquetas para todas las capas:

Invertir etiquetas

Joseph
fuente
1
Gracias Joseph Eso es lo que estaba buscando. Lástima, todavía no está portado para Qgis 3.
RolandG
1
@RolandG - Muy bienvenido, se agregó un posible método para QGIS 3 :)
Joseph
1
falta el complemento Desactivar / Etiquetas activas! Comenzó una solicitud en su repositorio para actualizarlo.
Nikhil VJ
@nikhilvj - ¡Buena! :)
Joseph