KML IconStyle 颜色输入为蓝色但在 Google 地球中显示为红色
KML IconStyle color entered as blue but displays red in Google Earth
我使用十六进制颜色来标记图标。对于蓝色,我使用 0000ff
。在 KML 文件中,它是 <color>ff0000ff</color>
。但是,当在 Google 地球中打开 KML 时,图标地标为红色。
查看 https://developers.google.com/kml/documentation/kmlreference 我的看法是颜色应编码为 ff
+ hexadecimal number
,因此黑色表示为 ff000000
,这有效,但是 ff0000ff
蓝色没有。
我试过各种样式和图标选项,但都没有成功。我已经阅读并看到了如何将图标和颜色合并的分层效果。似乎使用 wht-blank.png 是中性的 canvas 来应用颜色,但我怀疑它可能会产生干扰。
下面是我的测试kml。
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2">
<Document>
<name>kml_test</name>
<Placemark>
<name>uniq_name</name>
<Style>
<IconStyle>
<scale>1</scale>
<color>ff0000ff</color>
<Icon>
<href>http://maps.google.com/mapfiles/kml/paddle/wht-blank.png</href>
</Icon>
</IconStyle>
</Style>
<LabelStyle>
<color>ffffffff</color>
<scale>0.6</scale>
</LabelStyle>
<LookAt>
<longitude>-118.000000</longitude>
<latitude>34.000000</latitude>
<range>1000</range>
</LookAt>
<Point>
<altitudeMode>clampToGround</altitudeMode>
<extrude>0</extrude>
<coordinates>-118.000000,34.000000,0</coordinates>
</Point>
</Placemark>
</Document>
</kml>
我希望 <color>ff0000ff</color>
在 Google 地球中打开 kml 时显示蓝色图标,而不是红色。
KML 不使用正常的颜色顺序,而是采用蓝色、绿色、红色或 AABBGGRR 的相反顺序,其中 AA 是 alpha 或透明度,BB 是蓝色,GG 是绿色,RR 是红色。
有关详细信息,请参阅 <color>
标记的文档,此处:
https://developers.google.com/kml/documentation/kmlreference#elements-specific-to-colorstyle
特别是这一行:
The order of expression is aabbggrr
对于您要使用的蓝色图标:<color>ffff0000</color>
我使用十六进制颜色来标记图标。对于蓝色,我使用 0000ff
。在 KML 文件中,它是 <color>ff0000ff</color>
。但是,当在 Google 地球中打开 KML 时,图标地标为红色。
查看 https://developers.google.com/kml/documentation/kmlreference 我的看法是颜色应编码为 ff
+ hexadecimal number
,因此黑色表示为 ff000000
,这有效,但是 ff0000ff
蓝色没有。
我试过各种样式和图标选项,但都没有成功。我已经阅读并看到了如何将图标和颜色合并的分层效果。似乎使用 wht-blank.png 是中性的 canvas 来应用颜色,但我怀疑它可能会产生干扰。
下面是我的测试kml。
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2">
<Document>
<name>kml_test</name>
<Placemark>
<name>uniq_name</name>
<Style>
<IconStyle>
<scale>1</scale>
<color>ff0000ff</color>
<Icon>
<href>http://maps.google.com/mapfiles/kml/paddle/wht-blank.png</href>
</Icon>
</IconStyle>
</Style>
<LabelStyle>
<color>ffffffff</color>
<scale>0.6</scale>
</LabelStyle>
<LookAt>
<longitude>-118.000000</longitude>
<latitude>34.000000</latitude>
<range>1000</range>
</LookAt>
<Point>
<altitudeMode>clampToGround</altitudeMode>
<extrude>0</extrude>
<coordinates>-118.000000,34.000000,0</coordinates>
</Point>
</Placemark>
</Document>
</kml>
我希望 <color>ff0000ff</color>
在 Google 地球中打开 kml 时显示蓝色图标,而不是红色。
KML 不使用正常的颜色顺序,而是采用蓝色、绿色、红色或 AABBGGRR 的相反顺序,其中 AA 是 alpha 或透明度,BB 是蓝色,GG 是绿色,RR 是红色。
有关详细信息,请参阅 <color>
标记的文档,此处:
https://developers.google.com/kml/documentation/kmlreference#elements-specific-to-colorstyle
特别是这一行:
The order of expression is aabbggrr
对于您要使用的蓝色图标:<color>ffff0000</color>