Загрузка стиля для слоя через pyqgis
Добавлено: 27 июн 2023, 13:43
Добрый день. У меня следующая ситуация: я получаю данные для генерации стиля слоя в формате .sld, который нужно применить к слою. Я делала это через:
layer.loadSLDStyle("адрес")
Для этого нужно предварительно сохранить стиль как файл, чтобы потом его загрузить.
Задача избавится от этого шага, т.к. система возможно будет заблокирована от записи левых файлов.
Я пыталась записывать стиль без сохранения через:
style_doc = QDomDocument("qgis")
style_doc.setContent(response.text)
layer.importNamedStyle(style_doc)
QgsProject.instance().addMapLayer(layer)
и
providers = QgsProviderRegistry.instance().providerList()
providers.saveStyle(providerKey = providers, sldStyle=response.text, styleName="name"
Ни тот, ни тот способ не вносит вообще никаких изменений ни в стиль слоя, ни в список записанных слоев. Как еще можно решить проблему создания слоя из str переменной, без создания файла с этими данными?
layer.loadSLDStyle("адрес")
Для этого нужно предварительно сохранить стиль как файл, чтобы потом его загрузить.
Задача избавится от этого шага, т.к. система возможно будет заблокирована от записи левых файлов.
Я пыталась записывать стиль без сохранения через:
style_doc = QDomDocument("qgis")
style_doc.setContent(response.text)
layer.importNamedStyle(style_doc)
QgsProject.instance().addMapLayer(layer)
и
providers = QgsProviderRegistry.instance().providerList()
providers.saveStyle(providerKey = providers, sldStyle=response.text, styleName="name"
Ни тот, ни тот способ не вносит вообще никаких изменений ни в стиль слоя, ни в список записанных слоев. Как еще можно решить проблему создания слоя из str переменной, без создания файла с этими данными?