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文件里的字体为宋体

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

相关推荐
老华带你飞10 分钟前
商城推荐系统|基于SprinBoot+vue的商城推荐系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·商城推荐系统
JS.Huang12 分钟前
【JavaScript】Pointer Events 与移动端交互
前端·javascript
一 乐14 分钟前
物业管理系统|小区物业管理|基于SprinBoot+vue的小区物业管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端
H_HX12618 分钟前
vue3 - 图片放大镜效果实现
前端·vue.js·vue3·vueuse·图片放大镜
yinuo1 小时前
Git Submodule 与 Subtree 全方位对比:使用方式与场景选择
前端
yinuo2 小时前
深入理解与实战 Git Subtree
前端
向上的车轮2 小时前
Actix Web 不是 Nginx:解析 Rust 应用服务器与传统 Web 服务器的本质区别
前端·nginx·rust·tomcat·appche
Liudef062 小时前
基于LLM的智能数据查询与分析系统:实现思路与完整方案
前端·javascript·人工智能·easyui
潘小安2 小时前
跟着 AI 学(三)- spec-kit +claude code 从入门到出门
前端·ai编程·claude
ZHSH.3 小时前
基于ArcGIS的动物迁移生态廊道规划案例 | 人与万物,共生共荣
gis·生态廊道分析