Jeda Pelabelan di QGIS?


9

Apakah mungkin untuk menjeda / menghentikan pelabelan sementara di QGIS seperti di Arcmap untuk semua lapisan sekaligus?

Bilah alat label tidak menawarkan solusi.

Jawaban:


11

QGIS 3.x

Anda bisa menggunakan kode berikut di Konsol Python untuk membuat tombol pada bilah alat yang mengganti label untuk semua lapisan vektor:

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)

Kode didasarkan pada pertanyaan: Cara menghidupkan / mematikan semua label dari semua lapisan di QGIS .


QGIS 2.18.x

Anda dapat menggunakan plugin Deactivate / Active Labels yang memiliki tombol untuk mengaktifkan / menonaktifkan label untuk semua lapisan:

Balikkan label


1
Joseph terima kasih. Itu yang saya cari. Sayang sekali, ini belum porting untuk Qgis 3.
RolandG

1
@RolandG - Selamat datang, menambahkan metode yang memungkinkan untuk QGIS 3 :)
Joseph

1
hilang plugin Deactivate / Active label! Memulai permintaan pada repo mereka untuk memutakhirkannya.
Nikhil VJ

@nikhilvj - Bagus! :)
Joseph
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.