Antwort für QGIS 3.x:
Für eine einfachere Lösung ohne Python siehe Kommentar von gustry unten
Fügen Sie dieses Skript Ihrem benutzerdefinierten Funktionseditor hinzu:
from qgis.core import *
from qgis.gui import *
@qgsfunction(args='auto', group='Custom')
def get_crs(layer_name, feature, parent):
return QgsProject.instance().mapLayersByName(layer_name)[0].crs().description()
und dann den Namen crs im Ausdruckseditor mit abrufen
get_crs(@layer_name)
Verwenden Sie für den CRS-Namen Ihres Projekts (z. B. Projektion in Ihrem Drucklayout) Folgendes:
Fügen Sie dieses Skript Ihrem benutzerdefinierten Funktionseditor hinzu:
from qgis.core import *
from qgis.gui import *
@qgsfunction(args='auto', group='Custom')
def get_projectcrs(project_crs, feature, parent):
return QgsCoordinateReferenceSystem(project_crs).description()
und erhalten Sie dann den crs-Namen im Ausdruckseditor mit:
get_projectcrs(@project_crs)
Natürlich können Sie auch zB 'EPSG:4326'
manuell @project_crs
eingeben oder eine andere Funktion verwenden, die einen EPSG-Code zurückgibt.
Anmerkungen:
Weitere Informationen zu Änderungen in qgis 3.x finden Sie auch unter https://qgis.org/api/api_break.html