Geoserver线样式配置固定宽度(SLD版本)
一、问题
同个qgis配置图层线样式,指定宽度,就是宽度不随地图缩放而变化。在qgis配置如下
但是这样在导出为sld格式文件后,导入geoserver样式集并发布对应图层,加载图层会发现线宽度还是会随地图缩放而变化。
那就是qgis配置按比例缩放
没有生效
二、解决方法
通过uom 属性指定测量单位实现
SE 1.1规范中给出的测量单位,如下:
http://www.opengeospatial.org/se/units/metre
http://www.opengeospatial.org/se/units/foot
http://www.opengeospatial.org/se/units/pixel
以下SLD显示 uom 用于指定 LineSymbolizer
单位:米。实现代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<StyledLayerDescriptor version="1.0.0" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<NamedLayer>
<Name>blue line</Name>
<UserStyle>
<Title>blue line</Title>
<Abstract>Default line style</Abstract>
<FeatureTypeStyle>
<Rule>
<Title>Blue Line, 5m large</Title>
<LineSymbolizer uom="http://www.opengeospatial.org/se/units/metre">
<Stroke>
<CssParameter name="stroke">#0000FF</CssParameter>
<CssParameter name="stroke-width">5</CssParameter>
</Stroke>
</LineSymbolizer>
</Rule>
</FeatureTypeStyle>
</UserStyle>
</NamedLayer>
</StyledLayerDescriptor>
参考:https://www.osgeo.cn/geoserver-user-manual/styling/sld/extensions/uom.html#unit-of-measure
分类:
GIS / geoserver
, GIS / QGIS
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!