QGIS批量导出sld

2023-10-12 18:10
文章标签 qgis 导出 批量 sld

本文主要是介绍QGIS批量导出sld,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作为一名gis工程师,经常会发布一些地图服务,尤其开源的geoserver经常会被用到,我们在发布一些矢量图层时候往往需要配置对应的sytle,通常都是通过在qgis一个一个图层配好样式一个一个导出sld再到geoserver发布,数量少还能接受,数量多的话就比较麻烦,所以需要研究批量导出的方法。

经过搜索查证没有直接导出sld的工具,相关插件Bulk vector export as SLD and GeoJson有导出sld的功能,但是和导出geojson捆绑在一起而且导出的sld名称为图层id名称不对。

经过分析qgispython控制台通过调用pyqgisapi的qgis.core.QgsMapLayer.saveSldStyle()函数可实现图层导出sld,在结合python遍历功能即可实现qgis工程批量导出sld样式文件。

相关代码如下:

#引用需要的模块
from qgis.core import *
import os
#导出的位置
nsldPath = r'C:\Users\Administrator\Desktop\sld'
#获取qgis图层
layers = qgis.utils.iface.mapCanvas().layers()
#遍历图层
for layer in reversed(layers):#获取图层名称nm = str(layer.name())#导出的sld路径nsld = nsldPath +'\\' + nm + '.sld'#导出的sldqgis.core.QgsMapLayer.saveSldStyle(layer,nsld)

其实通过qgispython控制台可以实现很多qgis工具箱里没有的功能,也能实现很多批量操作的功能来提高我们的工作效率,这就需要我们慢慢发现经常查看帮助文档和不断研究了。

Qgispython控制台帮助(3.22):

https://docs.qgis.org/3.22/zh-Hans/docs/user_manual/plugins/python_console.html

pyqgisapi帮助(3.22):

https://qgis.org/pyqgis/3.22/

pyqgis手册(3.22):

https://docs.qgis.org/3.22/en/docs/pyqgis_developer_cookbook/index.html

这篇关于QGIS批量导出sld的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/197560

相关文章

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Python实现批量CSV转Excel的高性能处理方案

《Python实现批量CSV转Excel的高性能处理方案》在日常办公中,我们经常需要将CSV格式的数据转换为Excel文件,本文将介绍一个基于Python的高性能解决方案,感兴趣的小伙伴可以跟随小编一... 目录一、场景需求二、技术方案三、核心代码四、批量处理方案五、性能优化六、使用示例完整代码七、小结一、

C#实现一键批量合并PDF文档

《C#实现一键批量合并PDF文档》这篇文章主要为大家详细介绍了如何使用C#实现一键批量合并PDF文档功能,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言效果展示功能实现1、添加文件2、文件分组(书签)3、定义页码范围4、自定义显示5、定义页面尺寸6、PDF批量合并7、其他方法

Python批量替换多个Word文档的多个关键字的方法

《Python批量替换多个Word文档的多个关键字的方法》有时,我们手头上有多个Excel或者Word文件,但是领导突然要求对某几个术语进行批量的修改,你是不是有要崩溃的感觉,所以本文给大家介绍了Py... 目录工具准备先梳理一下思路神奇代码来啦!代码详解激动人心的测试结语嘿,各位小伙伴们,大家好!有没有想

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按

Qt中实现多线程导出数据功能的四种方式小结

《Qt中实现多线程导出数据功能的四种方式小结》在以往的项目开发中,在很多地方用到了多线程,本文将记录下在Qt开发中用到的多线程技术实现方法,以导出指定范围的数字到txt文件为例,展示多线程不同的实现方... 目录前言导出文件的示例工具类QThreadQObject的moveToThread方法实现多线程QC

SpringBoot集成EasyExcel实现百万级别的数据导入导出实践指南

《SpringBoot集成EasyExcel实现百万级别的数据导入导出实践指南》本文将基于开源项目springboot-easyexcel-batch进行解析与扩展,手把手教大家如何在SpringBo... 目录项目结构概览核心依赖百万级导出实战场景核心代码效果百万级导入实战场景监听器和Service(核心

使用Python开发一个Ditto剪贴板数据导出工具

《使用Python开发一个Ditto剪贴板数据导出工具》在日常工作中,我们经常需要处理大量的剪贴板数据,下面将介绍如何使用Python的wxPython库开发一个图形化工具,实现从Ditto数据库中读... 目录前言运行结果项目需求分析技术选型核心功能实现1. Ditto数据库结构分析2. 数据库自动定位3

shell脚本批量导出redis key-value方式

《shell脚本批量导出rediskey-value方式》为避免keys全量扫描导致Redis卡顿,可先通过dump.rdb备份文件在本地恢复,再使用scan命令渐进导出key-value,通过CN... 目录1 背景2 详细步骤2.1 本地docker启动Redis2.2 shell批量导出脚本3 附录总