GeoServer添加要素图层的SLD样式文件以及中文乱码相关解决方案

首先上传shapefile文件到geoserver上,然后发布,这一步很常用。 发布的这个是没有设置样式的,

之后将该图层添加到QGIS里,配置该图层的样式,可以添加一些标注:

之后右击图层,导出SLD样式文件

打开geoserver,新建一个样式style,匹配对应的图层,输入sld文件(或者直接导入也可以),结果如下:

可以看到,中文注解没有显示到图层上,接下来就是本文章的重点了。 出现这个的原因是因为geoserver里可用的字体里没有兼容中文的

所以我们要将自己计算机上的中文字体复制到geoserver里去。 具体步骤(以geoserver的docker为例) 先进入geoserver容器内:

bash 复制代码
docker exec -it geoserver /bin/bash

根据docker数据卷映射挂载的相关原理,先将自己电脑上的宋体文件复制到geoserver的数据目录下:

然后将字体文件复制到容器内的/usr/share/fonts/truetype/这个路径下

bash 复制代码
-- 处于容器内获取数据的文件目录下
cp SIMSUN.TTC /usr/share/fonts/truetype/  

之后刷新字体缓存,然后重启geoserver容器

复制代码
fc-cache -fv
docker restart geoserver

重新打开geoserver可以看到geoserver里有了宋体

然后修改SLD文件里的字体为宋体

保存查看就可以看到图层的标注为中文。

相关推荐
共享家95274 小时前
搭建 AI 聊天机器人:”我的人生我做主“
前端·javascript·css·python·pycharm·html·状态模式
Halo_tjn6 小时前
基于封装的专项 知识点
java·前端·python·算法
m0_748229998 小时前
Vue2 vs Vue3:核心差异全解析
前端·javascript·vue.js
C澒8 小时前
前端监控系统的最佳实践
前端·安全·运维开发
xiaoxue..8 小时前
React 手写实现的 KeepAlive 组件
前端·javascript·react.js·面试
hhy_smile9 小时前
Class in Python
java·前端·python
小邓吖9 小时前
自己做了一个工具网站
前端·分布式·后端·中间件·架构·golang
南风知我意9579 小时前
【前端面试2】基础面试(杂项)
前端·面试·职场和发展
LJianK110 小时前
BUG: Uncaught Error: [DecimalError] Invalid argument: .0
前端
No Silver Bullet10 小时前
Nginx 内存不足对Web 应用的影响分析
运维·前端·nginx