A couple of issues/notes:
- It looks like you are likely using
Road
as the map type rather thanRoadOnDemand
.Road
is an old, deprecated, static road map layer that's there for legacy reasons and shouldn't be used.RoadOnDemand
dynamically adds the labels and has a lot more support for cultures. - When requesting the imagery metadata, set the culture parameter, this will add the
mkt
parameter to the map tile URL for you (this will clean/verify the culture code for you). So your imagery metadata URL should look like this:https://dev.virtualearth.net/REST/V1/Imagery/Metadata/RoadOnDemand?output=json&culture=ko&uriScheme=https&key={YourBingMapsKey}
Note that I added &uriScheme=https
as you should only ever use https
in new apps. Which will return a response like this:
{ "authenticationResultCode": "ValidCredentials",
"brandLogoUri": "https://dev.virtualearth.net/Branding/logo_powered_by.png",
"copyright": "Copyright © 2024 Microsoft and its suppliers. All rights reserved. This API cannot be accessed and the content and any results may not be used, reproduced or transmitted in any manner without express written permission from Microsoft Corporation.",
"resourceSets": [
{
"estimatedTotal": 1,
"resources": [
{
"__type": "ImageryMetadata:http://schemas.microsoft.com/search/local/ws/rest/v1",
"imageHeight": 256,
"imageUrl": "https://{subdomain}.ssl.ak.dynamic.tiles.virtualearth.net/comp/ch/{quadkey}?mkt=ko&it=G,L&shading=hill&og=2390&n=z",
"imageUrlSubdomains": [
"t0",
"t1",
"t2",
"t3"
],
"imageWidth": 256,
"imageryProviders": null,
"vintageEnd": null,
"vintageStart": null,
"zoomMax": 21,
"zoomMin": 1
}
]
}
],
"statusCode": 200,
"statusDescription": "OK",
"traceId": "b62d8ac6bc55332be0aa5c42dea77a89|MWH0032BF0|0.0.0.1"
}
And then once you add a subdomain (t0,t1,t2,t3) and your quadley value (300) your tile request will look like this:
https://t0.ssl.ak.dynamic.tiles.virtualearth.net/comp/ch/300?mkt=ko&it=G,L&shading=hill&og=2390&n=z
And the tile will look like this:
All that said, it should also be noted that not all cultures are supported at all zoom levels in all parts of the world. So if you tried to get a Korean map of a streets in the USA, not all labels may be translated, if any.