Come creare etichette di testo con caselle di sfondo?


13

Sto cercando di creare alcune etichette personalizzate per le caratteristiche dei punti in un livello vettoriale punti QGIS e voglio scrivere un plugin Python per farlo. Abbiamo bisogno che le nostre etichette siano presentate con rettangoli colorati (o altro!). Le etichette sono stringhe lunghe e vengono create utilizzando espressioni e condizioni del motore di etichettatura.

Ho pensato che il modo più semplice sarebbe stato quello di consentire all'utente di impostare le etichette per il livello attivo nel modo desiderato, quindi lasciare che il mio plugin potesse prendere il testo dell'etichetta dalle caratteristiche del livello e utilizzare le stringhe di testo per creare caselle. Il mio problema è che non riesco a trovare un modo per accedere a quelle stringhe di testo nell'API QGIS. Come vengono archiviate le stringhe di etichette dal motore di etichettatura in QGIS e come posso accedervi?


1
Per etichette intendi le etichette per le singole caratteristiche dei punti?
RK,

Sì. E lo voglio fatto a livello di livello, non a livello di compositore di stampa. Ho provato a generare automaticamente caselle di didascalia di testo perché non mi rendevo conto che fossero le funzioni del compositore di stampa, ed è stato davvero brutto.
MonsterMushroom il

1
Hai pensato a un forte colore del buffer dietro il testo? L'ho fatto per un lavoro. In un altro ho appena detto al cliente che non era un'opzione .... Sembra una richiesta comune ....
Willy,

1
Il forte buffer di colore è la mia soluzione attuale. Tuttavia, il client aveva i box (usando uno script) nella loro implementazione ArcGIS e vogliono vedere la stessa cosa in QGIS. (Stiamo cercando di cambiare sistema.) La mia risposta attuale è che questa non è un'opzione, ma non è mai una risposta divertente, e mi piacerebbe davvero togliermi qualcosa di tasca. Inoltre, le scatole attorno alle etichette dovrebbero essere qualcosa che possiamo fare. Ha senso.
MonsterMushroom il

Penso che la risposta a questo sarà che una volta che le etichette saranno generate dal motore di etichettatura e renderizzate nell'area di disegno della mappa, verranno salvate come vettori svg e non come stringhe e saranno quindi irrecuperabili. L'ho visto su un blog ma non sono ancora stato in grado di (ho avuto il tempo di) confermarlo, quindi non è una risposta ufficiale. (Ho anche appreso che le etichette degli scudi sono in fase di elaborazione come aggiunta per l'attesissimo 2.0)
MonsterMushroom,

Risposte:


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.