Encoding 阿拉伯语标签在Geoserver中显示不正确
我使用Tomcat安装了geoserver,文本标签显示不正确。在哪里可以设置geosever中的阿拉伯语编码? 标签在QGIS中显示得很好,但当我在geoserver中发布它时,我遇到了这个问题 ] 以下是SLD:Encoding 阿拉伯语标签在Geoserver中显示不正确,encoding,character-encoding,geoserver,qgis,gml-geographic-markup-lan,Encoding,Character Encoding,Geoserver,Qgis,Gml Geographic Markup Lan,我使用Tomcat安装了geoserver,文本标签显示不正确。在哪里可以设置geosever中的阿拉伯语编码? 标签在QGIS中显示得很好,但当我在geoserver中发布它时,我遇到了这个问题 ] 以下是SLD: <?xml version="1.0" encoding="UTF-8"?> <sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld" xmlns:sld="http://www.open
<?xml version="1.0" encoding="UTF-8"?>
<sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld" xmlns:sld="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml" version="1.0.0">
<sld:UserLayer>
<sld:LayerFeatureConstraints>
<sld:FeatureTypeConstraint/>
</sld:LayerFeatureConstraints>
<sld:UserStyle>
<sld:Name>sea</sld:Name>
<sld:Title/>
<sld:IsDefault>1</sld:IsDefault>
<sld:FeatureTypeStyle>
<sld:Name>group 0</sld:Name>
<sld:FeatureTypeName>Feature</sld:FeatureTypeName>
<sld:SemanticTypeIdentifier>generic:geometry</sld:SemanticTypeIdentifier>
<sld:SemanticTypeIdentifier>simple</sld:SemanticTypeIdentifier>
<sld:Rule>
<sld:Name>default rule</sld:Name>
<sld:PolygonSymbolizer>
<sld:Fill>
<sld:CssParameter name="fill">#1B9E77</sld:CssParameter>
<sld:CssParameter name="fill-opacity">0.5</sld:CssParameter>
</sld:Fill>
<sld:Stroke>
<sld:CssParameter name="stroke">#1B9E77</sld:CssParameter>
</sld:Stroke>
</sld:PolygonSymbolizer>
<sld:TextSymbolizer>
<sld:Label>
<ogc:PropertyName>ARABIC</ogc:PropertyName>
</sld:Label>
<sld:Font>
<sld:CssParameter name="font-family">Arial</sld:CssParameter>
<sld:CssParameter name="font-size">12.0</sld:CssParameter>
<sld:CssParameter name="font-style">normal</sld:CssParameter>
<sld:CssParameter name="font-weight">bold</sld:CssParameter>
</sld:Font>
<sld:LabelPlacement>
<sld:PointPlacement>
<sld:AnchorPoint>
<sld:AnchorPointX>0.5</sld:AnchorPointX>
<sld:AnchorPointY>0.5</sld:AnchorPointY>
</sld:AnchorPoint>
</sld:PointPlacement>
</sld:LabelPlacement>
<sld:Fill>
<sld:CssParameter name="fill">#000000</sld:CssParameter>
</sld:Fill>
<sld:VendorOption name="spaceAround">2</sld:VendorOption>
</sld:TextSymbolizer>
</sld:Rule>
</sld:FeatureTypeStyle>
</sld:UserStyle>
</sld:UserLayer>
</sld:StyledLayerDescriptor>
海
1.
第0组
特征
通用:几何
简单的
默认规则
#1B9E77
0.5
#1B9E77
阿拉伯文
Arial
12
正常的
大胆的
0.5
0.5
#000000
2.
最常见的问题是未设置字符编码,请查看存储页面:
通过我的测试数据,我得到了设置为“windows-1250”的结果
切换到(在我的例子中)正确的“UTF-8”会得到更好的结果
最后,使用比Arial更好的字体(Trocchi)填写中文和阿拉伯字符
更新
因此,通过对shapefile和SLD进行实验,并通过谷歌搜索“windows阿拉伯语字符集”,我将shapefile数据存储DBF字符集设置为“windows-1256”,这似乎是可行的
请将SLD和QML文件的相关部分添加到问题中。最可能的问题是GeoServer计算机上缺少字体。请编辑question@Ian图顿。我用SLDDoes arial字体编辑了这个问题,是否有阿拉伯字符?是的。。它与QGIS中使用的字体相同,显示阿拉伯语。您可以提供指向您的形状文件的链接吗?这是指向所用形状文件的链接,谢谢@Ian Turton。。我使用了这些设置,效果非常好