geoserver不同比例下显示不同图标样式

1、打开geoserver主界面,如图所示

2、选择数据栏目下的Style,如图

 

3、选择“Add a new style

 

样式值:样式中需要到一张图片,右键右图保存到你的geoserver安装目录下的/data/style文件下即可。

<?xml version="1.0" encoding="UTF-8"?>
<StyledLayerDescriptor version="1.0.0"
  xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd" 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">
  <NamedLayer>
    <Name>substaion</Name>
    <UserStyle>
      <Name>substaion</Name>
      <Title>BDZ</Title>
      <FeatureTypeStyle>
          <!-- 规则 -->
          <Rule>
          <!-- 最小比例分母  当比例分母值>50000时显示样式 -->
          <MinScaleDenominator>50000</MinScaleDenominator>
          <Title>Capitals</Title>
          <PointSymbolizer>
            <Graphic>
              <Opacity>
                <ogc:Literal>1.0</ogc:Literal>
              </Opacity>
              <Size>
                <ogc:Literal>15</ogc:Literal>
              </Size>
              <ExternalGraphic>
                  <!-- 图标 -->
                  <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="mypower.png"/>
                  <Format>image/png</Format>
              </ExternalGraphic>
            </Graphic>
          </PointSymbolizer>
        </Rule>
        <Rule>
          <!-- 当2000<比例分母值<50000时显示样式 -->
          <!-- 最小比例分母 -->
          <MinScaleDenominator>2000</MinScaleDenominator>
          <!-- 最大比例分母 -->
          <MaxScaleDenominator>50000</MaxScaleDenominator>
          <Title>Capitals</Title>
          <PointSymbolizer>
            <Graphic>
              <Opacity>
                <ogc:Literal>1.0</ogc:Literal>
              </Opacity>
              <Size>
                <ogc:Literal>30</ogc:Literal>
              </Size>
              <ExternalGraphic>
                  <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="mypower.png"/>
                  <Format>image/png</Format>
              </ExternalGraphic>
            </Graphic>
          </PointSymbolizer>
        </Rule>
        <Rule>
          <!-- 当2<比例分母值<2000时显示样式 -->
          <MinScaleDenominator>2</MinScaleDenominator>
          <!-- 最大比例分母 -->
          <MaxScaleDenominator>2000</MaxScaleDenominator>
          <Title>Capitals</Title>
          <PointSymbolizer>
            <Graphic>
              <Opacity>
                <ogc:Literal>1.0</ogc:Literal>
              </Opacity>
              <Size>
                <ogc:Literal>60</ogc:Literal>
              </Size>
              <ExternalGraphic>
                  <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="mypower.png"/>
                  <Format>image/png</Format>
              </ExternalGraphic>
            </Graphic>
          </PointSymbolizer>
        </Rule>
      </FeatureTypeStyle>
    </UserStyle>
  </NamedLayer>
</StyledLayerDescriptor>

补充:也可以在样式里面设计文字标注,规则整体代码如下:

        <Rule>
          <MaxScaleDenominator>2000</MaxScaleDenominator>
          <MinScaleDenominator>2</MinScaleDenominator>
          <Title>large</Title>
          <PointSymbolizer>
            <Graphic>
              <Opacity>
                <ogc:Literal>1.0</ogc:Literal>
              </Opacity>
              <Size>
                <ogc:Literal>60</ogc:Literal>
              </Size>
              <ExternalGraphic>
                  <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="mypower.png"/>
                  <Format>image/png</Format>
              </ExternalGraphic>
            </Graphic>
          </PointSymbolizer>
          <TextSymbolizer>
            <Label>
              <ogc:PropertyName>name</ogc:PropertyName>
            </Label>
            <Font>
              <CssParameter name="font-family">微软雅黑</CssParameter>
              <CssParameter name="font-weight">Bold</CssParameter>
              <CssParameter name="font-size">16</CssParameter>
            </Font>
            <LabelPlacement>
              <PointPlacement>
                <AnchorPoint>
                  <AnchorPointX>0.5</AnchorPointX>
                  <AnchorPointY>0.5</AnchorPointY>
                </AnchorPoint>
                <Displacement>
                  <DisplacementX>0</DisplacementX>
                  <DisplacementY>-35</DisplacementY>
                </Displacement>
              </PointPlacement>
            </LabelPlacement>
            <Halo>
              <Radius>
                <ogc:Literal>2</ogc:Literal>
              </Radius>
              <Fill>
                <CssParameter name="fill">#FFFFFF</CssParameter>
              </Fill>
            </Halo>
            <Fill>
              <CssParameter name="fill">#000000</CssParameter>
            </Fill>
          </TextSymbolizer>
        </Rule>

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值