GeoServer 自定义字体 符号化渲染点

矢量数据的符号化在Gis数据展示中占了很大的用户体验作用,当项目存在CS/BS系统同时存在时,为了减少符号化文件创建的工作量,需要使两种平台支持的符号化文件相同。在CS的Gis平台中大部分支持Windows字体文件、图片文件,这两种GeoServer同样支持。但是图片文件无法在放大缩小的时候很好的表达矢量数据。本文基于Windows字体文件(.ttf)进行设置说明。

GeoServer的Style文件可根据QGIS进行配置后,保存样式即可获取到(.sld).如图:


QGis配置SLD样式文件
当通过此文件上传到GeoServer中作为样式文件配置点图层后会发现,电脑里面装了对应字体但是预览图层时会出现符号未显示的情况(全是实心方框)。这是因为GeoServer基于java开发,其支持的字体文件受限于JVM,可在GeoServer的服务器状态中查看其支持的字体类型或通对应的REST服务可查看:


GeoServer默认支持的字体数量

GeoServer Rest查看字体
除此之外无法通过GeoServer的Rest接口进行添加字体:


查看接口可用方法
现在说说解决办法,在安装GeoServer的时候需要选择安装的Java地址,在对应的文件夹下放入ttf字体文件后,重启GeoServer服务即可。


Java 安装路径

拷贝至JRE/lib/fonts下

重启GeoServer服务后字体数目增加1

centos查看java路径(命令中的路径根据实际情况更改):

输入命令:which java,查看java路径(/usr/bin/java);

输入命令:ls -lrt /usr/bin/java,查看(/usr/bin/java->/etc/alternatives/java)

输入命令:ls -lrt /etc/alternatives/java

结果(/etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-7.ky10.x86_64/jre/bin/java),查看最终fonts路径(/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-7.ky10.x86_64/jre/lib/fonts)

 最后,将字体问题拷贝到路径下(如果没有fonts文件夹,则手工建立fonts文件夹),如下图所示(esri字体从系统字体目录下搜索esri,拷贝出来即可):

在支持列表中找到自定义的字体

 查看自定义符号的展示效果如下:

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值