首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在GeoJSON中访问文件夹中的图像?

如何在GeoJSON中访问文件夹中的图像?
EN

Stack Overflow用户
提问于 2021-07-05 23:48:14
回答 1查看 32关注 0票数 1

我正在编程一个3D地球使用ArcGis应用程序接口的Javascript和添加了一个GeoJSON层。GeoJSON文件包含多个坐标的信息和图像,这些信息和图像通过弹出窗口显示。

当我从我的本地服务器使用图像URL时,如下面的示例代码所示,图像按其应有的方式显示,并且一切正常。但是,我想使用本地路径来显示它们,例如".project/uploadfolder/imagename.jpg“。这是可能的吗?我如何实现它?我不知道该怎么做,因为GeoJSON文件似乎不支持这种格式,而且图像根本不显示。

代码语言:javascript
复制
{
"type": "FeatureCollection",
"features": [
    {
        "type": "Feature",
        "properties": {
            "name": "Mount Fuji",
            "category": "Volcanoes",
            "type": "......",
            "location": "......................",
            "imageUrl": "http://localhost/Projekt%C3%BCbung/upload/mount%20fuji-4733029_1280.jpg",
            "imageCaption": "Mount Fuji",
            "imageCopyright": "Image by ... under CC BY-SA2.5",
            "imageUrl_2": "http://localhost/Projekt%C3%BCbung/upload/fuji-960266_1920.jpg",
            "imageCaption_2": "Mount Fuji",
            "imageCopyright_2": "Image by .... under CC BY-SA2.5",
            "imageUrl_3": "http://localhost/Projekt%C3%BCbung/upload/mt-fuji-536284_1920.jpg",
            "imageCaption_3": "Mount Fuji",
            "imageCopyright_3": "Image by ... under CC BY-SA2.5",
            "relevantpublications": "Provide link to relevant publications",
            "source": "...."
        },
        "geometry": {
            "type": "Point",
            "coordinates": [
                138.73088836669922,
                35.36308599925639
            ]
        }
    },
EN

回答 1

Stack Overflow用户

发布于 2021-07-06 00:37:48

从GeoJSON的角度来看,这些图像URL只是字符串属性。通过在GeoJSONLayer上配置弹出窗口模板,您可以显示实际的图片。

此示例说明如何为各种媒体元素执行此操作:https://developers.arcgis.com/javascript/latest/sample-code/popup-multipleelements/

对于上面的GeoJSON,下面这样的代码应该可以工作:

代码语言:javascript
复制
var geoJSONLayer = new GeoJSONLayer({ /* ... */ });

var popupTemplate = {
  title: "Pictures of {NAME}",
  content: [
    type: "media", // MediaContentElement
    mediaInfos: [{
      title: "<b>{imageCaption}</b>",
      type: "image",
      caption: "{imageCaption}",
      value: {
        sourceURL: "{imageUrl_2}"
      }
    }]
  ]
};

geoJSONLayer.popupTemplate = popupTemplate;

您可以在弹出式模板联机文档中找到更多示例:https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68258869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档