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

相关文章

SpringBoot整合mybatisPlus实现批量插入并获取ID详解

《SpringBoot整合mybatisPlus实现批量插入并获取ID详解》这篇文章主要为大家详细介绍了SpringBoot如何整合mybatisPlus实现批量插入并获取ID,文中的示例代码讲解详细... 目录【1】saveBATch(一万条数据总耗时:2478ms)【2】集合方式foreach(一万条数

Python实现AVIF图片与其他图片格式间的批量转换

《Python实现AVIF图片与其他图片格式间的批量转换》这篇文章主要为大家详细介绍了如何使用Pillow库实现AVIF与其他格式的相互转换,即将AVIF转换为常见的格式,比如JPG或PNG,需要的小... 目录环境配置1.将单个 AVIF 图片转换为 JPG 和 PNG2.批量转换目录下所有 AVIF 图

详解如何通过Python批量转换图片为PDF

《详解如何通过Python批量转换图片为PDF》:本文主要介绍如何基于Python+Tkinter开发的图片批量转PDF工具,可以支持批量添加图片,拖拽等操作,感兴趣的小伙伴可以参考一下... 目录1. 概述2. 功能亮点2.1 主要功能2.2 界面设计3. 使用指南3.1 运行环境3.2 使用步骤4. 核

Python将博客内容html导出为Markdown格式

《Python将博客内容html导出为Markdown格式》Python将博客内容html导出为Markdown格式,通过博客url地址抓取文章,分析并提取出文章标题和内容,将内容构建成html,再转... 目录一、为什么要搞?二、准备如何搞?三、说搞咱就搞!抓取文章提取内容构建html转存markdown

vue使用docxtemplater导出word

《vue使用docxtemplater导出word》docxtemplater是一种邮件合并工具,以编程方式使用并处理条件、循环,并且可以扩展以插入任何内容,下面我们来看看如何使用docxtempl... 目录docxtemplatervue使用docxtemplater导出word安装常用语法 封装导出方

java中使用POI生成Excel并导出过程

《java中使用POI生成Excel并导出过程》:本文主要介绍java中使用POI生成Excel并导出过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求说明及实现方式需求完成通用代码版本1版本2结果展示type参数为atype参数为b总结注:本文章中代码均为

Python实现将MySQL中所有表的数据都导出为CSV文件并压缩

《Python实现将MySQL中所有表的数据都导出为CSV文件并压缩》这篇文章主要为大家详细介绍了如何使用Python将MySQL数据库中所有表的数据都导出为CSV文件到一个目录,并压缩为zip文件到... python将mysql数据库中所有表的数据都导出为CSV文件到一个目录,并压缩为zip文件到另一个

基于Python开发批量提取Excel图片的小工具

《基于Python开发批量提取Excel图片的小工具》这篇文章主要为大家详细介绍了如何使用Python中的openpyxl库开发一个小工具,可以实现批量提取Excel图片,有需要的小伙伴可以参考一下... 目前有一个需求,就是批量读取当前目录下所有文件夹里的Excel文件,去获取出Excel文件中的图片,并

Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)

《Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)》:本文主要介绍Java导入、导出excel的相关资料,讲解了使用Java和ApachePOI库将数据导出为Excel文件,包括... 目录前言一、引入Apache POI依赖二、用法&步骤2.1 创建Excel的元素2.3 样式和字体2.

java导出pdf文件的详细实现方法

《java导出pdf文件的详细实现方法》:本文主要介绍java导出pdf文件的详细实现方法,包括制作模板、获取中文字体文件、实现后端服务以及前端发起请求并生成下载链接,需要的朋友可以参考下... 目录使用注意点包含内容1、制作pdf模板2、获取pdf导出中文需要的文件3、实现4、前端发起请求并生成下载链接使