GIS学习记录(三):GeoServer Style修改

GIS开发记录(二)完成的地图默认显示为灰色,不显示省名等,GeoServer提供style用于设置地图显示分割

 

1. 查看Layer使用的Style: 点击左边的[Layers],  点击右边列表 Layer 

点击Editor Layer页面的[Publishing],查看属性”WMS Setting” 的 “Default Style”,即为目前使用的地图风格。

 

2. 增加新的Style: 点击左边的[Styles],点击右边的[Add a new style] 增加一个新的Style。 GeoServer官方例子:SLD Cookbook

 

3. 修改province地图的背景颜色和省界颜色

 

<Rule>
	<PolygonSymbolizer>
		<Fill>
			<CssParameter name="fill">
				<ogc:Literal>#F4DBA5</ogc:Literal>
			</CssParameter>
			<CssParameter name="fill-opacity">
				<ogc:Literal>1.0</ogc:Literal>
			</CssParameter>
		</Fill>
		<Stroke>
			<CssParameter name="stroke">#C59D57</CssParameter>
			<CssParameter name="stroke-width">1</CssParameter>
		</Stroke>
	</PolygonSymbolizer>
</Rule>

 

 fill:地图填充颜色,stroke:省界颜色

 

4. 显示省名:

 

<Rule>
	...
	<TextSymbolizer>
		<Label>
			<ogc:PropertyName>NAME</ogc:PropertyName>
		</Label>
		<VendorOption name="group">yes</VendorOption>
		<VendorOption name="goodnessOfFit">0.01</VendorOption>
		<LabelPlacement>
			<PointPlacement auto="true"/>
		</LabelPlacement>
	</TextSymbolizer>
</Rule>

 

 ogc:PropertyName:需要在地图上显示的字段

 VendorOption name=”group”:是否显示唯一一个标注

 goodnessOfFit:设置显示标注比例

 可以通过手动修改对比地图显示效果区别

 

5. 整个Province Style代码:

 

<?xml version="1.0" encoding="ISO-8859-1"?>
<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"
  xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd">
  <NamedLayer>
    <Name>area landmarks</Name>
    <UserStyle>
    <Title>Province BgColor</Title>
    <Abstract>Province bg polygon fill without a border</Abstract>
      <FeatureTypeStyle>
        <Rule>
          <PolygonSymbolizer>
            <Fill>
              <CssParameter name="fill">
                <ogc:Literal>#F4DBA5</ogc:Literal>
              </CssParameter>
              <CssParameter name="fill-opacity">
                <ogc:Literal>1.0</ogc:Literal>
              </CssParameter>
            </Fill>
            <Stroke>
              <CssParameter name="stroke">#C59D57</CssParameter>
              <CssParameter name="stroke-width">1</CssParameter>
            </Stroke>
          </PolygonSymbolizer>
           <TextSymbolizer>
             <Label>
               <ogc:PropertyName>NAME</ogc:PropertyName>
             </Label>
             <VendorOption name="group">yes</VendorOption>
             <VendorOption name="goodnessOfFit">0.01</VendorOption>
             <LabelPlacement>
                <PointPlacement auto="true"/>
            </LabelPlacement>
           </TextSymbolizer>
         </Rule>
      </FeatureTypeStyle>
    </UserStyle>
  </NamedLayer>
</StyledLayerDescriptor>

 

 

地图显示效果:

转载自:https://blog.csdn.net/iteye_1007/article/details/82300799

You may also like...