geoserver样式浅析1

样式的结构

<?xml version="1.0" encoding="UTF-8"?>
<StyledLayerDescriptor version="1.0.0" 
 xsi:schemaLocation="http://www.opengis.net/sld 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>xx</Name>
    <UserStyle>
      <Title>Default Line</Title>
      <Abstract>..........</Abstract>
      <FeatureTypeStyle>
        <Rule>
          <Name>xx</Name>
          <Title>xx</Title>
          <Abstract>..........</Abstract>
          <!-- 需要自己补充 -->
        </Rule>
      </FeatureTypeStyle>
    </UserStyle>
  </NamedLayer>
</StyledLayerDescriptor>



点线面的基本xml写法

<!-- 在补充的地方加上 -->
            <PointSymbolizer>
              <Graphic>
                <Mark>
                  <WellKnownName>square</WellKnownName><!--形状>
                  <Fill>
                    <CssParameter name="fill">#000000</CssParameter><!--颜色-->
                  </Fill>
                </Mark>
              <Size>6</Size><!--大小-->
            </Graphic>
          </PointSymbolizer>

线

<!-- 在补充的地方加上 -->
<LineSymbolizer>
     <Stroke>
        <CssParameter name="stroke">#0000FF</CssParameter><!--边界颜色-->
            <CssParameter name="stroke-width">3</CssParameter><!--边界宽度-->
       </Stroke>
</LineSymbolizer>


 
 

<!-- 在补充的地方加上 -->
           <PolygonSymbolizer>
            <Fill>
              <CssParameter name="fill">#AAAAAA</CssParameter><!--填充颜色-->
            </Fill>
            <Stroke>
              <CssParameter name="stroke">#000000</CssParameter><!--边界颜色-->
              <CssParameter name="stroke-width">1</CssParameter><!--边界宽度-->
            </Stroke>
          </PolygonSymbolizer>


 
 
 
 

特殊样式添加

多重样式叠加

在基本xml上添加多个相同的xxSymbolizer可形成叠加效果

借助外界图案使用

以svg为例,先把所需要的xx.svg保存到geoserver的默认data文件夹下的styles中。
在Fill标签下添加:
<GraphicFill>
    <Graphic>
        <ExternalGraphic>
            <Onlineresource xlink:type="simple" xlink:href="xx.svg"/>
            <Format>image/svgh+xml</Format>
        </ExternalGraphic>
    </Graphic>
</GraphicFill>


 
 
 
 

特殊符号添加

把WellKnownName中的内容改为shape://xxx即可

添加标注

<!--在xxSymbolizer后面定义标注样式-->          
          <TextSymbolizer>
            <Label>
              <ogc:PropertyName>length</ogc:PropertyName><!--所显示的字段名-->
           </Label>
            	<Font>
            	 <CssParameter name="font-family">Arial</CssParameter><!--定义字体-->
            	 <CssParameter name="font-size">12</CssParameter><!--字体大小-->
            		 <CssParameter name="font-style">normal</CssParameter><!--格式-->
             <CssParameter name="font-weight">italyc</CssParameter><!--粗细-->
              </Font>

<!--设置标注位置-->            
            <LabelPlacement>
            <xxPlacement><!--你用的是什么Symbolizer就是什么placement-->
              <AnchorPoint>
                <AnchorPointX>0</AnchorPointX>
                <AnchorPointY>0</AnchorPointY>
              </AnchorPoint>
                <Displacement>
                  <DisplacementX>2</DisplacementX>
                    <DisplacementY>5</DisplacementY>
               </Displacement>
            </xxPlacement>
          </LabelPlacement>
          <Fill>
               <CssParameter name="fill">#000000</CssParameter><!--设置字体颜色-->
          </Fill>
          </TextSymbolizer>



 
 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值