geoserver发布线图层,线的颜色不统一
应用style中sld文件编写应用style中sld文件编写
最近工作中,有这个需求,就是将线段颜色区分,之前一直都是一个线图层,一种颜色,太过于单调。
具体代码如下:
<?xml version="1.0" encoding="UTF-8"?><StyledLayerDescriptor version="1.0.0" xsi:schemaLocation="/sld StyledLayerDescriptor.xsd" xmlns:sld="/sld" xmlns:ogc="/ogc" xmlns:xlink="/1999/xlink" xmlns:xsi="/2001/XMLSchema-instance"><!-- a Named Layer is the basic building block of an SLD document --><sld:NamedLayer><sld:Name>ceshiline</sld:Name><sld:UserStyle><!-- Styles can have names, titles and abstracts --><sld:Title>ceshiline</sld:Title><sld:Abstract>A fuza style that draws a line</sld:Abstract><!-- FeatureTypeStyles describe how to render different features --><!-- A FeatureTypeStyle for rendering lines --><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>30</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#000000</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>5</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#009933</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>7</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#FF7F00</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>2</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#32CD99</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>3</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#5C3317</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>4</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#BC1717</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>-2</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#4D4DFF</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>110</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#38B0DE</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>1</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#00FF7F</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>90</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#99CC32</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>250</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#FF6EC7</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>140</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#D9D919</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>230</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#DB7093</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>210</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#CC3299</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>31</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#007F7F</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>41</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#8E2323</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>60</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#FF1CAE</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>6</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#FF7F00</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle><sld:FeatureTypeStyle><sld:Rule><ogc:Filter><ogc:PropertyIsEqualTo><ogc:PropertyName>Color</ogc:PropertyName><ogc:Literal>10</ogc:Literal></ogc:PropertyIsEqualTo></ogc:Filter><sld:LineSymbolizer><sld:Stroke><sld:CssParameter name="stroke">#215E21</sld:CssParameter><sld:CssParameter name="stroke-width">1</sld:CssParameter></sld:Stroke></sld:LineSymbolizer></sld:Rule><sld:VendorOption name="ruleEvaluation">first</sld:VendorOption></sld:FeatureTypeStyle></sld:UserStyle></sld:NamedLayer></StyledLayerDescriptor>
其中很多代码为重复,但条件设定的值有所不同,和表示颜色代码有所不同,假如还有其他需求,还得再行研究