在QGIS 3.x中通过属性表创建地图样式时,地图上的RGB颜色会正确显示,但图例中不会显示-请参见截屏。导出到* .sld文件时,将导出错误的颜色。 wrong color in the legend
表示例
LEG_FARBCODE_R | LEG_FARBCODE_G | LEG_FARBCODE_B
99 | 147 | 125
图层样式代码:
color_rgb( "LEG_FARBCODE_R" ,"LEG_FARBCODE_G" , "LEG_FARBCODE_B" )
sld文件如下所示(qgis自动将rgb代码转换为十六进制代码):
<se:Rule>
<se:Name>#729acf</se:Name>
<se:Description>
<se:Title>#729acf</se:Title>
</se:Description>
<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>rgb_hex_hex</ogc:PropertyName>
<ogc:Literal>#729acf</ogc:Literal>
</ogc:PropertyIsEqualTo>
</ogc:Filter>
<se:PolygonSymbolizer>
<se:Fill>
<se:SvgParameter name="fill">#c84621</se:SvgParameter>
</se:Fill>
</se:PolygonSymbolizer>
</se:Rule>
特征的颜色计算正确,但图例的颜色是随机分配的
<se:PolygonSymbolizer>
<se:Fill>
<se:SvgParameter name="fill">#729acf</se:SvgParameter>
</se:Fill>
</se:PolygonSymbolizer>
因此图例的错误颜色与地图不匹配
没有错误,但是图例中的颜色错误。 在Win10 / Ubuntu-18.4,/ OSX和QGIS-3.6.x u上进行了测试。 3.8